aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-04-13 21:23:42 -0400
committerJesse Luehrs <doy@tozt.net>2014-04-13 21:23:42 -0400
commit2d526a14383939180456f64c0de7c985b2332ff4 (patch)
tree59e3475cda2ebd43e7e19f2c01eb3f63887ce80d /Makefile
parentc9ebd2a26f54551cb4219f645d8657f38728489c (diff)
downloadrunes-2d526a14383939180456f64c0de7c985b2332ff4.tar.gz
runes-2d526a14383939180456f64c0de7c985b2332ff4.zip
have the makefile generate dependencies
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile16
1 files changed, 12 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 0be5373..8c5df71 100644
--- a/Makefile
+++ b/Makefile
@@ -4,18 +4,26 @@ LIBS = cairo cairo-xlib libuv
CFLAGS ?= -g -Wall -Wextra -Werror
LDFLAGS ?= -g -Wall -Wextra -Werror
+ALLCFLAGS = $(shell pkg-config --cflags $(LIBS)) $(CFLAGS)
+ALLLDFLAGS = $(shell pkg-config --libs $(LIBS)) $(LDFLAGS)
+
+MAKEDEPEND = $(CC) $(ALLCFLAGS) -M -MP -MT '$@ $(@:%.o=.%.d)'
+
build: $(OUT)
$(OUT): $(OBJ)
- $(CC) $(shell pkg-config --libs $(LIBS)) $(LDFLAGS) -o $@ $^
+ $(CC) $(ALLLDFLAGS) -o $@ $^
%.o: %.c
- $(CC) $(shell pkg-config --cflags $(LIBS)) $(CFLAGS) -c -o $@ $^
+ @$(MAKEDEPEND) -o $(<:%.c=.%.d) $<
+ $(CC) $(ALLCFLAGS) -c -o $@ $<
%.c: %.l
- $(LEX) -o $@ $^
+ $(LEX) -o $@ $<
clean:
- rm -f $(OUT) $(OBJ)
+ rm -f $(OUT) $(OBJ) $(OBJ:%.o=.%.d)
+
+-include $(OBJ:%.o=.%.d)
.PHONY: build clean