summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@tavianator.com>2020-10-28 10:01:30 -0400
committerTavian Barnes <tavianator@tavianator.com>2020-12-10 15:37:15 -0500
commit986a206965da3f5bf6fd11d3285b5e19b6e066d1 (patch)
tree031c2521994218ebd2f9a2b52e7b37fdfba4f320 /Makefile
parent5920a1b5e19e529ab3a3972348a6d53bcd90acfc (diff)
downloadbfs-986a206965da3f5bf6fd11d3285b5e19b6e066d1.tar.xz
Makefile: Rebuild whenever the build flags change
This removes the need to do make clean before rebuilding with a new build type.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile6
1 files changed, 5 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 3dd263f..77fad91 100644
--- a/Makefile
+++ b/Makefile
@@ -105,6 +105,10 @@ ALL_CFLAGS = $(ALL_CPPFLAGS) $(LOCAL_CFLAGS) $(CFLAGS) $(DEPFLAGS)
ALL_LDFLAGS = $(ALL_CFLAGS) $(LOCAL_LDFLAGS) $(LDFLAGS)
ALL_LDLIBS = $(LOCAL_LDLIBS) $(LDLIBS)
+# Save the full set of flags to rebuild everything when they change
+ALL_FLAGS := $(CC) : $(ALL_CFLAGS) : $(ALL_LDFLAGS) : $(ALL_LDLIBS)
+$(shell ./flags.sh $(ALL_FLAGS))
+
default: bfs
all: bfs tests/mksock tests/trie tests/xtimegm
@@ -154,7 +158,7 @@ tests/trie: trie.o tests/trie.o
tests/xtimegm: time.o tests/xtimegm.o
$(CC) $(ALL_LDFLAGS) $^ -o $@
-%.o: %.c
+%.o: %.c .flags
$(CC) $(ALL_CFLAGS) -c $< -o $@
check: check-trie check-xtimegm check-bfs check-dfs check-ids check-eds