aboutsummaryrefslogtreecommitdiff
path: root/tests/cxx/hybrid
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2009-10-20 10:50:22 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2009-10-20 10:50:22 +0200
commitb135374d5e40df21871b3e0c9efc69ba2d8361cb (patch)
tree0f53bf8253ff16b7ce176f47b56e4ac879a768c6 /tests/cxx/hybrid
parent54ed525e5b8680e8737b7750fd73458d9ef1d30c (diff)
Add tests to the distribution
The distribution makefiles for tests are automatically generated by the build/dist script. nmakefiles are not yet generated.
Diffstat (limited to 'tests/cxx/hybrid')
-rw-r--r--tests/cxx/hybrid/binary/cdr/makefile27
-rw-r--r--tests/cxx/hybrid/binary/xdr/makefile26
-rw-r--r--tests/cxx/hybrid/built-in/makefile24
-rw-r--r--tests/cxx/hybrid/choice/makefile25
-rw-r--r--tests/cxx/hybrid/default/makefile25
-rw-r--r--tests/cxx/hybrid/iterator/makefile23
-rw-r--r--tests/cxx/hybrid/list/makefile25
-rw-r--r--tests/cxx/hybrid/makefile36
-rw-r--r--tests/cxx/hybrid/polymorphism/makefile21
-rw-r--r--tests/cxx/hybrid/polymorphism/multischema/makefile30
-rw-r--r--tests/cxx/hybrid/recursive/makefile25
-rw-r--r--tests/cxx/hybrid/sequences/makefile20
-rw-r--r--tests/cxx/hybrid/test-template/makefile25
-rw-r--r--tests/cxx/hybrid/union/makefile25
14 files changed, 281 insertions, 76 deletions
diff --git a/tests/cxx/hybrid/binary/cdr/makefile b/tests/cxx/hybrid/binary/cdr/makefile
index f5fa36f..684a63c 100644
--- a/tests/cxx/hybrid/binary/cdr/makefile
+++ b/tests/cxx/hybrid/binary/cdr/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
#
@@ -41,8 +43,9 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate --generate-extraction CDR --generate-insertion CDR
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate --generate-extraction CDR \
+--generate-insertion CDR
$(call include-dep,$(dep))
@@ -57,6 +60,20 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix) \
+-lib ACE
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/binary/xdr/makefile b/tests/cxx/hybrid/binary/xdr/makefile
index 348f3b9..28a1735 100644
--- a/tests/cxx/hybrid/binary/xdr/makefile
+++ b/tests/cxx/hybrid/binary/xdr/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,9 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate --generate-extraction XDR --generate-insertion XDR
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate --generate-extraction XDR \
+--generate-insertion XDR
$(call include-dep,$(dep))
@@ -58,6 +61,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/built-in/makefile b/tests/cxx/hybrid/built-in/makefile
index d9531d5..c55e08a 100644
--- a/tests/cxx/hybrid/built-in/makefile
+++ b/tests/cxx/hybrid/built-in/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,18 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/choice/makefile b/tests/cxx/hybrid/choice/makefile
index 91c893a..47db413 100644
--- a/tests/cxx/hybrid/choice/makefile
+++ b/tests/cxx/hybrid/choice/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/default/makefile b/tests/cxx/hybrid/default/makefile
index 5dd5d04..b51a877 100644
--- a/tests/cxx/hybrid/default/makefile
+++ b/tests/cxx/hybrid/default/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/iterator/makefile b/tests/cxx/hybrid/iterator/makefile
index 74e62c3..ce418b5 100644
--- a/tests/cxx/hybrid/iterator/makefile
+++ b/tests/cxx/hybrid/iterator/makefile
@@ -14,9 +14,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -30,7 +32,7 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options +=
+$(gen) $(dist) $(dist-win): xsde_options +=
$(call include-dep,$(dep))
@@ -45,6 +47,19 @@ $(test): driver := $(driver)
$(test): $(driver)
$(call message,test $$1,$$1,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/list/makefile b/tests/cxx/hybrid/list/makefile
index a4f4de0..952caf7 100644
--- a/tests/cxx/hybrid/list/makefile
+++ b/tests/cxx/hybrid/list/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/makefile b/tests/cxx/hybrid/makefile
index a30ac41..426ad36 100644
--- a/tests/cxx/hybrid/makefile
+++ b/tests/cxx/hybrid/makefile
@@ -5,41 +5,55 @@
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
-tests := sequences
+# NOTE: remember to update dist/tests/cxx/hybrid/{makefile,nmakefile} if
+# you change anything here.
+#
+
+all_tests := sequences polymorphism iterator built-in default list \
+recursive test-template union binary/cdr binary/xdr choice
+
+build_tests := sequences
ifeq ($(xsde_polymorphic),y)
-tests += polymorphism
+build_tests += polymorphism
endif
ifeq ($(xsde_stl),y)
ifeq ($(xsde_stl_iterator),y)
-tests += iterator
+build_tests += iterator
endif
endif
ifeq ($(xsde_iostream),y)
-tests += built-in default list recursive test-template union
+build_tests += built-in default list recursive test-template union
ifeq ($(xsde_cdr),y)
-tests += binary/cdr
+build_tests += binary/cdr
endif
ifeq ($(xsde_xdr),y)
-tests += binary/xdr
+build_tests += binary/xdr
endif
ifeq ($(xsde_parser_validation),y)
-tests += choice
+build_tests += choice
endif
endif # xsde_iostream
default := $(out_base)/
test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
clean := $(out_base)/.clean
-$(default): $(addprefix $(out_base)/,$(addsuffix /,$(tests)))
-$(test): $(addprefix $(out_base)/,$(addsuffix /.test,$(tests)))
-$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(tests)))
+$(default): $(addprefix $(out_base)/,$(addsuffix /,$(build_tests)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_tests)))
+$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_tests)))
+$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_tests)))
-$(foreach t,$(tests),$(call import,$(src_base)/$t/makefile))
+ifneq ($(filter $(MAKECMDGOALS),dist dist-win),)
+$(foreach t,$(all_tests),$(call import,$(src_base)/$t/makefile))
+else
+$(foreach t,$(build_tests),$(call import,$(src_base)/$t/makefile))
+endif
diff --git a/tests/cxx/hybrid/polymorphism/makefile b/tests/cxx/hybrid/polymorphism/makefile
index 94bcc89..a1daa54 100644
--- a/tests/cxx/hybrid/polymorphism/makefile
+++ b/tests/cxx/hybrid/polymorphism/makefile
@@ -5,18 +5,27 @@
include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make
-tests :=
+all_tests := multischema
+
+build_tests :=
ifeq ($(xsde_iostream),y)
-tests += multischema
+build_tests += multischema
endif
default := $(out_base)/
test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
clean := $(out_base)/.clean
-$(default): $(addprefix $(out_base)/,$(addsuffix /,$(tests)))
-$(test): $(addprefix $(out_base)/,$(addsuffix /.test,$(tests)))
-$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(tests)))
+$(default): $(addprefix $(out_base)/,$(addsuffix /,$(build_tests)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_tests)))
+$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_tests)))
+$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_tests)))
-$(foreach t,$(tests),$(call import,$(src_base)/$t/makefile))
+ifneq ($(filter $(MAKECMDGOALS),dist dist-win),)
+$(foreach t,$(all_tests),$(call import,$(src_base)/$t/makefile))
+else
+$(foreach t,$(build_tests),$(call import,$(src_base)/$t/makefile))
+endif
diff --git a/tests/cxx/hybrid/polymorphism/multischema/makefile b/tests/cxx/hybrid/polymorphism/multischema/makefile
index 96ce17f..1899fea 100644
--- a/tests/cxx/hybrid/polymorphism/multischema/makefile
+++ b/tests/cxx/hybrid/polymorphism/multischema/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,10 +44,11 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate --generate-polymorphic --generate-typeinfo \
---polymorphic-type base --polymorphic-schema $(src_base)/type.xsd \
---include-regex '%.*/([^/]*)%$$$$1%'
+$(gen): xsde_options += --include-regex '%.*/([^/]*)%$$$$1%'
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate --generate-polymorphic \
+--generate-typeinfo --polymorphic-type base \
+--polymorphic-schema $(src_base)/type.xsd
$(call include-dep,$(dep))
@@ -60,6 +63,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/recursive/makefile b/tests/cxx/hybrid/recursive/makefile
index b7975b6..f2cfac4 100644
--- a/tests/cxx/hybrid/recursive/makefile
+++ b/tests/cxx/hybrid/recursive/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/sequences/makefile b/tests/cxx/hybrid/sequences/makefile
index 3078125..f572df9 100644
--- a/tests/cxx/hybrid/sequences/makefile
+++ b/tests/cxx/hybrid/sequences/makefile
@@ -13,9 +13,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -37,6 +39,18 @@ $(test): driver := $(driver)
$(test): $(driver)
$(call message,test $$1,$$1,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cxx "$(cxx)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/test-template/makefile b/tests/cxx/hybrid/test-template/makefile
index f4a22ed..9c71191 100644
--- a/tests/cxx/hybrid/test-template/makefile
+++ b/tests/cxx/hybrid/test-template/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \
diff --git a/tests/cxx/hybrid/union/makefile b/tests/cxx/hybrid/union/makefile
index e3ff63e..d41006c 100644
--- a/tests/cxx/hybrid/union/makefile
+++ b/tests/cxx/hybrid/union/makefile
@@ -21,9 +21,11 @@ dep := $(obj:.o=.o.d)
xsde.l := $(out_root)/libxsde/xsde/xsde.l
xsde.l.cpp-options := $(out_root)/libxsde/xsde/xsde.l.cpp-options
-driver := $(out_base)/driver
-test := $(out_base)/.test
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+test := $(out_base)/.test
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -42,8 +44,8 @@ gen := $(addprefix $(out_base)/,$(genf))
$(gen): $(out_root)/xsde/xsde
$(gen): xsde := $(out_root)/xsde/xsde
-$(gen): xsde_options += --generate-parser --generate-serializer \
---generate-aggregate --generate-detach
+$(gen) $(dist) $(dist-win): xsde_options += --generate-parser \
+--generate-serializer --generate-aggregate --generate-detach
$(call include-dep,$(dep))
@@ -58,6 +60,19 @@ $(test): driver := $(driver)
$(test): $(driver) $(src_base)/test-000.xml $(src_base)/test-000.std
$(call message,test $$1,$$1 $(src_base)/test-000.xml | diff -u $(src_base)/test-000.std -,$(driver))
+
+# Dist.
+#
+$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-hybrid -xsd "$(xsd)" \
+-cxx "$(cxx)" -gen "$(genf)" -opt "$(xsde_options)" -out $(dist_prefix)
+
+$(dist):
+ $(call message,install $(src_base),$(scf_root)/dist $(opt))
+
+$(dist-win):
+ $(call message,install $(src_base),$(scf_root)/dist -win $(opt))
+
+
# Clean.
#
$(clean): $(driver).o.clean \