aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile
diff options
context:
space:
mode:
authorGravatar Jan Janak <jan@ryngle.com>2009-11-19 01:37:25 +0100
committerGravatar Carl Worth <cworth@cworth.org>2009-11-20 13:44:09 +0100
commit5150b15b87a0d9c20a355114d81a3b90c4e42807 (patch)
treead08f93dc06fa669a5194a53612334c30526e96b /Makefile
parentdbb29a77fa63f42a237ce25ea18e4db493e3464c (diff)
Makefile: Make object targets depend on Makefiles
All objects need to be recompiled when any of the Makefiles changes, so we make them all depend on all the Makefiles. Signed-off-by: Jan Janak <jan@ryngle.com>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile11
1 files changed, 7 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 0411cbbe..b6861e9c 100644
--- a/Makefile
+++ b/Makefile
@@ -13,6 +13,9 @@ ifeq ($(emacs_lispdir),)
emacs_lispdir = $(prefix)/share/site-lisp
endif
+all_deps = Makefile Makefile.local Makefile.config \
+ lib/Makefile lib/Makefile.local
+
# Now smash together user's values with our extra values
override CFLAGS += $(WARN_FLAGS) $(extra_cflags)
override CXXFLAGS += $(WARN_FLAGS) $(extra_cflags) $(extra_cxxflags)
@@ -28,22 +31,22 @@ include lib/Makefile.local
# And get user settings from the output of configure
include Makefile.config
-%.o: %.cc
+%.o: %.cc $(all_deps)
$(CXX) -c $(CFLAGS) $(CXXFLAGS) $< -o $@
-%.o: %.c
+%.o: %.c $(all_deps)
$(CC) -c $(CFLAGS) $< -o $@
%.elc: %.el
emacs -batch -f batch-byte-compile $<
-.deps/%.d: %.c
+.deps/%.d: %.c $(all_deps)
@set -e; rm -f $@; mkdir -p $$(dirname $@) ; \
$(CC) -M $(CPPFLAGS) $(CFLAGS) $< > $@.$$$$; \
sed 's,'$$(basename $*)'\.o[ :]*,$*.o $@ : ,g' < $@.$$$$ > $@; \
rm -f $@.$$$$
-.deps/%.d: %.cc
+.deps/%.d: %.cc $(all_deps)
@set -e; rm -f $@; mkdir -p $$(dirname $@) ; \
$(CXX) -M $(CPPFLAGS) $(CXXFLAGS) $< > $@.$$$$; \
sed 's,'$$(basename $*)'\.o[ :]*,$*.o $@ : ,g' < $@.$$$$ > $@; \