summaryrefslogtreecommitdiff
path: root/Makerules.in
diff options
context:
space:
mode:
Diffstat (limited to 'Makerules.in')
-rw-r--r--Makerules.in25
1 files changed, 8 insertions, 17 deletions
diff --git a/Makerules.in b/Makerules.in
index 60181ae..271cf7c 100644
--- a/Makerules.in
+++ b/Makerules.in
@@ -93,10 +93,12 @@ ASFLAGS += -DASSEMBLER
sed -e 's/^[*]/#define/' -e 's/mAgIc[^-0-9]*//' >$@
# Building from foo.cli
+.PRECIOUS: %_user.c
%.h %_user.c: %.cli
$(MIG) $(MIGFLAGS) -header $*.h -user $*_user.c -server /dev/null $<
# 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 $<
@@ -122,11 +124,8 @@ endif
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 _server.o,.migsh_d,$(servers)) /dev/null
-
--include $(subst _user.o,.migu_d,$(users)) /dev/null
--include $(subst _user.o,.miguh_d,$(users)) /dev/null
+-include $(subst _server.o,.migs.d,$(servers)) /dev/null
+-include $(subst _user.o,.migu.d,$(users)) /dev/null
# For each .o file we need a .d file.
-include $(subst .o,.d,$(filter %.o,$(objfiles))) /dev/null
@@ -134,20 +133,12 @@ ifneq ($(no_deps),t)
endif
# Here is how to make those dependency files
-
-%.migs_d: %.srv
+%.migs.d: %.srv
(set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
- sed -e 's/[^:]*:/$(@:.migs_d=_server.c) $@:/' > $@)
-
-%.migu_d: %.cli
+ sed -e 's/[^:]*:/$*_server.c $*_interface.h $@:/' > $@)
+%.migu.d: %.cli
(set -e; $(CPP) $(MIGFLAGS) -M -MG -x c $< | \
- sed -e 's/[^:]*:/$(@:.migu_d=_user.c) $@:/' > $@)
-
-%.migsh_d: %.migs_d
- sed -e 's/_server\.c /_interface.h /' -e 's/migs_d/migsh_d/' < $< > $@
-
-%.miguh_d: %.migu_d
- sed -e 's/_user\.c /.h /' -e 's/migu_d/miguh_d/' < $< > $@
+ sed -e 's/[^:]*:/$*_user.c $*.h $@:/' > $@)
# Generic rule for $(CC) based compilation for making dependencies
define make-deps