From 93e37a911f657e6e0b1f9b47a0761bb5fbf4ac35 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 24 Jul 2006 16:30:25 +0000 Subject: 2006-07-24 Thomas Schwinge * Makerules.in (%.h %_user.c): Add `%.cli.d' to the target list. Create these files by specifying `-MD' as a flag for mig and rename the resulting files as needed. Include these `*.cli.d' files instead of `*.migu.d' files. (%_interface.h %_server.c): Likewise for `%.srv.d' / `*.migs.d'. (%.migs.d, %.migu.d): Remove targets. * Makefile.in (clean): Adapt to the above. * i386/Makefile.in (clean): Likewise. --- Makerules.in | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) (limited to 'Makerules.in') diff --git a/Makerules.in b/Makerules.in index 271cf7c..7538834 100644 --- a/Makerules.in +++ b/Makerules.in @@ -94,14 +94,18 @@ ASFLAGS += -DASSEMBLER # Building from foo.cli .PRECIOUS: %_user.c -%.h %_user.c: %.cli - $(MIG) $(MIGFLAGS) -header $*.h -user $*_user.c -server /dev/null $< +%.h %_user.c %.cli.d: %.cli + $(MIG) $(MIGFLAGS) -MD \ + -header $*.h -user $*_user.c -server /dev/null $< + mv $*-mig.d $*.cli.d # Building from foo.srv .PRECIOUS: %_server.c -%_interface.h %_server.c: %.srv - $(MIG) $(MIGFLAGS) -sheader $*_interface.h -server $*_server.c \ - -header /dev/null -user /dev/null $< +%_interface.h %_server.c %.srv.d: %.srv + $(MIG) $(MIGFLAGS) -MD \ + -sheader $*_interface.h -server $*_server.c \ + -header /dev/null -user /dev/null $< + mv $*-mig.d $*.srv.d # gzip files %.gz: % @@ -123,23 +127,15 @@ endif # Include dependency files ifneq ($(no_deps),t) -# For each file generated by MiG we need a .d file. --include $(subst _server.o,.migs.d,$(servers)) /dev/null --include $(subst _user.o,.migu.d,$(users)) /dev/null +# The MIG stubs depend on their definition files. +-include $(subst _server.o,.srv.d,$(servers)) /dev/null +-include $(subst _user.o,.cli.d,$(users)) /dev/null # For each .o file we need a .d file. -include $(subst .o,.d,$(filter %.o,$(objfiles))) /dev/null endif -# Here is how to make those dependency files -%.migs.d: %.srv - (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \ - sed -e 's/[^:]*:/$*_server.c $*_interface.h $@:/' > $@) -%.migu.d: %.cli - (set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \ - sed -e 's/[^:]*:/$*_user.c $*.h $@:/' > $@) - # Generic rule for $(CC) based compilation for making dependencies define make-deps set -e; $(CC) $(CFLAGS) $(CPPFLAGS) -M -MG $< | \ -- cgit v1.2.3