diff --git a/Makefile b/Makefile index 97985db..e5b4b55 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ CC = gcc LD = $(CC) -CFLAGS = -Wall -Wextra -Wno-unused-parameter -ggdb +CFLAGS = -std=gnu17 -Wall -Wextra -Wno-unused-parameter -ggdb CPPFLAGS += -Iinclude LDFLAGS += ifndef DEBUG @@ -9,31 +9,29 @@ CPPFLAGS += -DNDEBUG else CPPFLAGS += -DDEBUG endif -BUILDDIR = build +BUILDDIR = build SOURCES = $(wildcard src/*.c) TEST_SOURCES = $(wildcard test/*.c) OBJECTS = $(addprefix $(BUILDDIR)/,$(SOURCES:.c=.o)) DEPS = $(addprefix $(BUILDDIR)/,$(SOURCES:.c=.d)) $(addprefix $(BUILDDIR)/,$(TEST_SOURCES:.c=.d)) -LIB = liblilalloc +LIB = liblilalloc.a TEST_BINS = $(patsubst test/%.c,$(BUILDDIR)/test/%,$(TEST_SOURCES)) .PHONY: all -all: $(BUILDDIR)/$(LIB).a +all: $(BUILDDIR)/$(LIB) -$(BUILDDIR)/%.o: %.c +$(BUILDDIR)/%.o: %.c Makefile mkdir -p $(@D) $(CC) $(CPPFLAGS) $(CFLAGS) -MMD -MP -c -o $@ $< -$(BUILDDIR)/$(LIB).a: $(OBJECTS) +$(BUILDDIR)/$(LIB): $(OBJECTS) ar crs $@ $^ - -$(BUILDDIR)/test/%: test/%.c $(BUILDDIR)/$(LIB).a +$(BUILDDIR)/test/%: test/%.c $(BUILDDIR)/$(LIB) mkdir -p $(@D) - $(CC) $(CPPFLAGS) $(CFLAGS) -MMD -MP -o $@ $< $(BUILDDIR)/$(LIB).a - + $(CC) $(CPPFLAGS) $(CFLAGS) -MMD -MP -o $@ $< $(BUILDDIR)/$(LIB) .PHONY: test test: $(TEST_BINS) @@ -44,8 +42,6 @@ test: $(TEST_BINS) echo ; \ done - - .PHONY: clean clean: rm -rf $(BUILDDIR)