summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjonesc <jonesc@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2011-11-29 18:50:07 +0000
committerjonesc <jonesc@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2011-11-29 18:50:07 +0000
commitce8a5685a419fae60eae414d6316261f5bdb3b07 (patch)
treed5ce8af2b8ee73e0697c9ddb860ddf86db852599
parent4e850b765fe0167e20abb5ee09f31829caac5d79 (diff)
downloadATCD-ce8a5685a419fae60eae414d6316261f5bdb3b07.tar.gz
Tue Nov 29 18:42:09 UTC 2011 Chip Jones <jonesc@ociweb.com>
* bin/MakeProjectCreator/templates/gnu.mpd: Changes to support incremental generation of IDL dependencies. This is necessary since IDL files in the same project may not have the same flags. * include/makeinclude/rules.local.GNU: Added incremental IDL dependency rule.
-rw-r--r--ChangeLog12
-rw-r--r--bin/MakeProjectCreator/templates/gnu.mpd32
-rw-r--r--include/makeinclude/rules.local.GNU14
3 files changed, 43 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 2012f3125e5..7de3cc4359e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+Tue Nov 29 18:42:09 UTC 2011 Chip Jones <jonesc@ociweb.com>
+
+ * bin/MakeProjectCreator/templates/gnu.mpd:
+
+ Changes to support incremental generation of IDL
+ dependencies. This is necessary since IDL files
+ in the same project may not have the same flags.
+
+ * include/makeinclude/rules.local.GNU:
+
+ Added incremental IDL dependency rule.
+
Wed Nov 9 17:06:46 UTC 2011 Chip Jones <jonesc@ociweb.com>
* include/makeinclude/rules.local.GNU:
diff --git a/bin/MakeProjectCreator/templates/gnu.mpd b/bin/MakeProjectCreator/templates/gnu.mpd
index b5a864b09ef..4fbf6e38f17 100644
--- a/bin/MakeProjectCreator/templates/gnu.mpd
+++ b/bin/MakeProjectCreator/templates/gnu.mpd
@@ -69,9 +69,10 @@ FILES = \
<%endif%>
<%if(idl_files)%>
-IDL_DEPS = \
<%foreach(idl_files)%>
- <%idl_file%><%fornotlast(" \\")%>
+IDL_DEPS_FLAGS<%forcount%> = <%if(flag_overrides(idl_file, commandflags))%><%flag_overrides(idl_file, commandflags)%><%else%><%idlflags%><%endif%>
+IDL_DEPS<%forcount%> = <%idl_file%>
+
<%endfor%>
<%endif%>
@@ -690,6 +691,33 @@ $(VBIN): $(addprefix $(VDIR), $(OBJS)) $(DEPLIBS)
endif
<%endif%>
+incremental_depend_idl:
+<%if(idl_files)%>
+ @$(RM) $(DEPENDENCY_FILE)_idl.old
+ @cp $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old
+ $(DEPGEN_ENV) $(DEPGEN) -A $(DEPEND_CMD_ARGS) -f $(DEPENDENCY_FILE) \
+ -t gnuidl -DMAKEDEPEND
+ @if cmp -s $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old ;\
+ then echo "GNUmakefile idl dependencies unchanged." ;\
+ else \
+ echo "GNUmakefile idl dependencies updated." ;\
+ fi ;\
+ $(RM) $(DEPENDENCY_FILE)_idl.old ;
+<%foreach(idl_files)%>
+ @$(RM) $(DEPENDENCY_FILE)_idl.old
+ @cp $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old
+ $(DEPGEN_ENV) $(DEPGEN) -A $(DEPEND_CMD_ARGS) -f $(DEPENDENCY_FILE) \
+ $(IDL_DEPS_FLAGS<%forcount%>) -a -t gnuidl -DMAKEDEPEND $(IDL_DEPS<%forcount%>)
+ @if cmp -s $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old ;\
+ then echo "GNUmakefile idl dependencies unchanged for $(IDL_DEPS<%forcount%>)." ;\
+ else \
+ echo "GNUmakefile idl dependencies updated for $(IDL_DEPS<%forcount%>)." ;\
+ fi ;\
+ $(RM) $(DEPENDENCY_FILE)_idl.old ;
+<%endfor%>
+
+<%endif%>
+
realclean: clean
ifneq ($(GENERATED_DIRTY),)
-$(RM) -r $(GENERATED_DIRTY)
diff --git a/include/makeinclude/rules.local.GNU b/include/makeinclude/rules.local.GNU
index ae605b1455c..e408b323d6b 100644
--- a/include/makeinclude/rules.local.GNU
+++ b/include/makeinclude/rules.local.GNU
@@ -467,19 +467,7 @@ ifeq ($(findstring depgen.pl, $(notdir $(DEPGEN))), depgen.pl)
endif
endif
-depend_idl.local: $(MAKEFILE) idl_stubs.local
-ifdef IDL_DEPS
- @$(RM) $(DEPENDENCY_FILE)_idl.old
- @cp $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old
- $(DEPGEN_ENV) $(DEPGEN) -A $(DEPEND_CMD_ARGS) -f $(DEPENDENCY_FILE) \
- $(TAO_IDLFLAGS) -a -t gnuidl -DMAKEDEPEND $(IDL_DEPS)
- @if cmp -s $(DEPENDENCY_FILE) $(DEPENDENCY_FILE)_idl.old ;\
- then echo "GNUmakefile idl dependencies unchanged." ;\
- else \
- echo "GNUmakefile idl dependencies updated." ;\
- fi ;\
- $(RM) $(DEPENDENCY_FILE)_idl.old ;
-endif
+depend_idl.local: $(MAKEFILE) idl_stubs.local incremental_depend_idl
depend.local: $(MAKEFILE) idl_stubs.local
@$(RM) $(DEPENDENCY_FILE).old