aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-02-25 09:50:18 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-02-25 09:50:18 +0200
commitd5dcd2e6ec2a2344da44b8e5cbfe319957318dba (patch)
treeb4751382ab217d420eed18148d56d8f7e186bc82
parent9428441a84a98073c527df6901a9550bf1a94ce4 (diff)
Add support for manual dependency tracking in tests and examples
-rw-r--r--build/bootstrap.make38
-rw-r--r--examples/cxx/hybrid/allocator/makefile2
-rw-r--r--examples/cxx/hybrid/binary/cdr/makefile2
-rw-r--r--examples/cxx/hybrid/binary/custom/makefile2
-rw-r--r--examples/cxx/hybrid/binary/xdr/makefile2
-rw-r--r--examples/cxx/hybrid/compositors/makefile2
-rw-r--r--examples/cxx/hybrid/custom/wildcard/makefile2
-rw-r--r--examples/cxx/hybrid/evolution/ignore/makefile2
-rw-r--r--examples/cxx/hybrid/evolution/passthrough/makefile2
-rw-r--r--examples/cxx/hybrid/filter/makefile2
-rw-r--r--examples/cxx/hybrid/hello/makefile2
-rw-r--r--examples/cxx/hybrid/library/makefile2
-rw-r--r--examples/cxx/hybrid/minimal/makefile2
-rw-r--r--examples/cxx/hybrid/multiroot/makefile2
-rw-r--r--examples/cxx/hybrid/polymorphism/makefile2
-rw-r--r--examples/cxx/hybrid/polyroot/makefile2
-rw-r--r--examples/cxx/hybrid/streaming/makefile2
-rw-r--r--examples/cxx/hybrid/wildcard/makefile2
-rw-r--r--examples/cxx/parser/generated/makefile2
-rw-r--r--examples/cxx/parser/hello/makefile2
-rw-r--r--examples/cxx/parser/library/makefile2
-rw-r--r--examples/cxx/parser/minimal/makefile2
-rw-r--r--examples/cxx/parser/mixed/makefile2
-rw-r--r--examples/cxx/parser/multiroot/makefile2
-rw-r--r--examples/cxx/parser/polymorphism/makefile2
-rw-r--r--examples/cxx/parser/polyroot/makefile2
-rw-r--r--examples/cxx/parser/wildcard/makefile2
-rw-r--r--examples/cxx/serializer/hello/makefile2
-rw-r--r--examples/cxx/serializer/library/makefile2
-rw-r--r--examples/cxx/serializer/minimal/makefile2
-rw-r--r--examples/cxx/serializer/polymorphism/makefile2
-rw-r--r--examples/cxx/serializer/polyroot/makefile2
-rw-r--r--examples/cxx/serializer/wildcard/makefile2
-rw-r--r--tests/cxx/hashmap/makefile2
-rw-r--r--tests/cxx/hybrid/binary/cdr/makefile2
-rw-r--r--tests/cxx/hybrid/binary/custom/makefile2
-rw-r--r--tests/cxx/hybrid/binary/xdr/makefile2
-rw-r--r--tests/cxx/hybrid/built-in/makefile2
-rw-r--r--tests/cxx/hybrid/choice/makefile2
-rw-r--r--tests/cxx/hybrid/clone/makefile2
-rw-r--r--tests/cxx/hybrid/default/makefile2
-rw-r--r--tests/cxx/hybrid/enumeration/makefile2
-rw-r--r--tests/cxx/hybrid/facets/makefile2
-rw-r--r--tests/cxx/hybrid/iso8859-1/makefile2
-rw-r--r--tests/cxx/hybrid/iterator/makefile2
-rw-r--r--tests/cxx/hybrid/list/makefile2
-rw-r--r--tests/cxx/hybrid/pattern/makefile2
-rw-r--r--tests/cxx/hybrid/polymorphism/any-type/makefile2
-rw-r--r--tests/cxx/hybrid/polymorphism/enumeration/makefile2
-rw-r--r--tests/cxx/hybrid/polymorphism/multischema/makefile2
-rw-r--r--tests/cxx/hybrid/recursive/makefile2
-rw-r--r--tests/cxx/hybrid/sequences/makefile2
-rw-r--r--tests/cxx/hybrid/test-template/makefile2
-rw-r--r--tests/cxx/hybrid/union/makefile2
-rw-r--r--tests/cxx/parser/built-in/makefile2
-rw-r--r--tests/cxx/parser/duplicate/makefile2
-rw-r--r--tests/cxx/parser/enumeration/makefile2
-rw-r--r--tests/cxx/parser/error-handling/codes/makefile2
-rw-r--r--tests/cxx/parser/error-handling/exceptions/makefile2
-rw-r--r--tests/cxx/parser/generated-impl/makefile2
-rw-r--r--tests/cxx/parser/list/makefile2
-rw-r--r--tests/cxx/parser/name-clash/inheritance/makefile2
-rw-r--r--tests/cxx/parser/polymorphism/makefile2
-rw-r--r--tests/cxx/parser/polyrecur/makefile2
-rw-r--r--tests/cxx/parser/recursive/makefile2
-rw-r--r--tests/cxx/parser/reset/makefile2
-rw-r--r--tests/cxx/parser/test-template/makefile2
-rw-r--r--tests/cxx/parser/union/makefile2
-rw-r--r--tests/cxx/parser/validation/all/makefile2
-rw-r--r--tests/cxx/parser/validation/any/makefile2
-rw-r--r--tests/cxx/parser/validation/attribute/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/any-type/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/binary/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/boolean/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/byte/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/date-time/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/float/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/int/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/integer/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/long-long/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/long/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/qname/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/short/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/string/makefile2
-rw-r--r--tests/cxx/parser/validation/built-in/uri/makefile2
-rw-r--r--tests/cxx/parser/validation/choice/makefile2
-rw-r--r--tests/cxx/parser/validation/restriction/makefile2
-rw-r--r--tests/cxx/parser/validation/sequence/makefile2
-rw-r--r--tests/cxx/serializer/all/makefile2
-rw-r--r--tests/cxx/serializer/built-in/makefile2
-rw-r--r--tests/cxx/serializer/choice/makefile2
-rw-r--r--tests/cxx/serializer/complex/makefile2
-rw-r--r--tests/cxx/serializer/enumeration/makefile2
-rw-r--r--tests/cxx/serializer/error-handling/codes/makefile2
-rw-r--r--tests/cxx/serializer/error-handling/exceptions/makefile2
-rw-r--r--tests/cxx/serializer/generated-driver/makefile2
-rw-r--r--tests/cxx/serializer/generated-impl/makefile2
-rw-r--r--tests/cxx/serializer/list/makefile2
-rw-r--r--tests/cxx/serializer/polymorphism/makefile2
-rw-r--r--tests/cxx/serializer/recursive/makefile2
-rw-r--r--tests/cxx/serializer/reset/makefile2
-rw-r--r--tests/cxx/serializer/restriction/makefile2
-rw-r--r--tests/cxx/serializer/sequence/makefile2
-rw-r--r--tests/cxx/serializer/test-template/makefile2
-rw-r--r--tests/cxx/serializer/union/makefile2
-rw-r--r--tests/cxx/serializer/validation/any/makefile2
-rw-r--r--tests/cxx/serializer/validation/attribute/makefile2
-rw-r--r--tests/cxx/serializer/validation/built-in/date-time/makefile2
-rw-r--r--tests/cxx/serializer/validation/built-in/decimal/makefile2
-rw-r--r--tests/cxx/serializer/validation/built-in/integer/makefile2
-rw-r--r--tests/cxx/serializer/validation/built-in/qname/makefile2
-rw-r--r--tests/cxx/serializer/validation/built-in/string/makefile2
-rw-r--r--tests/cxx/serializer/validation/choice/makefile2
-rw-r--r--tests/cxx/serializer/validation/element/makefile2
-rw-r--r--tests/cxx/serializer/validation/sequence/makefile2
-rw-r--r--tests/cxx/serializer/wildcard/makefile2
-rw-r--r--tests/cxx/string/makefile2
117 files changed, 145 insertions, 125 deletions
diff --git a/build/bootstrap.make b/build/bootstrap.make
index 43723fd..046e3eb 100644
--- a/build/bootstrap.make
+++ b/build/bootstrap.make
@@ -16,10 +16,17 @@ ifeq ($(patsubst %build/bootstrap.make,,$(lastword $(MAKEFILE_LIST))),)
include $(build)/bootstrap.make
endif
-# Configuration
+def_goal := $(.DEFAULT_GOAL)
+
+# Configuration.
#
$(call include,$(scf_root)/configuration.make)
+# Include C++ configuration. We need to know if we are using the generic
+# C++ compiler in which case we need to compensate for missing dependency
+# auto-generation (see below).
+#
+$(call include,$(bld_root)/cxx/configuration.make)
# Aliases
#
@@ -41,10 +48,6 @@ dist: $(out_base)/.dist
dist-win: $(out_base)/.dist-win
clean: $(out_base)/.clean
-ifneq ($(filter $(.DEFAULT_GOAL),test install dist dist-win clean),)
-.DEFAULT_GOAL :=
-endif
-
endif
@@ -56,21 +59,36 @@ $(error dist_prefix is not set)
endif
endif
-
-# Don't include dependency info for certain targets.
+# If we don't have dependency auto-generation then we need to manually
+# make sure that generated files are generated before C++ file are
+# compiler. To do this we make the object files ($2) depend in order-
+# only on generated files ($3).
#
+ifeq ($(cxx_id),generic)
+
+define include-dep
+$(if $2,$(eval $2: | $3))
+endef
+
+else
+
define include-dep
$(call -include,$1)
endef
+endif
+
+# Don't include dependency info for certain targets.
+#
ifneq ($(filter $(MAKECMDGOALS),clean disfigure),)
include-dep =
endif
-# For dist, don't include dependecies in libxsde, examples, and tests.
+# For dist and install, don't include dependencies in libxsde, examples,
+# and tests since we might be cross-compiling.
#
-ifneq ($(filter $(MAKECMDGOALS),dist dist-win),)
+ifneq ($(filter $(MAKECMDGOALS),dist dist-win install),)
ifneq ($(subst $(src_root)/libxsde/,,$(src_base)),$(src_base))
include-dep =
@@ -85,3 +103,5 @@ include-dep =
endif
endif
+
+.DEFAULT_GOAL := $(def_goal)
diff --git a/examples/cxx/hybrid/allocator/makefile b/examples/cxx/hybrid/allocator/makefile
index 758cec8..acdd61e 100644
--- a/examples/cxx/hybrid/allocator/makefile
+++ b/examples/cxx/hybrid/allocator/makefile
@@ -45,7 +45,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/binary/cdr/makefile b/examples/cxx/hybrid/binary/cdr/makefile
index 49cfd5b..18f8639 100644
--- a/examples/cxx/hybrid/binary/cdr/makefile
+++ b/examples/cxx/hybrid/binary/cdr/makefile
@@ -45,7 +45,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --generate-insertion CDR --generate-extraction CDR
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/binary/custom/makefile b/examples/cxx/hybrid/binary/custom/makefile
index 0f523f0..d8ff209 100644
--- a/examples/cxx/hybrid/binary/custom/makefile
+++ b/examples/cxx/hybrid/binary/custom/makefile
@@ -59,7 +59,7 @@ $(xsde_options) xml-schema.xsd)
genf += xml-schema.hxx xml-schema-pskel.hxx xml-schema-sskel.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/binary/xdr/makefile b/examples/cxx/hybrid/binary/xdr/makefile
index 24fc1de..8bc169e 100644
--- a/examples/cxx/hybrid/binary/xdr/makefile
+++ b/examples/cxx/hybrid/binary/xdr/makefile
@@ -45,7 +45,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --generate-insertion XDR --generate-extraction XDR
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/compositors/makefile b/examples/cxx/hybrid/compositors/makefile
index 313c98f..543f041 100644
--- a/examples/cxx/hybrid/compositors/makefile
+++ b/examples/cxx/hybrid/compositors/makefile
@@ -32,7 +32,7 @@ $(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-inline
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/custom/wildcard/makefile b/examples/cxx/hybrid/custom/wildcard/makefile
index 9972e8f..0faa262 100644
--- a/examples/cxx/hybrid/custom/wildcard/makefile
+++ b/examples/cxx/hybrid/custom/wildcard/makefile
@@ -49,7 +49,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--custom-serializer envelope=envelope_base_simpl/envelope-simpl.hxx \
--hxx-epilogue '\#include "body.hxx"'
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/evolution/ignore/makefile b/examples/cxx/hybrid/evolution/ignore/makefile
index 75c75b4..6248c87 100644
--- a/examples/cxx/hybrid/evolution/ignore/makefile
+++ b/examples/cxx/hybrid/evolution/ignore/makefile
@@ -41,7 +41,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-aggregate \
--root-element transformations --generate-polymorphic
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/evolution/passthrough/makefile b/examples/cxx/hybrid/evolution/passthrough/makefile
index 0b27e83..8de33d9 100644
--- a/examples/cxx/hybrid/evolution/passthrough/makefile
+++ b/examples/cxx/hybrid/evolution/passthrough/makefile
@@ -49,7 +49,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--custom-parser unknown_type=unknown_type_base_pimpl/unknown-type-pimpl.hxx \
--custom-serializer unknown_type=unknown_type_base_simpl/unknown-type-simpl.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/filter/makefile b/examples/cxx/hybrid/filter/makefile
index 4d496b4..442df5b 100644
--- a/examples/cxx/hybrid/filter/makefile
+++ b/examples/cxx/hybrid/filter/makefile
@@ -47,7 +47,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--custom-parser people=people_base_pimpl/people-custom-pimpl.hxx \
--custom-serializer people=people_base_simpl/people-custom-simpl.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/hello/makefile b/examples/cxx/hybrid/hello/makefile
index 777ff3f..e05931a 100644
--- a/examples/cxx/hybrid/hello/makefile
+++ b/examples/cxx/hybrid/hello/makefile
@@ -41,7 +41,7 @@ $(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/library/makefile b/examples/cxx/hybrid/library/makefile
index a20f21e..cc18cb0 100644
--- a/examples/cxx/hybrid/library/makefile
+++ b/examples/cxx/hybrid/library/makefile
@@ -45,7 +45,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --omit-default-attributes
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/minimal/makefile b/examples/cxx/hybrid/minimal/makefile
index 0c2118a..cb0ee12 100644
--- a/examples/cxx/hybrid/minimal/makefile
+++ b/examples/cxx/hybrid/minimal/makefile
@@ -45,7 +45,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/multiroot/makefile b/examples/cxx/hybrid/multiroot/makefile
index 5ef7f07..a35dff5 100644
--- a/examples/cxx/hybrid/multiroot/makefile
+++ b/examples/cxx/hybrid/multiroot/makefile
@@ -41,7 +41,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen): xsde_options += --generate-parser --generate-aggregate \
--root-element-all
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/polymorphism/makefile b/examples/cxx/hybrid/polymorphism/makefile
index 4e5b67b..d8bf9e9 100644
--- a/examples/cxx/hybrid/polymorphism/makefile
+++ b/examples/cxx/hybrid/polymorphism/makefile
@@ -46,7 +46,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --generate-polymorphic --generate-typeinfo \
--root-element supermen
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/polyroot/makefile b/examples/cxx/hybrid/polyroot/makefile
index 80ffbcf..914b099 100644
--- a/examples/cxx/hybrid/polyroot/makefile
+++ b/examples/cxx/hybrid/polyroot/makefile
@@ -46,7 +46,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --generate-polymorphic --generate-typeinfo \
--root-element person
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/streaming/makefile b/examples/cxx/hybrid/streaming/makefile
index 6f872ee..6f1e9c4 100644
--- a/examples/cxx/hybrid/streaming/makefile
+++ b/examples/cxx/hybrid/streaming/makefile
@@ -46,7 +46,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --custom-parser object=/object-pimpl.hxx \
--custom-serializer object=/object-simpl.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/hybrid/wildcard/makefile b/examples/cxx/hybrid/wildcard/makefile
index 348b5ca..1d4e10f 100644
--- a/examples/cxx/hybrid/wildcard/makefile
+++ b/examples/cxx/hybrid/wildcard/makefile
@@ -47,7 +47,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--custom-parser envelope=envelope_base_pimpl/envelope-pimpl.hxx \
--custom-serializer envelope=envelope_base_simpl/envelope-simpl.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/generated/makefile b/examples/cxx/parser/generated/makefile
index 5d94168..12bcf39 100644
--- a/examples/cxx/parser/generated/makefile
+++ b/examples/cxx/parser/generated/makefile
@@ -36,7 +36,7 @@ $(gen): xsde_options += --generate-print-impl --generate-test-driver \
--force-overwrite
$(gen): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/hello/makefile b/examples/cxx/parser/hello/makefile
index 0696909..ccf7a81 100644
--- a/examples/cxx/parser/hello/makefile
+++ b/examples/cxx/parser/hello/makefile
@@ -33,7 +33,7 @@ skel := $(addprefix $(out_base)/,$(skelf))
$(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/library/makefile b/examples/cxx/parser/library/makefile
index 937a0d0..bc39cb8 100644
--- a/examples/cxx/parser/library/makefile
+++ b/examples/cxx/parser/library/makefile
@@ -41,7 +41,7 @@ $(skel): xsde_options += --generate-inline --type-map $(src_base)/library.map
$(skel): $(out_root)/xsde/xsde $(src_base)/library.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/minimal/makefile b/examples/cxx/parser/minimal/makefile
index 75d38e6..befe0a8 100644
--- a/examples/cxx/parser/minimal/makefile
+++ b/examples/cxx/parser/minimal/makefile
@@ -35,7 +35,7 @@ $(skel): xsde_options += --type-map $(src_base)/people.map
$(skel): $(out_root)/xsde/xsde $(src_base)/people.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/mixed/makefile b/examples/cxx/parser/mixed/makefile
index 95076e9..9dcfc94 100644
--- a/examples/cxx/parser/mixed/makefile
+++ b/examples/cxx/parser/mixed/makefile
@@ -35,7 +35,7 @@ $(skel): xsde_options += --type-map $(src_base)/text.map
$(skel): $(out_root)/xsde/xsde $(src_base)/text.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/multiroot/makefile b/examples/cxx/parser/multiroot/makefile
index 0625cea..f03de6e 100644
--- a/examples/cxx/parser/multiroot/makefile
+++ b/examples/cxx/parser/multiroot/makefile
@@ -40,7 +40,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): xsde_options += --type-map $(src_base)/protocol.map
$(skel): $(out_root)/xsde/xsde $(src_base)/protocol.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/polymorphism/makefile b/examples/cxx/parser/polymorphism/makefile
index a4ea2b3..e1a2da4 100644
--- a/examples/cxx/parser/polymorphism/makefile
+++ b/examples/cxx/parser/polymorphism/makefile
@@ -40,7 +40,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): xsde_options += --generate-polymorphic
$(skel): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/polyroot/makefile b/examples/cxx/parser/polyroot/makefile
index 251ba8c..3b10e28 100644
--- a/examples/cxx/parser/polyroot/makefile
+++ b/examples/cxx/parser/polyroot/makefile
@@ -40,7 +40,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): xsde_options += --generate-polymorphic
$(skel): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/parser/wildcard/makefile b/examples/cxx/parser/wildcard/makefile
index 1e2501c..6debecf 100644
--- a/examples/cxx/parser/wildcard/makefile
+++ b/examples/cxx/parser/wildcard/makefile
@@ -33,7 +33,7 @@ skel := $(addprefix $(out_base)/,$(skelf))
$(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/hello/makefile b/examples/cxx/serializer/hello/makefile
index f640217..cac7771 100644
--- a/examples/cxx/serializer/hello/makefile
+++ b/examples/cxx/serializer/hello/makefile
@@ -33,7 +33,7 @@ skel := $(addprefix $(out_base)/,$(skelf))
$(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/library/makefile b/examples/cxx/serializer/library/makefile
index da09800..37e2af2 100644
--- a/examples/cxx/serializer/library/makefile
+++ b/examples/cxx/serializer/library/makefile
@@ -41,7 +41,7 @@ $(skel): xsde_options += --generate-inline --type-map $(src_base)/library.map
$(skel): $(out_root)/xsde/xsde $(src_base)/library.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/minimal/makefile b/examples/cxx/serializer/minimal/makefile
index 7623cb8..c71f680 100644
--- a/examples/cxx/serializer/minimal/makefile
+++ b/examples/cxx/serializer/minimal/makefile
@@ -35,7 +35,7 @@ $(skel): xsde_options += --type-map $(src_base)/people.map
$(skel): $(out_root)/xsde/xsde $(src_base)/people.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/polymorphism/makefile b/examples/cxx/serializer/polymorphism/makefile
index 91199d3..a8fdaf4 100644
--- a/examples/cxx/serializer/polymorphism/makefile
+++ b/examples/cxx/serializer/polymorphism/makefile
@@ -42,7 +42,7 @@ $(skel): xsde_options += --generate-polymorphic \
$(skel): $(out_root)/xsde/xsde $(src_base)/supermen.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/polyroot/makefile b/examples/cxx/serializer/polyroot/makefile
index 5d9020d..c511a61 100644
--- a/examples/cxx/serializer/polyroot/makefile
+++ b/examples/cxx/serializer/polyroot/makefile
@@ -42,7 +42,7 @@ $(skel): xsde_options += --generate-polymorphic \
$(skel): $(out_root)/xsde/xsde $(src_base)/supermen.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/examples/cxx/serializer/wildcard/makefile b/examples/cxx/serializer/wildcard/makefile
index f66d1f4..35deda6 100644
--- a/examples/cxx/serializer/wildcard/makefile
+++ b/examples/cxx/serializer/wildcard/makefile
@@ -35,7 +35,7 @@ $(skel): xsde_options += --type-map $(src_base)/email.map
$(skel): $(out_root)/xsde/xsde $(src_base)/email.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hashmap/makefile b/tests/cxx/hashmap/makefile
index 5aee915..aef7607 100644
--- a/tests/cxx/hashmap/makefile
+++ b/tests/cxx/hashmap/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/binary/cdr/makefile b/tests/cxx/hybrid/binary/cdr/makefile
index 0b8f10f..c104d1c 100644
--- a/tests/cxx/hybrid/binary/cdr/makefile
+++ b/tests/cxx/hybrid/binary/cdr/makefile
@@ -47,7 +47,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate --generate-extraction CDR \
--generate-insertion CDR
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/binary/custom/makefile b/tests/cxx/hybrid/binary/custom/makefile
index 1d97162..e82f628 100644
--- a/tests/cxx/hybrid/binary/custom/makefile
+++ b/tests/cxx/hybrid/binary/custom/makefile
@@ -59,7 +59,7 @@ $(xsde_options) xml-schema.xsd)
genf += xml-schema.hxx xml-schema-pskel.hxx xml-schema-sskel.hxx
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/binary/xdr/makefile b/tests/cxx/hybrid/binary/xdr/makefile
index c2a2eb7..aa2fb69 100644
--- a/tests/cxx/hybrid/binary/xdr/makefile
+++ b/tests/cxx/hybrid/binary/xdr/makefile
@@ -48,7 +48,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate --generate-extraction XDR \
--generate-insertion XDR
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/built-in/makefile b/tests/cxx/hybrid/built-in/makefile
index 47af8ca..700931c 100644
--- a/tests/cxx/hybrid/built-in/makefile
+++ b/tests/cxx/hybrid/built-in/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/choice/makefile b/tests/cxx/hybrid/choice/makefile
index 13f6816..b455f79 100644
--- a/tests/cxx/hybrid/choice/makefile
+++ b/tests/cxx/hybrid/choice/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/clone/makefile b/tests/cxx/hybrid/clone/makefile
index be676ad..f51fee1 100644
--- a/tests/cxx/hybrid/clone/makefile
+++ b/tests/cxx/hybrid/clone/makefile
@@ -48,7 +48,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate --generate-clone \
--custom-data complex
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/default/makefile b/tests/cxx/hybrid/default/makefile
index aa614b0..8816b04 100644
--- a/tests/cxx/hybrid/default/makefile
+++ b/tests/cxx/hybrid/default/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/enumeration/makefile b/tests/cxx/hybrid/enumeration/makefile
index 1767642..7d7e604 100644
--- a/tests/cxx/hybrid/enumeration/makefile
+++ b/tests/cxx/hybrid/enumeration/makefile
@@ -48,7 +48,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate --custom-data simple-cd \
--custom-data fbvd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/facets/makefile b/tests/cxx/hybrid/facets/makefile
index ff11745..c893616 100644
--- a/tests/cxx/hybrid/facets/makefile
+++ b/tests/cxx/hybrid/facets/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/iso8859-1/makefile b/tests/cxx/hybrid/iso8859-1/makefile
index fa21ffd..1a86757 100644
--- a/tests/cxx/hybrid/iso8859-1/makefile
+++ b/tests/cxx/hybrid/iso8859-1/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/iterator/makefile b/tests/cxx/hybrid/iterator/makefile
index bd0a1bb..a25f450 100644
--- a/tests/cxx/hybrid/iterator/makefile
+++ b/tests/cxx/hybrid/iterator/makefile
@@ -34,7 +34,7 @@ $(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/list/makefile b/tests/cxx/hybrid/list/makefile
index a02d995..f7bd7d1 100644
--- a/tests/cxx/hybrid/list/makefile
+++ b/tests/cxx/hybrid/list/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/pattern/makefile b/tests/cxx/hybrid/pattern/makefile
index 0fb1567..89044be 100644
--- a/tests/cxx/hybrid/pattern/makefile
+++ b/tests/cxx/hybrid/pattern/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/polymorphism/any-type/makefile b/tests/cxx/hybrid/polymorphism/any-type/makefile
index 195c2e4..fb0b251 100644
--- a/tests/cxx/hybrid/polymorphism/any-type/makefile
+++ b/tests/cxx/hybrid/polymorphism/any-type/makefile
@@ -46,7 +46,7 @@ $(gen): xsde_options += --generate-parser --generate-serializer \
--generate-aggregate --generate-polymorphic --generate-typeinfo \
--root-element root --polymorphic-type anyType
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/polymorphism/enumeration/makefile b/tests/cxx/hybrid/polymorphism/enumeration/makefile
index 7bb004b..065156b 100644
--- a/tests/cxx/hybrid/polymorphism/enumeration/makefile
+++ b/tests/cxx/hybrid/polymorphism/enumeration/makefile
@@ -49,7 +49,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--custom-data fbvd --generate-polymorphic --generate-typeinfo \
--polymorphic-type base --polymorphic-type simple
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/polymorphism/multischema/makefile b/tests/cxx/hybrid/polymorphism/multischema/makefile
index 600155e..fcdfa79 100644
--- a/tests/cxx/hybrid/polymorphism/multischema/makefile
+++ b/tests/cxx/hybrid/polymorphism/multischema/makefile
@@ -50,7 +50,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-typeinfo --polymorphic-type base \
--polymorphic-schema $(src_base)/type.xsd
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/recursive/makefile b/tests/cxx/hybrid/recursive/makefile
index 325908b..1a96580 100644
--- a/tests/cxx/hybrid/recursive/makefile
+++ b/tests/cxx/hybrid/recursive/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/sequences/makefile b/tests/cxx/hybrid/sequences/makefile
index 53a59e4..07028be 100644
--- a/tests/cxx/hybrid/sequences/makefile
+++ b/tests/cxx/hybrid/sequences/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/test-template/makefile b/tests/cxx/hybrid/test-template/makefile
index 25c8653..72a6760 100644
--- a/tests/cxx/hybrid/test-template/makefile
+++ b/tests/cxx/hybrid/test-template/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/hybrid/union/makefile b/tests/cxx/hybrid/union/makefile
index ce3e7cb..ce2d6be 100644
--- a/tests/cxx/hybrid/union/makefile
+++ b/tests/cxx/hybrid/union/makefile
@@ -47,7 +47,7 @@ $(gen): xsde := $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
--generate-serializer --generate-aggregate --generate-detach
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/built-in/makefile b/tests/cxx/parser/built-in/makefile
index 00c2604..d99b6ee 100644
--- a/tests/cxx/parser/built-in/makefile
+++ b/tests/cxx/parser/built-in/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/duplicate/makefile b/tests/cxx/parser/duplicate/makefile
index 6229d3e..413d0cb 100644
--- a/tests/cxx/parser/duplicate/makefile
+++ b/tests/cxx/parser/duplicate/makefile
@@ -37,7 +37,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-print-impl \
--generate-test-driver --force-overwrite
$(gen): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/enumeration/makefile b/tests/cxx/parser/enumeration/makefile
index a197403..0a845d2 100644
--- a/tests/cxx/parser/enumeration/makefile
+++ b/tests/cxx/parser/enumeration/makefile
@@ -37,7 +37,7 @@ $(skel) $(dist) $(dist-win): xsde_options += --type-map $(src_base)/test.map
$(skel): $(out_root)/xsde/xsde $(src_base)/test.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
diff --git a/tests/cxx/parser/error-handling/codes/makefile b/tests/cxx/parser/error-handling/codes/makefile
index 3dd0084..1aed633 100644
--- a/tests/cxx/parser/error-handling/codes/makefile
+++ b/tests/cxx/parser/error-handling/codes/makefile
@@ -35,7 +35,7 @@ $(skel) $(dist) $(dist-win): xsde_options += --no-exceptions \
--type-map $(src_base)/test.map
$(skel): $(out_root)/xsde/xsde $(src_base)/test.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/error-handling/exceptions/makefile b/tests/cxx/parser/error-handling/exceptions/makefile
index e68d089..a0ed479 100644
--- a/tests/cxx/parser/error-handling/exceptions/makefile
+++ b/tests/cxx/parser/error-handling/exceptions/makefile
@@ -35,7 +35,7 @@ $(skel) $(dist) $(dist-win): xsde_options += --type-map $(src_base)/test.map
$(skel): $(out_root)/xsde/xsde $(src_base)/test.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/generated-impl/makefile b/tests/cxx/parser/generated-impl/makefile
index 422357b..006873f 100644
--- a/tests/cxx/parser/generated-impl/makefile
+++ b/tests/cxx/parser/generated-impl/makefile
@@ -37,7 +37,7 @@ $(gen) $(dist) $(dist-win): xsde_options += --generate-print-impl \
--generate-test-driver --force-overwrite
$(gen): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/list/makefile b/tests/cxx/parser/list/makefile
index 94072bc..6a8a3b3 100644
--- a/tests/cxx/parser/list/makefile
+++ b/tests/cxx/parser/list/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/name-clash/inheritance/makefile b/tests/cxx/parser/name-clash/inheritance/makefile
index 426e766..f6491cc 100644
--- a/tests/cxx/parser/name-clash/inheritance/makefile
+++ b/tests/cxx/parser/name-clash/inheritance/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/polymorphism/makefile b/tests/cxx/parser/polymorphism/makefile
index f497f38..47ab76c 100644
--- a/tests/cxx/parser/polymorphism/makefile
+++ b/tests/cxx/parser/polymorphism/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options += --generate-polymorphic
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/polyrecur/makefile b/tests/cxx/parser/polyrecur/makefile
index 8a553f8..90dcf26 100644
--- a/tests/cxx/parser/polyrecur/makefile
+++ b/tests/cxx/parser/polyrecur/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options += --generate-polymorphic
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/recursive/makefile b/tests/cxx/parser/recursive/makefile
index 42af4ff..63ae625 100644
--- a/tests/cxx/parser/recursive/makefile
+++ b/tests/cxx/parser/recursive/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/reset/makefile b/tests/cxx/parser/reset/makefile
index 52c9bd4..2861423 100644
--- a/tests/cxx/parser/reset/makefile
+++ b/tests/cxx/parser/reset/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/test-template/makefile b/tests/cxx/parser/test-template/makefile
index f0cd7c6..1ac0e07 100644
--- a/tests/cxx/parser/test-template/makefile
+++ b/tests/cxx/parser/test-template/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/union/makefile b/tests/cxx/parser/union/makefile
index 39aa8c2..0fc6040 100644
--- a/tests/cxx/parser/union/makefile
+++ b/tests/cxx/parser/union/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/all/makefile b/tests/cxx/parser/validation/all/makefile
index 7541388..1cb1868 100644
--- a/tests/cxx/parser/validation/all/makefile
+++ b/tests/cxx/parser/validation/all/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
diff --git a/tests/cxx/parser/validation/any/makefile b/tests/cxx/parser/validation/any/makefile
index 129a93f..b513f3a 100644
--- a/tests/cxx/parser/validation/any/makefile
+++ b/tests/cxx/parser/validation/any/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
diff --git a/tests/cxx/parser/validation/attribute/makefile b/tests/cxx/parser/validation/attribute/makefile
index 997d765..b104043 100644
--- a/tests/cxx/parser/validation/attribute/makefile
+++ b/tests/cxx/parser/validation/attribute/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/any-type/makefile b/tests/cxx/parser/validation/built-in/any-type/makefile
index 0cdab98..79b4466 100644
--- a/tests/cxx/parser/validation/built-in/any-type/makefile
+++ b/tests/cxx/parser/validation/built-in/any-type/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
diff --git a/tests/cxx/parser/validation/built-in/binary/makefile b/tests/cxx/parser/validation/built-in/binary/makefile
index abeac72..520a602 100644
--- a/tests/cxx/parser/validation/built-in/binary/makefile
+++ b/tests/cxx/parser/validation/built-in/binary/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/boolean/makefile b/tests/cxx/parser/validation/built-in/boolean/makefile
index d6afbca..c397400 100644
--- a/tests/cxx/parser/validation/built-in/boolean/makefile
+++ b/tests/cxx/parser/validation/built-in/boolean/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/byte/makefile b/tests/cxx/parser/validation/built-in/byte/makefile
index 0cd4f33..c54f313 100644
--- a/tests/cxx/parser/validation/built-in/byte/makefile
+++ b/tests/cxx/parser/validation/built-in/byte/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/date-time/makefile b/tests/cxx/parser/validation/built-in/date-time/makefile
index c63def9..04ee635 100644
--- a/tests/cxx/parser/validation/built-in/date-time/makefile
+++ b/tests/cxx/parser/validation/built-in/date-time/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/float/makefile b/tests/cxx/parser/validation/built-in/float/makefile
index d3c94d0..b6e72b2 100644
--- a/tests/cxx/parser/validation/built-in/float/makefile
+++ b/tests/cxx/parser/validation/built-in/float/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/int/makefile b/tests/cxx/parser/validation/built-in/int/makefile
index b042c1a..0b7aa4e 100644
--- a/tests/cxx/parser/validation/built-in/int/makefile
+++ b/tests/cxx/parser/validation/built-in/int/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/integer/makefile b/tests/cxx/parser/validation/built-in/integer/makefile
index 2205ca8..43f8624 100644
--- a/tests/cxx/parser/validation/built-in/integer/makefile
+++ b/tests/cxx/parser/validation/built-in/integer/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/long-long/makefile b/tests/cxx/parser/validation/built-in/long-long/makefile
index d4f32e1..79aee21 100644
--- a/tests/cxx/parser/validation/built-in/long-long/makefile
+++ b/tests/cxx/parser/validation/built-in/long-long/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/long/makefile b/tests/cxx/parser/validation/built-in/long/makefile
index 11daa0f..30f6388 100644
--- a/tests/cxx/parser/validation/built-in/long/makefile
+++ b/tests/cxx/parser/validation/built-in/long/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/qname/makefile b/tests/cxx/parser/validation/built-in/qname/makefile
index 5f63060..2d29017 100644
--- a/tests/cxx/parser/validation/built-in/qname/makefile
+++ b/tests/cxx/parser/validation/built-in/qname/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/short/makefile b/tests/cxx/parser/validation/built-in/short/makefile
index ce49001..f88ea3c 100644
--- a/tests/cxx/parser/validation/built-in/short/makefile
+++ b/tests/cxx/parser/validation/built-in/short/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/string/makefile b/tests/cxx/parser/validation/built-in/string/makefile
index c50fd68..c20512a 100644
--- a/tests/cxx/parser/validation/built-in/string/makefile
+++ b/tests/cxx/parser/validation/built-in/string/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/built-in/uri/makefile b/tests/cxx/parser/validation/built-in/uri/makefile
index 3c21589..a87efee 100644
--- a/tests/cxx/parser/validation/built-in/uri/makefile
+++ b/tests/cxx/parser/validation/built-in/uri/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/choice/makefile b/tests/cxx/parser/validation/choice/makefile
index ed51663..ddf45f4 100644
--- a/tests/cxx/parser/validation/choice/makefile
+++ b/tests/cxx/parser/validation/choice/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/restriction/makefile b/tests/cxx/parser/validation/restriction/makefile
index 5569a9d..f9adfbb 100644
--- a/tests/cxx/parser/validation/restriction/makefile
+++ b/tests/cxx/parser/validation/restriction/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/parser/validation/sequence/makefile b/tests/cxx/parser/validation/sequence/makefile
index db2c5b4..08682d2 100644
--- a/tests/cxx/parser/validation/sequence/makefile
+++ b/tests/cxx/parser/validation/sequence/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/all/makefile b/tests/cxx/serializer/all/makefile
index ae9ae73..ed66f85 100644
--- a/tests/cxx/serializer/all/makefile
+++ b/tests/cxx/serializer/all/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/built-in/makefile b/tests/cxx/serializer/built-in/makefile
index 03ed5c8..84a9757 100644
--- a/tests/cxx/serializer/built-in/makefile
+++ b/tests/cxx/serializer/built-in/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/choice/makefile b/tests/cxx/serializer/choice/makefile
index b9670ee..9a5ed8f 100644
--- a/tests/cxx/serializer/choice/makefile
+++ b/tests/cxx/serializer/choice/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/complex/makefile b/tests/cxx/serializer/complex/makefile
index dc9e867..862604b 100644
--- a/tests/cxx/serializer/complex/makefile
+++ b/tests/cxx/serializer/complex/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/enumeration/makefile b/tests/cxx/serializer/enumeration/makefile
index 9c89e69..16d5416 100644
--- a/tests/cxx/serializer/enumeration/makefile
+++ b/tests/cxx/serializer/enumeration/makefile
@@ -36,7 +36,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options += --type-map $(src_base)/test.map
$(skel): $(out_root)/xsde/xsde $(src_base)/test.map
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/error-handling/codes/makefile b/tests/cxx/serializer/error-handling/codes/makefile
index 2a84a11..e3438de 100644
--- a/tests/cxx/serializer/error-handling/codes/makefile
+++ b/tests/cxx/serializer/error-handling/codes/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/error-handling/exceptions/makefile b/tests/cxx/serializer/error-handling/exceptions/makefile
index 416e753..9b34da6 100644
--- a/tests/cxx/serializer/error-handling/exceptions/makefile
+++ b/tests/cxx/serializer/error-handling/exceptions/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/generated-driver/makefile b/tests/cxx/serializer/generated-driver/makefile
index 8f0e41c..261bb14 100644
--- a/tests/cxx/serializer/generated-driver/makefile
+++ b/tests/cxx/serializer/generated-driver/makefile
@@ -38,7 +38,7 @@ $(gen): $(out_root)/xsde/xsde
$(gen) $(dist) $(dist-win): xsde_options += --generate-test-driver \
--force-overwrite
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/generated-impl/makefile b/tests/cxx/serializer/generated-impl/makefile
index 4088140..80eb6fe 100644
--- a/tests/cxx/serializer/generated-impl/makefile
+++ b/tests/cxx/serializer/generated-impl/makefile
@@ -39,7 +39,7 @@ $(gen): xsde_options += --generate-empty-impl --generate-test-driver \
--force-overwrite
$(gen): $(out_root)/xsde/xsde
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/list/makefile b/tests/cxx/serializer/list/makefile
index ba4bae1..d1cc72a 100644
--- a/tests/cxx/serializer/list/makefile
+++ b/tests/cxx/serializer/list/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/polymorphism/makefile b/tests/cxx/serializer/polymorphism/makefile
index b0c3007..5e3c543 100644
--- a/tests/cxx/serializer/polymorphism/makefile
+++ b/tests/cxx/serializer/polymorphism/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options += --generate-polymorphic
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/recursive/makefile b/tests/cxx/serializer/recursive/makefile
index 6f074b5..d2a9af6 100644
--- a/tests/cxx/serializer/recursive/makefile
+++ b/tests/cxx/serializer/recursive/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/reset/makefile b/tests/cxx/serializer/reset/makefile
index 537c9be..27dcee8 100644
--- a/tests/cxx/serializer/reset/makefile
+++ b/tests/cxx/serializer/reset/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/restriction/makefile b/tests/cxx/serializer/restriction/makefile
index 99b3f10..cb97114 100644
--- a/tests/cxx/serializer/restriction/makefile
+++ b/tests/cxx/serializer/restriction/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/sequence/makefile b/tests/cxx/serializer/sequence/makefile
index 0cf1703..88bbdf3 100644
--- a/tests/cxx/serializer/sequence/makefile
+++ b/tests/cxx/serializer/sequence/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/test-template/makefile b/tests/cxx/serializer/test-template/makefile
index edaeb0f..8b4be80 100644
--- a/tests/cxx/serializer/test-template/makefile
+++ b/tests/cxx/serializer/test-template/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/union/makefile b/tests/cxx/serializer/union/makefile
index 3d557b6..6461ac4 100644
--- a/tests/cxx/serializer/union/makefile
+++ b/tests/cxx/serializer/union/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/any/makefile b/tests/cxx/serializer/validation/any/makefile
index c4ceaf4..321d2b8 100644
--- a/tests/cxx/serializer/validation/any/makefile
+++ b/tests/cxx/serializer/validation/any/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/attribute/makefile b/tests/cxx/serializer/validation/attribute/makefile
index fb9aacb..7e3b6b9 100644
--- a/tests/cxx/serializer/validation/attribute/makefile
+++ b/tests/cxx/serializer/validation/attribute/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/built-in/date-time/makefile b/tests/cxx/serializer/validation/built-in/date-time/makefile
index 7256896..e3f4c43 100644
--- a/tests/cxx/serializer/validation/built-in/date-time/makefile
+++ b/tests/cxx/serializer/validation/built-in/date-time/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/built-in/decimal/makefile b/tests/cxx/serializer/validation/built-in/decimal/makefile
index 3caff0e..39db0b5 100644
--- a/tests/cxx/serializer/validation/built-in/decimal/makefile
+++ b/tests/cxx/serializer/validation/built-in/decimal/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/built-in/integer/makefile b/tests/cxx/serializer/validation/built-in/integer/makefile
index f3b9339..631e9df 100644
--- a/tests/cxx/serializer/validation/built-in/integer/makefile
+++ b/tests/cxx/serializer/validation/built-in/integer/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/built-in/qname/makefile b/tests/cxx/serializer/validation/built-in/qname/makefile
index bee9faa..ba82576 100644
--- a/tests/cxx/serializer/validation/built-in/qname/makefile
+++ b/tests/cxx/serializer/validation/built-in/qname/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/built-in/string/makefile b/tests/cxx/serializer/validation/built-in/string/makefile
index ffa744b..b753d86 100644
--- a/tests/cxx/serializer/validation/built-in/string/makefile
+++ b/tests/cxx/serializer/validation/built-in/string/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/choice/makefile b/tests/cxx/serializer/validation/choice/makefile
index 0e39773..439e0ab 100644
--- a/tests/cxx/serializer/validation/choice/makefile
+++ b/tests/cxx/serializer/validation/choice/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/element/makefile b/tests/cxx/serializer/validation/element/makefile
index 98ef038..5fbfcad 100644
--- a/tests/cxx/serializer/validation/element/makefile
+++ b/tests/cxx/serializer/validation/element/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/validation/sequence/makefile b/tests/cxx/serializer/validation/sequence/makefile
index 6ab8279..ddec170 100644
--- a/tests/cxx/serializer/validation/sequence/makefile
+++ b/tests/cxx/serializer/validation/sequence/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/serializer/wildcard/makefile b/tests/cxx/serializer/wildcard/makefile
index c31c627..d7e9e94 100644
--- a/tests/cxx/serializer/wildcard/makefile
+++ b/tests/cxx/serializer/wildcard/makefile
@@ -34,7 +34,7 @@ $(skel): xsde := $(out_root)/xsde/xsde
$(skel): $(out_root)/xsde/xsde
$(skel) $(dist) $(dist-win): xsde_options +=
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#
diff --git a/tests/cxx/string/makefile b/tests/cxx/string/makefile
index 39f24a1..e3be5f1 100644
--- a/tests/cxx/string/makefile
+++ b/tests/cxx/string/makefile
@@ -26,7 +26,7 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): $(xsde.l.cpp-options)
-$(call include-dep,$(dep))
+$(call include-dep,$(dep),$(obj),$(gen))
# Convenience alias for default target.
#