refactor: clean up Makefiles

This commit is contained in:
Jef Roosens 2023-07-28 21:08:48 +02:00
parent fb4a9a3b2e
commit 0229db027d
Signed by: Jef Roosens
GPG key ID: B75D4F293C7052DB
6 changed files with 51 additions and 49 deletions

View file

@ -1,12 +1,7 @@
# https://spin.atomicobject.com/2016/08/26/makefile-c-projects/ was a great
# base for this Makefile
LIB_FILENAME ?= libtrie.a
BUILD_DIR ?= build
SRC_DIR ?= src
TEST_DIR ?= test
INC_DIRS ?= include
-include config.mk
LIB := $(BUILD_DIR)/$(LIB_FILENAME)
@ -23,15 +18,7 @@ BINS_TEST := $(OBJS_TEST:%.c.o=%)
TARGETS_TEST := $(BINS_TEST:%=test-%)
TARGETS_MEM_TEST := $(BINS_TEST:%=test-mem-%)
INC_FLAGS := $(addprefix -I,$(INC_DIRS))
# -MMD: generate a .d file for every source file. This file can be imported by
# make and makes make aware that a header file has been changed, ensuring an
# object file is also recompiled if only a header is changed.
# -MP: generate a dummy target for every header file (according to the docs it
# prevents some errors when removing header files)
CFLAGS ?= -MMD -MP -g
_CFLAGS := $(INC_FLAGS) $(CFLAGS) -Wall -Wextra
_CFLAGS := $(addprefix -I,$(INC_DIRS)) $(CFLAGS) -Wall -Wextra
.PHONY: all
all: lib