chiark / gitweb /
build system: Use subdirmk cdeps.sd.mk
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 14 Nov 2019 01:35:37 +0000 (01:35 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 14 Nov 2019 01:42:07 +0000 (01:42 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
.gitignore
Subdir.sd.mk
common.make.in
stest/Subdir.sd.mk

index 5a1032c1d72c110ba6635cf9f6a097a3d4a0dfc9..6efffd172e2fc3dd5b0e854ca3f569288b536ec3 100644 (file)
@@ -1,5 +1,5 @@
 *.o
-*.d
+.*.d
 *.pyc
 conffile.tab.[ch]
 conffile.yy.[ch]
index 97b54830d1ae4115ecadd248f243a25db8a877a0..029be4a6f917b5d0640cbd1d05d715cfa64df470 100644 (file)
@@ -65,6 +65,9 @@ OBJECTS:=version.o
 TEST_OBJECTS:=
 endif
 
+&OBJECTS += $(OBJECTS) $(TEST_OBJECTS)
+&:include subdirmk/cdeps.sd.mk
+
 STALE_PYTHON_FILES=    $(foreach e, py pyc, \
                        $(foreach p, /usr /usr/local, \
                        $(foreach l, ipaddr, \
@@ -80,7 +83,7 @@ STALE_PYTHON_FILES=   $(foreach e, py pyc, \
        bison -d -o $@ $<
 
 %.o: %.c conffile.yy.h
-       $(CC) $(CPPFLAGS) $(ALL_CFLAGS) -c $< -o $@
+       $(CC) $(CPPFLAGS) $(ALL_CFLAGS) $(CDEPS_CFLAGS) -c $< -o $@
 
 all::  $(TARGETS)
 
@@ -91,12 +94,6 @@ ${srcdir}/config.h.in: configure.ac
 MAKEFILE_TEMPLATES += config.h.in
 CONFIG_STATUS_OUTPUTS += config.h
 
-# C and header file dependency rules
-SOURCES:=$(OBJECTS:.o=.c) $(TEST_OBJECTS:.o=.c)
-DEPENDS:=$(OBJECTS:.o=.d) $(TEST_OBJECTS:.o=.d)
-
--include *.d
-
 # Manual dependencies section
 conffile.yy.c: conffile.fl conffile.tab.c
 conffile.yy.h: conffile.yy.c
@@ -193,12 +190,13 @@ install-force:
 
 clean::
        $(RM) -f *.o *.yy.[ch] *.tab.[ch] $(TARGETS) core version.c
-       $(RM) -f *.d *.pyc *~ eax-*-test.confirm eax-*-test
+       $(RM) -f *.pyc *~ eax-*-test.confirm eax-*-test
+       $(RM) $(&CLEAN)
        $(RM) -rf __pycache__
        $(RM) -f msgcode-test.confirm msgcode-test
 
 realclean::    clean
-       $(RM) -f *~ Makefile config.h  *.d \
+       $(RM) -f *~ Makefile config.h \
        config.log config.status config.cache \
        config.stamp Makefile.bak
 
index d1f2fe008271ad261540c60059295f0c58b5a25d..b772704dcc91a3640dbcfe64734661293047bb14 100644 (file)
@@ -31,5 +31,4 @@ CFLAGS:=-Wall @WRITESTRINGS@ @CFLAGS@ -Werror \
        -Wmissing-declarations -Wnested-externs -Wredundant-decls \
        -Wpointer-arith -Wformat=2 -Winit-self \
        -Wswitch-enum -Wunused-variable -Wunused-function -Wbad-function-cast \
-       -Wno-strict-aliasing -fno-strict-aliasing \
-       -MMD
+       -Wno-strict-aliasing -fno-strict-aliasing
index f35db3b5f52689bbd5de20079adbdab88d5af347..222e82c86736fade302c6e03219f8b65f3351664 100644 (file)
@@ -34,3 +34,5 @@ MAKE_NOTSPECIAL:=$(MAKE)
 &check:: $(&DEPS)
        env -u MAKEFLAGS -u MFLAGS \
        $(MAKE_NOTSPECIAL) -j$(shell nproc || 1)0 &check-real
+
+&:include subdirmk/cdeps.sd.mk