CFloor/Makefile

41 lines
864 B
Makefile
Raw Normal View History

2019-03-02 20:29:56 +00:00
CC = gcc
2019-03-11 13:44:43 +00:00
CFLAGS = -std=c99 -Wall -D_POSIX_C_SOURCE=201112L -D_XOPEN_SOURCE=500 -D_GNU_SOURCE -static -g
2019-03-02 20:29:56 +00:00
LD = gcc
2019-03-03 00:20:47 +00:00
LDFLAGS = -lpthread -lrt
2019-03-02 20:29:56 +00:00
BIN_NAME = cfloor
2019-03-11 13:44:43 +00:00
OBJS = obj/networking.o obj/linked.o obj/logging.o obj/signals.o obj/headers.o obj/misc.o obj/status.o obj/files.o obj/mime.o obj/cgi.o obj/util.o obj/ssl.o
DEPS = $(OBJS:%.o=%.d)
2019-03-02 20:29:56 +00:00
all: $(BIN_NAME)
ssl: CFLAGS += -DSSL_SUPPORT -Icrypto
2019-03-11 13:44:43 +00:00
ssl: LDFLAGS += -lcrypto -lssl
ssl: obj/ssl.o $(BIN_NAME)
$(BIN_NAME): obj/main.o $(OBJS)
2019-03-03 22:08:51 +00:00
$(LD) $(LDFLAGS) -o $@ $^
test: obj/test.o $(OBJS)
2019-03-03 00:20:47 +00:00
$(LD) $(LDFLAGS) -o $@ $^
2019-03-03 22:08:51 +00:00
2019-03-03 11:11:44 +00:00
valgrind: CFLAGS += -static -g
valgrind: clean test
2019-03-03 10:35:58 +00:00
valgrind --leak-check=yes ./test
2019-03-02 20:29:56 +00:00
-include $(DEPS)
2019-03-02 20:29:56 +00:00
obj/%.o: src/%.c
$(CC) $(CFLAGS) -MMD -c -o $@ $<
2019-03-02 20:29:56 +00:00
obj:
@mkdir -p obj
clean:
@echo "Cleaning up..."
@rm -f obj/*.o
@rm -f obj/*.d
2019-03-02 20:29:56 +00:00
@rm -f test
@rm -f $(BIN_NAME)