libquid/Makefile
2020-04-17 23:25:56 +02:00

40 lines
826 B
Makefile

CC = gcc
CFLAGS = -std=c99 -Wall -D_POSIX_C_SOURCE=201112L -D_XOPEN_SOURCE=500 -D_GNU_SOURCE -static
LD = gcc
LDFLAGS = -static
LIBFLAGS = -Llibs -Ilibs
OBJS = obj/arrays.o obj/linked.o obj/streams.o obj/strings.o
DEPS = $(OBJS:%.o=%.d)
all: $(BIN_NAME) test
demo: obj/demo.o $(OBJS)
$(LD) $(LDFLAGS) -o $@ $^
test: $(OBJS) obj/do-test.o obj/linked-test.o obj/streams-test.o obj/strings-test.o
$(LD) $(LDFLAGS) -o $@ $^ $(LIBFLAGS) -lviscocity
obj/%-test.o: src/%-test.c obj
$(CC) $(CFLAGS) $(LIBFLAGS) -MMD -c -o $@ $<
valgrind: CFLAGS += -static -g
valgrind: clean test
valgrind --leak-check=yes ./test
-include $(DEPS)
obj/%.o: src/%.c obj
$(CC) $(CFLAGS) -MMD -c -o $@ $<
obj:
@mkdir -p obj
clean:
@echo "Cleaning up..."
@rm -f obj/*.o
@rm -f obj/*.d
@rm -f test
@rm -f demo