From 1c150959db3e5e576600b080b5880ccd66598b78 Mon Sep 17 00:00:00 2001 From: TimePath Date: Tue, 29 Dec 2015 20:26:41 +1100 Subject: [PATCH] Makefile: depend on transitive #includes --- .gitignore | 7 +------ qcsrc/.gitignore | 2 ++ qcsrc/Makefile | 22 +++++++++++++--------- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 6b5cef68e..6ecb3d2eb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,6 @@ csprogs.dat menu.dat progs.dat -qcsrc/client/fteqcc.log -qcsrc/menu/fteqcc.log -qcsrc/server/fteqcc.log -weapons.qc.tmp *.lno -qcsrc/qccversion* -qcsrc/server/precache-for-csqc.inc .DS_Store +.idea/ diff --git a/qcsrc/.gitignore b/qcsrc/.gitignore index 5ccff1a6b..79fce6a59 100644 --- a/qcsrc/.gitignore +++ b/qcsrc/.gitignore @@ -1 +1,3 @@ html/ +qccversion* +*.d diff --git a/qcsrc/Makefile b/qcsrc/Makefile index 6e0f04365..0294374a0 100644 --- a/qcsrc/Makefile +++ b/qcsrc/Makefile @@ -39,25 +39,29 @@ qc: ../menu.dat ../progs.dat ../csprogs.dat .PHONY: clean clean: rm -f ../progs.dat ../menu.dat ../csprogs.dat + rm -f progs.d menu.d csprogs.d $(QCCVERSIONFILE): $(RM) qccversion.* echo This file intentionally left blank. > $@ -FILES_CSPROGS = $(shell find lib common client -type f) -../csprogs.dat: $(FILES_CSPROGS) $(QCCVERSIONFILE) +../csprogs.dat: client/progs.inc $(QCCVERSIONFILE) + @$(CC) -MM -MP -MF csprogs.d -MT $@ -x c -DCSQC -o $@ $< @echo make[1]: Entering directory \`$(PWD)/client\' - cd client && $(QCC) $(QCCFLAGS) -DCSQC -o ../../csprogs.dat progs.inc + cd client && $(QCC) $(QCCFLAGS) -DCSQC -o ../$@ ../$< +-include csprogs.d -FILES_PROGS = $(shell find lib common server -type f) -../progs.dat: $(FILES_PROGS) $(QCCVERSIONFILE) +../progs.dat: server/progs.inc $(QCCVERSIONFILE) + @$(CC) -MM -MP -MF progs.d -MT $@ -x c -DSVQC -o $@ $< @echo make[1]: Entering directory \`$(PWD)/server\' - cd server && $(QCC) $(QCCFLAGS) -DSVQC -o ../../progs.dat progs.inc + cd server && $(QCC) $(QCCFLAGS) -DSVQC -o ../$@ ../$< +-include progs.d -FILES_MENU = $(shell find lib common menu -type f) -../menu.dat: $(FILES_MENU) $(QCCVERSIONFILE) +../menu.dat: menu/progs.inc $(QCCVERSIONFILE) + @$(CC) -MM -MP -MF menu.d -MT $@ -x c -DMENUQC -o $@ $< @echo make[1]: Entering directory \`$(PWD)/menu\' - cd menu && $(QCC) $(QCCFLAGS) -DMENUQC -o ../../menu.dat progs.inc + cd menu && $(QCC) $(QCCFLAGS) -DMENUQC -o ../$@ ../$< +-include menu.d .PHONY: testcase testcase: -- 2.39.2