From b135374d5e40df21871b3e0c9efc69ba2d8361cb Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 20 Oct 2009 10:50:22 +0200 Subject: Add tests to the distribution The distribution makefiles for tests are automatically generated by the build/dist script. nmakefiles are not yet generated. --- tests/cxx/hashmap/makefile | 20 +++++++-- tests/cxx/hybrid/binary/cdr/makefile | 27 +++++++++--- tests/cxx/hybrid/binary/xdr/makefile | 26 +++++++++--- tests/cxx/hybrid/built-in/makefile | 24 ++++++++--- tests/cxx/hybrid/choice/makefile | 25 ++++++++--- tests/cxx/hybrid/default/makefile | 25 ++++++++--- tests/cxx/hybrid/iterator/makefile | 23 ++++++++-- tests/cxx/hybrid/list/makefile | 25 ++++++++--- tests/cxx/hybrid/makefile | 36 +++++++++++----- tests/cxx/hybrid/polymorphism/makefile | 21 +++++++--- tests/cxx/hybrid/polymorphism/multischema/makefile | 30 +++++++++---- tests/cxx/hybrid/recursive/makefile | 25 ++++++++--- tests/cxx/hybrid/sequences/makefile | 20 +++++++-- tests/cxx/hybrid/test-template/makefile | 25 ++++++++--- tests/cxx/hybrid/union/makefile | 25 ++++++++--- tests/cxx/makefile | 25 ++++++++--- tests/cxx/parser/built-in/makefile | 21 ++++++++-- tests/cxx/parser/duplicate/makefile | 26 +++++++++--- tests/cxx/parser/enumeration/makefile | 25 +++++++++-- tests/cxx/parser/error-handling/codes/makefile | 25 ++++++++--- .../cxx/parser/error-handling/exceptions/makefile | 24 ++++++++--- tests/cxx/parser/error-handling/makefile | 25 ++++++++--- tests/cxx/parser/generated-impl/makefile | 26 +++++++++--- tests/cxx/parser/list/makefile | 22 ++++++++-- tests/cxx/parser/makefile | 47 ++++++++++++++------- tests/cxx/parser/name-clash/inheritance/makefile | 22 ++++++++-- tests/cxx/parser/polymorphism/makefile | 23 ++++++++-- tests/cxx/parser/recursive/makefile | 21 ++++++++-- tests/cxx/parser/reset/makefile | 21 ++++++++-- tests/cxx/parser/test-template/makefile | 22 ++++++++-- tests/cxx/parser/union/makefile | 22 ++++++++-- tests/cxx/parser/validation/all/makefile | 21 ++++++++-- tests/cxx/parser/validation/any/makefile | 21 ++++++++-- tests/cxx/parser/validation/attribute/makefile | 22 ++++++++-- .../parser/validation/built-in/any-type/makefile | 21 ++++++++-- .../cxx/parser/validation/built-in/binary/makefile | 20 +++++++-- .../parser/validation/built-in/boolean/makefile | 20 +++++++-- tests/cxx/parser/validation/built-in/byte/makefile | 20 +++++++-- .../parser/validation/built-in/date-time/makefile | 19 +++++++-- .../cxx/parser/validation/built-in/float/makefile | 20 +++++++-- tests/cxx/parser/validation/built-in/int/makefile | 20 +++++++-- .../parser/validation/built-in/integer/makefile | 20 +++++++-- .../parser/validation/built-in/long-long/makefile | 20 +++++++-- tests/cxx/parser/validation/built-in/long/makefile | 20 +++++++-- tests/cxx/parser/validation/built-in/makefile | 30 +++++++++---- .../cxx/parser/validation/built-in/qname/makefile | 20 +++++++-- .../cxx/parser/validation/built-in/short/makefile | 20 +++++++-- .../cxx/parser/validation/built-in/string/makefile | 20 +++++++-- tests/cxx/parser/validation/built-in/uri/makefile | 20 +++++++-- tests/cxx/parser/validation/choice/makefile | 21 ++++++++-- tests/cxx/parser/validation/makefile | 25 ++++++++--- tests/cxx/parser/validation/restriction/makefile | 21 ++++++++-- tests/cxx/parser/validation/sequence/makefile | 21 ++++++++-- tests/cxx/serializer/all/makefile | 22 ++++++++-- tests/cxx/serializer/built-in/driver.cxx | 18 ++++++++ tests/cxx/serializer/built-in/makefile | 21 ++++++++-- tests/cxx/serializer/built-in/test-000.xml | 1 + tests/cxx/serializer/built-in/test-001.xml | 1 + tests/cxx/serializer/choice/makefile | 22 ++++++++-- tests/cxx/serializer/complex/makefile | 22 ++++++++-- tests/cxx/serializer/enumeration/makefile | 26 +++++++++--- tests/cxx/serializer/error-handling/codes/makefile | 22 ++++++++-- .../serializer/error-handling/exceptions/makefile | 22 ++++++++-- tests/cxx/serializer/error-handling/makefile | 25 ++++++++--- tests/cxx/serializer/generated-driver/makefile | 29 ++++++++++--- tests/cxx/serializer/list/makefile | 22 ++++++++-- tests/cxx/serializer/makefile | 49 ++++++++++++++++++---- tests/cxx/serializer/polymorphism/makefile | 23 ++++++++-- tests/cxx/serializer/recursive/makefile | 22 ++++++++-- tests/cxx/serializer/reset/makefile | 22 ++++++++-- tests/cxx/serializer/restriction/makefile | 22 ++++++++-- tests/cxx/serializer/sequence/makefile | 22 ++++++++-- tests/cxx/serializer/test-template/makefile | 22 ++++++++-- tests/cxx/serializer/union/makefile | 22 ++++++++-- tests/cxx/serializer/validation/any/makefile | 22 ++++++++-- tests/cxx/serializer/validation/attribute/makefile | 22 ++++++++-- .../validation/built-in/date-time/makefile | 20 +++++++-- .../validation/built-in/decimal/makefile | 20 +++++++-- .../validation/built-in/integer/makefile | 20 +++++++-- tests/cxx/serializer/validation/built-in/makefile | 22 +++++++--- .../serializer/validation/built-in/qname/makefile | 20 +++++++-- .../serializer/validation/built-in/string/makefile | 19 +++++++-- tests/cxx/serializer/validation/choice/makefile | 22 ++++++++-- tests/cxx/serializer/validation/element/makefile | 22 ++++++++-- tests/cxx/serializer/validation/makefile | 25 ++++++++--- tests/cxx/serializer/validation/sequence/makefile | 22 ++++++++-- tests/cxx/serializer/wildcard/makefile | 22 ++++++++-- tests/cxx/string/makefile | 20 +++++++-- tests/makefile | 14 +++++-- 89 files changed, 1657 insertions(+), 348 deletions(-) create mode 100644 tests/cxx/serializer/built-in/test-000.xml create mode 100644 tests/cxx/serializer/built-in/test-001.xml (limited to 'tests') diff --git a/tests/cxx/hashmap/makefile b/tests/cxx/hashmap/makefile index 6334dc2..0438876 100644 --- a/tests/cxx/hashmap/makefile +++ b/tests/cxx/hashmap/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) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(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/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 \ diff --git a/tests/cxx/makefile b/tests/cxx/makefile index 0105b47..e9ba41b 100644 --- a/tests/cxx/makefile +++ b/tests/cxx/makefile @@ -5,18 +5,31 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../build/bootstrap.make -tests := hybrid parser serializer string +# NOTE: remember to update dist/tests/cxx/{makefile,nmakefile} if +# you change anything here. +# + +all_tests := hybrid parser serializer string hashmap + +build_tests := hybrid parser serializer string ifeq ($(xsde_polymorphic),y) -tests += hashmap +build_tests += hashmap 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/parser/built-in/makefile b/tests/cxx/parser/built-in/makefile index 49eb681..c6146e9 100644 --- a/tests/cxx/parser/built-in/makefile +++ b/tests/cxx/parser/built-in/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -52,6 +55,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/duplicate/makefile b/tests/cxx/parser/duplicate/makefile index 8c7b717..1d3cfd4 100644 --- a/tests/cxx/parser/duplicate/makefile +++ b/tests/cxx/parser/duplicate/makefile @@ -5,6 +5,7 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make +cxx := xsd := test.xsd obj := $(addprefix $(out_base)/,$(xsd:.xsd=-pskel.o) $(xsd:.xsd=-pimpl.o) $(xsd:.xsd=-pdriver.o)) @@ -13,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)/$(xsd:.xsd=-pdriver) -test := $(out_base)/.test -clean := $(out_base)/.clean +driver := $(out_base)/$(xsd:.xsd=-pdriver) +test := $(out_base)/.test +dist := $(out_base)/.dist +dist-win := $(out_base)/.dist-win +clean := $(out_base)/.clean # Build. @@ -30,8 +33,8 @@ genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) \ gen := $(addprefix $(out_base)/,$(genf)) $(gen): xsde := $(out_root)/xsde/xsde -$(gen): xsde_options += --generate-print-impl --generate-test-driver \ ---force-overwrite +$(gen) $(dist) $(dist-win): xsde_options += --generate-print-impl \ +--generate-test-driver --force-overwrite $(gen): $(out_root)/xsde/xsde $(call include-dep,$(dep)) @@ -47,6 +50,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-parser -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/parser/enumeration/makefile b/tests/cxx/parser/enumeration/makefile index 0997aab..91fa48b 100644 --- a/tests/cxx/parser/enumeration/makefile +++ b/tests/cxx/parser/enumeration/makefile @@ -7,6 +7,7 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make xsd := test.xsd cxx := driver.cxx +hxx := gender.hxx obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=-pskel.o)) dep := $(obj:.o=.o.d) @@ -14,9 +15,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 +33,7 @@ skelf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --type-map $(src_base)/test.map +$(skel) $(dist) $(dist-win): xsde_options += --type-map $(src_base)/test.map $(skel): $(out_root)/xsde/xsde $(src_base)/test.map @@ -48,6 +51,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -hxx "$(hxx)" -gen "$(skelf)" -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/parser/error-handling/codes/makefile b/tests/cxx/parser/error-handling/codes/makefile index 370db75..444b46b 100644 --- a/tests/cxx/parser/error-handling/codes/makefile +++ b/tests/cxx/parser/error-handling/codes/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. @@ -29,8 +31,8 @@ skelf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --no-exceptions --type-map $(src_base)/test.map - +$(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)) @@ -46,6 +48,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/error-handling/exceptions/makefile b/tests/cxx/parser/error-handling/exceptions/makefile index e1a038c..c347a1e 100644 --- a/tests/cxx/parser/error-handling/exceptions/makefile +++ b/tests/cxx/parser/error-handling/exceptions/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. @@ -29,8 +31,7 @@ skelf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --type-map $(src_base)/test.map - +$(skel) $(dist) $(dist-win): xsde_options += --type-map $(src_base)/test.map $(skel): $(out_root)/xsde/xsde $(src_base)/test.map @@ -47,6 +48,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/error-handling/makefile b/tests/cxx/parser/error-handling/makefile index a9eaa6f..739e16f 100644 --- a/tests/cxx/parser/error-handling/makefile +++ b/tests/cxx/parser/error-handling/makefile @@ -5,18 +5,31 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make +# NOTE: remember to update dist/tests/cxx/parser/error-handling/{makefile, +# nmakefile} if you change anything here. +# + +all_tests := codes exceptions + ifeq ($(xsde_exceptions),y) -tests := exceptions +build_tests := exceptions else -tests := codes +build_tests := codes 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/parser/generated-impl/makefile b/tests/cxx/parser/generated-impl/makefile index 7d5d6f6..aeda4a4 100644 --- a/tests/cxx/parser/generated-impl/makefile +++ b/tests/cxx/parser/generated-impl/makefile @@ -5,6 +5,7 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make +cxx := xsd := test.xsd obj := $(addprefix $(out_base)/,$(xsd:.xsd=-pskel.o) $(xsd:.xsd=-pimpl.o) $(xsd:.xsd=-pdriver.o)) @@ -13,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)/$(xsd:.xsd=-pdriver) -test := $(out_base)/.test -clean := $(out_base)/.clean +driver := $(out_base)/$(xsd:.xsd=-pdriver) +test := $(out_base)/.test +dist := $(out_base)/.dist +dist-win := $(out_base)/.dist-win +clean := $(out_base)/.clean # Build. @@ -30,8 +33,8 @@ genf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) \ gen := $(addprefix $(out_base)/,$(genf)) $(gen): xsde := $(out_root)/xsde/xsde -$(gen): xsde_options += --generate-print-impl --generate-test-driver \ ---force-overwrite +$(gen) $(dist) $(dist-win): xsde_options += --generate-print-impl \ +--generate-test-driver --force-overwrite $(gen): $(out_root)/xsde/xsde $(call include-dep,$(dep)) @@ -47,6 +50,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-parser -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/parser/list/makefile b/tests/cxx/parser/list/makefile index e709106..ce422ed 100644 --- a/tests/cxx/parser/list/makefile +++ b/tests/cxx/parser/list/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/makefile b/tests/cxx/parser/makefile index 1f749df..8b11959 100644 --- a/tests/cxx/parser/makefile +++ b/tests/cxx/parser/makefile @@ -5,19 +5,27 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make -tests := generated-impl duplicate +# NOTE: remember to update dist/tests/cxx/parser/{makefile,nmakefile} if +# you change anything here. +# + +all_tests := generated-impl duplicate built-in recursive test-template \ +union enumeration list polymorphism reset validation error-handling \ +name-clash/inheritance + +build_tests := generated-impl duplicate ifeq ($(xsde_iostream),y) ifeq ($(xsde_exceptions),y) -tests += \ -built-in \ -recursive \ -test-template \ +build_tests += \ +built-in \ +recursive \ +test-template \ union ifeq ($(xsde_reuse_style),tiein) -tests += \ -enumeration \ +build_tests += \ +enumeration \ list endif @@ -25,33 +33,40 @@ endif # exceptions ifeq ($(xsde_polymorphic),y) ifeq ($(xsde_reuse_style),tiein) -tests += polymorphism +build_tests += polymorphism endif endif -tests += reset +build_tests += reset endif # iostream ifeq ($(xsde_parser_validation),y) -tests += validation +build_tests += validation ifeq ($(xsde_iostream),y) -tests += error-handling +build_tests += error-handling ifeq ($(xsde_exceptions),y) -tests += name-clash/inheritance +build_tests += name-clash/inheritance endif endif 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/parser/name-clash/inheritance/makefile b/tests/cxx/parser/name-clash/inheritance/makefile index 56599cd..04127c4 100644 --- a/tests/cxx/parser/name-clash/inheritance/makefile +++ b/tests/cxx/parser/name-clash/inheritance/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/polymorphism/makefile b/tests/cxx/parser/polymorphism/makefile index e60f68e..14249b7 100644 --- a/tests/cxx/parser/polymorphism/makefile +++ b/tests/cxx/parser/polymorphism/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. @@ -29,8 +31,8 @@ skelf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --generate-polymorphic $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += --generate-polymorphic $(call include-dep,$(dep)) @@ -45,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/recursive/makefile b/tests/cxx/parser/recursive/makefile index 722bae6..a56168f 100644 --- a/tests/cxx/parser/recursive/makefile +++ b/tests/cxx/parser/recursive/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -45,6 +48,18 @@ $(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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/reset/makefile b/tests/cxx/parser/reset/makefile index a89ff92..1453430 100644 --- a/tests/cxx/parser/reset/makefile +++ b/tests/cxx/parser/reset/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -52,6 +55,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/test-template/makefile b/tests/cxx/parser/test-template/makefile index 3d95a16..f5b3846 100644 --- a/tests/cxx/parser/test-template/makefile +++ b/tests/cxx/parser/test-template/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/union/makefile b/tests/cxx/parser/union/makefile index 42a14e7..35351ed 100644 --- a/tests/cxx/parser/union/makefile +++ b/tests/cxx/parser/union/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/all/makefile b/tests/cxx/parser/validation/all/makefile index c16798c..bd73f30 100644 --- a/tests/cxx/parser/validation/all/makefile +++ b/tests/cxx/parser/validation/all/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -53,6 +56,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/any/makefile b/tests/cxx/parser/validation/any/makefile index ffd3d07..11f3017 100644 --- a/tests/cxx/parser/validation/any/makefile +++ b/tests/cxx/parser/validation/any/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -53,6 +56,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/attribute/makefile b/tests/cxx/parser/validation/attribute/makefile index 078ed49..58b13d6 100644 --- a/tests/cxx/parser/validation/attribute/makefile +++ b/tests/cxx/parser/validation/attribute/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,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-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/built-in/any-type/makefile b/tests/cxx/parser/validation/built-in/any-type/makefile index a96c8b7..b76f236 100644 --- a/tests/cxx/parser/validation/built-in/any-type/makefile +++ b/tests/cxx/parser/validation/built-in/any-type/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -53,6 +56,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/built-in/binary/makefile b/tests/cxx/parser/validation/built-in/binary/makefile index 4157bd0..8693be4 100644 --- a/tests/cxx/parser/validation/built-in/binary/makefile +++ b/tests/cxx/parser/validation/built-in/binary/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/parser/validation/built-in/boolean/makefile b/tests/cxx/parser/validation/built-in/boolean/makefile index 46adc3d..a4a7b2b 100644 --- a/tests/cxx/parser/validation/built-in/boolean/makefile +++ b/tests/cxx/parser/validation/built-in/boolean/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/parser/validation/built-in/byte/makefile b/tests/cxx/parser/validation/built-in/byte/makefile index 02e2641..265d7cd 100644 --- a/tests/cxx/parser/validation/built-in/byte/makefile +++ b/tests/cxx/parser/validation/built-in/byte/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/parser/validation/built-in/date-time/makefile b/tests/cxx/parser/validation/built-in/date-time/makefile index 00bceae..6fc6389 100644 --- a/tests/cxx/parser/validation/built-in/date-time/makefile +++ b/tests/cxx/parser/validation/built-in/date-time/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,17 @@ $(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/parser/validation/built-in/float/makefile b/tests/cxx/parser/validation/built-in/float/makefile index c24330e..3668966 100644 --- a/tests/cxx/parser/validation/built-in/float/makefile +++ b/tests/cxx/parser/validation/built-in/float/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/parser/validation/built-in/int/makefile b/tests/cxx/parser/validation/built-in/int/makefile index 9ab788d..999250c 100644 --- a/tests/cxx/parser/validation/built-in/int/makefile +++ b/tests/cxx/parser/validation/built-in/int/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/parser/validation/built-in/integer/makefile b/tests/cxx/parser/validation/built-in/integer/makefile index d89e2f5..ce75af2 100644 --- a/tests/cxx/parser/validation/built-in/integer/makefile +++ b/tests/cxx/parser/validation/built-in/integer/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/parser/validation/built-in/long-long/makefile b/tests/cxx/parser/validation/built-in/long-long/makefile index c973217..aa4939f 100644 --- a/tests/cxx/parser/validation/built-in/long-long/makefile +++ b/tests/cxx/parser/validation/built-in/long-long/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/parser/validation/built-in/long/makefile b/tests/cxx/parser/validation/built-in/long/makefile index 2e63122..9816c09 100644 --- a/tests/cxx/parser/validation/built-in/long/makefile +++ b/tests/cxx/parser/validation/built-in/long/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/parser/validation/built-in/makefile b/tests/cxx/parser/validation/built-in/makefile index b5bbc4f..4c8638f 100644 --- a/tests/cxx/parser/validation/built-in/makefile +++ b/tests/cxx/parser/validation/built-in/makefile @@ -5,29 +5,43 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make -tests := binary boolean byte date-time float int integer qname short \ +# NOTE: remember to update dist/tests/cxx/parser/validation/built-in/ +# {makefile,nmakefile} if you change anything here. +# + +all_tests := binary boolean byte date-time float int integer qname short \ +string uri any-type long long-long + +build_tests := binary boolean byte date-time float int integer qname short \ string uri ifeq ($(xsde_iostream),y) ifeq ($(xsde_exceptions),y) ifeq ($(xsde_reuse_style),tiein) -tests += any-type +build_tests += any-type endif endif endif ifeq ($(xsde_longlong),y) -tests += long-long +build_tests += long-long else -tests += long +build_tests += long 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/parser/validation/built-in/qname/makefile b/tests/cxx/parser/validation/built-in/qname/makefile index e63b9cd..43ff0f6 100644 --- a/tests/cxx/parser/validation/built-in/qname/makefile +++ b/tests/cxx/parser/validation/built-in/qname/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/parser/validation/built-in/short/makefile b/tests/cxx/parser/validation/built-in/short/makefile index 5a0ae6e..115b462 100644 --- a/tests/cxx/parser/validation/built-in/short/makefile +++ b/tests/cxx/parser/validation/built-in/short/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/parser/validation/built-in/string/makefile b/tests/cxx/parser/validation/built-in/string/makefile index 0480486..be94ea0 100644 --- a/tests/cxx/parser/validation/built-in/string/makefile +++ b/tests/cxx/parser/validation/built-in/string/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/parser/validation/built-in/uri/makefile b/tests/cxx/parser/validation/built-in/uri/makefile index 2507214..d71acf9 100644 --- a/tests/cxx/parser/validation/built-in/uri/makefile +++ b/tests/cxx/parser/validation/built-in/uri/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/parser/validation/choice/makefile b/tests/cxx/parser/validation/choice/makefile index 3ef5134..3e13095 100644 --- a/tests/cxx/parser/validation/choice/makefile +++ b/tests/cxx/parser/validation/choice/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -52,6 +55,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/makefile b/tests/cxx/parser/validation/makefile index 52ce503..9f674cd 100644 --- a/tests/cxx/parser/validation/makefile +++ b/tests/cxx/parser/validation/makefile @@ -5,20 +5,33 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make -tests := built-in +# NOTE: remember to update dist/tests/cxx/parser/validation/{makefile, +# nmakefile} if you change anything here. +# + +all_tests := built-in all any attribute choice restriction sequence + +build_tests := built-in ifeq ($(xsde_iostream),y) ifeq ($(xsde_exceptions),y) -tests += all any attribute choice restriction sequence +build_tests += all any attribute choice restriction sequence endif 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/parser/validation/restriction/makefile b/tests/cxx/parser/validation/restriction/makefile index 33b6b03..0b73790 100644 --- a/tests/cxx/parser/validation/restriction/makefile +++ b/tests/cxx/parser/validation/restriction/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -52,6 +55,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/parser/validation/sequence/makefile b/tests/cxx/parser/validation/sequence/makefile index 1483c97..c86ccbc 100644 --- a/tests/cxx/parser/validation/sequence/makefile +++ b/tests/cxx/parser/validation/sequence/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -52,6 +55,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.xml $(src $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-parser -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/all/makefile b/tests/cxx/serializer/all/makefile index 260cc30..c023eb9 100644 --- a/tests/cxx/serializer/all/makefile +++ b/tests/cxx/serializer/all/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/built-in/driver.cxx b/tests/cxx/serializer/built-in/driver.cxx index 453fd29..9798659 100644 --- a/tests/cxx/serializer/built-in/driver.cxx +++ b/tests/cxx/serializer/built-in/driver.cxx @@ -969,6 +969,8 @@ struct root_simpl: root_sskel case 2: return gday (15, 0, 0); } + + return gday (0); } virtual bool @@ -989,6 +991,8 @@ struct root_simpl: root_sskel case 1: return gmonth (12, 2, 30); } + + return gmonth (0); } virtual bool @@ -1009,6 +1013,8 @@ struct root_simpl: root_sskel case 1: return gyear (-2007, -2, -30); } + + return gyear (0); } virtual bool @@ -1029,6 +1035,8 @@ struct root_simpl: root_sskel case 1: return gmonth_day (12, 31, 2, 30); } + + return gmonth_day (0, 0); } virtual bool @@ -1049,6 +1057,8 @@ struct root_simpl: root_sskel case 1: return gyear_month (-2007, 12, -2, -30); } + + return gyear_month (0, 0); } virtual bool @@ -1069,6 +1079,8 @@ struct root_simpl: root_sskel case 1: return date (-2007, 12, 31, -2, -30); } + + return date (0, 0, 0); } virtual bool @@ -1089,6 +1101,8 @@ struct root_simpl: root_sskel case 1: return time (23, 59, 59.55, 2, 30); } + + return time (0, 0, 0); } virtual bool @@ -1109,6 +1123,8 @@ struct root_simpl: root_sskel case 1: return date_time (-2007, 12, 31, 23, 59, 59.55, -2, -30); } + + return date_time (0, 0, 0, 0, 0, 0); } virtual bool @@ -1139,6 +1155,8 @@ struct root_simpl: root_sskel case 6: return duration (false, 1, 2, 3, 4, 5, 6.7); } + + return duration (false, 0, 0, 0, 0, 0, 0); } private: diff --git a/tests/cxx/serializer/built-in/makefile b/tests/cxx/serializer/built-in/makefile index c0f3c84..5029c5c 100644 --- a/tests/cxx/serializer/built-in/makefile +++ b/tests/cxx/serializer/built-in/makefile @@ -16,9 +16,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. @@ -32,6 +34,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -55,6 +58,18 @@ $(out_base)/.test-%: $(driver) $(src_base)/test.xsd $(src_base)/test-%.std $(call message,test $(out_base)/$*,$(driver) $(src_base)/test-$*.xml | diff -u $(src_base)/test-$*.std -) +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/built-in/test-000.xml b/tests/cxx/serializer/built-in/test-000.xml new file mode 100644 index 0000000..421376d --- /dev/null +++ b/tests/cxx/serializer/built-in/test-000.xml @@ -0,0 +1 @@ +dummy diff --git a/tests/cxx/serializer/built-in/test-001.xml b/tests/cxx/serializer/built-in/test-001.xml new file mode 100644 index 0000000..421376d --- /dev/null +++ b/tests/cxx/serializer/built-in/test-001.xml @@ -0,0 +1 @@ +dummy diff --git a/tests/cxx/serializer/choice/makefile b/tests/cxx/serializer/choice/makefile index 964345a..c1f958c 100644 --- a/tests/cxx/serializer/choice/makefile +++ b/tests/cxx/serializer/choice/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/complex/makefile b/tests/cxx/serializer/complex/makefile index fddcbc4..51f95e9 100644 --- a/tests/cxx/serializer/complex/makefile +++ b/tests/cxx/serializer/complex/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/enumeration/makefile b/tests/cxx/serializer/enumeration/makefile index 33e5594..8e8d663 100644 --- a/tests/cxx/serializer/enumeration/makefile +++ b/tests/cxx/serializer/enumeration/makefile @@ -7,6 +7,7 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make xsd := test.xsd cxx := driver.cxx +hxx := boolean.hxx obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=-sskel.o)) dep := $(obj:.o=.o.d) @@ -14,9 +15,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,8 +33,7 @@ skelf := $(xsd:.xsd=-sskel.hxx) $(xsd:.xsd=-sskel.ixx) $(xsd:.xsd=-sskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --type-map $(src_base)/test.map - +$(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)) @@ -47,6 +49,20 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer \ +-xsd "$(xsd)" -cxx "$(cxx)" -hxx "$(hxx)" -gen "$(skelf)" \ +-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/serializer/error-handling/codes/makefile b/tests/cxx/serializer/error-handling/codes/makefile index 3985a4b..a2a67c9 100644 --- a/tests/cxx/serializer/error-handling/codes/makefile +++ b/tests/cxx/serializer/error-handling/codes/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/error-handling/exceptions/makefile b/tests/cxx/serializer/error-handling/exceptions/makefile index eed922f..c32c51c 100644 --- a/tests/cxx/serializer/error-handling/exceptions/makefile +++ b/tests/cxx/serializer/error-handling/exceptions/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/error-handling/makefile b/tests/cxx/serializer/error-handling/makefile index 360faac..8141718 100644 --- a/tests/cxx/serializer/error-handling/makefile +++ b/tests/cxx/serializer/error-handling/makefile @@ -5,18 +5,31 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make +# NOTE: remember to update dist/tests/cxx/serializer/error-handling/ +# {makefile,nmakefile} if you change anything here. +# + +all_tests := codes exceptions + ifeq ($(xsde_exceptions),y) -tests := exceptions +build_tests := exceptions else -tests := codes +build_tests := codes 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/serializer/generated-driver/makefile b/tests/cxx/serializer/generated-driver/makefile index 0e043b2..497ee15 100644 --- a/tests/cxx/serializer/generated-driver/makefile +++ b/tests/cxx/serializer/generated-driver/makefile @@ -6,16 +6,20 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make xsd := test.xsd +cxx := test-simpl.cxx +hxx := test-simpl.hxx -obj := $(addprefix $(out_base)/,$(xsd:.xsd=-sskel.o) $(xsd:.xsd=-simpl.o) $(xsd:.xsd=-sdriver.o)) +obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=-sskel.o) $(xsd:.xsd=-sdriver.o)) 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)/$(xsd:.xsd=-sdriver) -test := $(out_base)/.test -clean := $(out_base)/.clean +driver := $(out_base)/$(xsd:.xsd=-sdriver) +test := $(out_base)/.test +dist := $(out_base)/.dist +dist-win := $(out_base)/.dist-win +clean := $(out_base)/.clean # Build. @@ -30,8 +34,9 @@ genf := $(xsd:.xsd=-sskel.hxx) $(xsd:.xsd=-sskel.ixx) $(xsd:.xsd=-sskel.cxx) \ gen := $(addprefix $(out_base)/,$(genf)) $(gen): xsde := $(out_root)/xsde/xsde -$(gen): xsde_options += --generate-test-driver --force-overwrite $(gen): $(out_root)/xsde/xsde +$(gen) $(dist) $(dist-win): xsde_options += --generate-test-driver \ +--force-overwrite $(call include-dep,$(dep)) @@ -46,6 +51,20 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer \ +-xsd "$(xsd)" -cxx "$(cxx)" -hxx "$(hxx)" -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/serializer/list/makefile b/tests/cxx/serializer/list/makefile index cef767c..3c87bea 100644 --- a/tests/cxx/serializer/list/makefile +++ b/tests/cxx/serializer/list/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/makefile b/tests/cxx/serializer/makefile index dcb27f0..577fb26 100644 --- a/tests/cxx/serializer/makefile +++ b/tests/cxx/serializer/makefile @@ -5,11 +5,35 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make -tests := generated-driver generated-impl +# NOTE: remember to update dist/tests/cxx/serializer/{makefile,nmakefile} if +# you change anything here. +# + +all_tests := \ +generated-driver \ +generated-impl \ +all \ +built-in \ +choice \ +error-handling \ +recursive \ +reset \ +restriction \ +sequence \ +test-template \ +wildcard \ +complex \ +enumeration \ +list \ +union \ +polymorphism \ +validation + +build_tests := generated-driver generated-impl ifeq ($(xsde_iostream),y) -tests += \ +build_tests += \ all \ built-in \ choice \ @@ -22,7 +46,7 @@ test-template \ wildcard ifeq ($(xsde_reuse_style),tiein) -tests += \ +build_tests += \ complex \ enumeration \ list \ @@ -31,22 +55,29 @@ endif ifeq ($(xsde_polymorphic),y) ifeq ($(xsde_reuse_style),tiein) -tests += polymorphism +build_tests += polymorphism endif endif endif # xsde_iostream ifeq ($(xsde_serializer_validation),y) -tests += validation +build_tests += validation 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/serializer/polymorphism/makefile b/tests/cxx/serializer/polymorphism/makefile index d13f8c8..f909ea2 100644 --- a/tests/cxx/serializer/polymorphism/makefile +++ b/tests/cxx/serializer/polymorphism/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. @@ -29,8 +31,8 @@ skelf := $(xsd:.xsd=-sskel.hxx) $(xsd:.xsd=-sskel.ixx) $(xsd:.xsd=-sskel.cxx) skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde -$(skel): xsde_options += --generate-polymorphic $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += --generate-polymorphic $(call include-dep,$(dep)) @@ -45,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/recursive/makefile b/tests/cxx/serializer/recursive/makefile index 7000f22..2c6d7c1 100644 --- a/tests/cxx/serializer/recursive/makefile +++ b/tests/cxx/serializer/recursive/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/reset/makefile b/tests/cxx/serializer/reset/makefile index 7906a09..686ff81 100644 --- a/tests/cxx/serializer/reset/makefile +++ b/tests/cxx/serializer/reset/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/restriction/makefile b/tests/cxx/serializer/restriction/makefile index 3b738f0..ae36c46 100644 --- a/tests/cxx/serializer/restriction/makefile +++ b/tests/cxx/serializer/restriction/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/sequence/makefile b/tests/cxx/serializer/sequence/makefile index 6c33dba..df1d32e 100644 --- a/tests/cxx/serializer/sequence/makefile +++ b/tests/cxx/serializer/sequence/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/test-template/makefile b/tests/cxx/serializer/test-template/makefile index 295fbf5..3dde195 100644 --- a/tests/cxx/serializer/test-template/makefile +++ b/tests/cxx/serializer/test-template/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/union/makefile b/tests/cxx/serializer/union/makefile index 24a007d..d8c18fb 100644 --- a/tests/cxx/serializer/union/makefile +++ b/tests/cxx/serializer/union/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/validation/any/makefile b/tests/cxx/serializer/validation/any/makefile index 53e61cb..3d848d5 100644 --- a/tests/cxx/serializer/validation/any/makefile +++ b/tests/cxx/serializer/validation/any/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/validation/attribute/makefile b/tests/cxx/serializer/validation/attribute/makefile index 4fafac8..9763ed8 100644 --- a/tests/cxx/serializer/validation/attribute/makefile +++ b/tests/cxx/serializer/validation/attribute/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/validation/built-in/date-time/makefile b/tests/cxx/serializer/validation/built-in/date-time/makefile index 7a8eaa6..1d069a1 100644 --- a/tests/cxx/serializer/validation/built-in/date-time/makefile +++ b/tests/cxx/serializer/validation/built-in/date-time/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/serializer/validation/built-in/decimal/makefile b/tests/cxx/serializer/validation/built-in/decimal/makefile index eed1012..e893e78 100644 --- a/tests/cxx/serializer/validation/built-in/decimal/makefile +++ b/tests/cxx/serializer/validation/built-in/decimal/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/serializer/validation/built-in/integer/makefile b/tests/cxx/serializer/validation/built-in/integer/makefile index 72e5152..00b11af 100644 --- a/tests/cxx/serializer/validation/built-in/integer/makefile +++ b/tests/cxx/serializer/validation/built-in/integer/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/serializer/validation/built-in/makefile b/tests/cxx/serializer/validation/built-in/makefile index 7ea3cd4..99b8603 100644 --- a/tests/cxx/serializer/validation/built-in/makefile +++ b/tests/cxx/serializer/validation/built-in/makefile @@ -5,14 +5,26 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make -tests := date-time decimal integer qname string +# NOTE: remember to update dist/tests/cxx/serializer/validation/built-in/ +# {makefile,nmakefile} if you change anything here. +# + +all_tests := date-time decimal integer qname string +build_tests := date-time decimal integer qname string 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/serializer/validation/built-in/qname/makefile b/tests/cxx/serializer/validation/built-in/qname/makefile index 025dab3..3dd483c 100644 --- a/tests/cxx/serializer/validation/built-in/qname/makefile +++ b/tests/cxx/serializer/validation/built-in/qname/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/serializer/validation/built-in/string/makefile b/tests/cxx/serializer/validation/built-in/string/makefile index b51efbb..7e2deb4 100644 --- a/tests/cxx/serializer/validation/built-in/string/makefile +++ b/tests/cxx/serializer/validation/built-in/string/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. @@ -38,6 +40,17 @@ $(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/serializer/validation/choice/makefile b/tests/cxx/serializer/validation/choice/makefile index 1ab62d6..4e95726 100644 --- a/tests/cxx/serializer/validation/choice/makefile +++ b/tests/cxx/serializer/validation/choice/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/validation/element/makefile b/tests/cxx/serializer/validation/element/makefile index 7c061d0..b8166b9 100644 --- a/tests/cxx/serializer/validation/element/makefile +++ b/tests/cxx/serializer/validation/element/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/validation/makefile b/tests/cxx/serializer/validation/makefile index f72083e..f6408a4 100644 --- a/tests/cxx/serializer/validation/makefile +++ b/tests/cxx/serializer/validation/makefile @@ -5,18 +5,31 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make -tests := built-in +# NOTE: remember to update dist/tests/cxx/serializer/validation/{makefile, +# nmakefile} if you change anything here. +# + +all_tests := built-in any attribute choice element sequence + +build_tests := built-in ifeq ($(xsde_iostream),y) -tests += any attribute choice element sequence +build_tests += any attribute choice element sequence 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/serializer/validation/sequence/makefile b/tests/cxx/serializer/validation/sequence/makefile index 5667564..014eec3 100644 --- a/tests/cxx/serializer/validation/sequence/makefile +++ b/tests/cxx/serializer/validation/sequence/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/serializer/wildcard/makefile b/tests/cxx/serializer/wildcard/makefile index 1a5e2e9..dc49910 100644 --- a/tests/cxx/serializer/wildcard/makefile +++ b/tests/cxx/serializer/wildcard/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,6 +32,7 @@ skel := $(addprefix $(out_base)/,$(skelf)) $(skel): xsde := $(out_root)/xsde/xsde $(skel): $(out_root)/xsde/xsde +$(skel) $(dist) $(dist-win): xsde_options += $(call include-dep,$(dep)) @@ -44,6 +47,19 @@ $(test): driver := $(driver) $(test): $(driver) $(src_base)/test-000.std $(call message,test $$1,$$1 | diff -u $(src_base)/test-000.std -,$(driver)) + +# Dist. +# +$(dist) $(dist-win): opt := -src $(src_base) -cmd cxx-serializer -xsd "$(xsd)" \ +-cxx "$(cxx)" -gen "$(skelf)" -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/string/makefile b/tests/cxx/string/makefile index 2ae888e..be8ba29 100644 --- a/tests/cxx/string/makefile +++ b/tests/cxx/string/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/makefile b/tests/makefile index 67f6e37..b3a9530 100644 --- a/tests/makefile +++ b/tests/makefile @@ -5,12 +5,20 @@ include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make -default := $(out_base)/ -test := $(out_base)/.test -clean := $(out_base)/.clean +# NOTE: remember to update dist/tests/{makefile,nmakefile} if +# you change anything here. +# + +default := $(out_base)/ +test := $(out_base)/.test +dist := $(out_base)/.dist +dist-win := $(out_base)/.dist-win +clean := $(out_base)/.clean $(default): $(out_base)/cxx/ $(test): $(out_base)/cxx/.test +$(dist): $(out_base)/cxx/.dist +$(dist-win): $(out_base)/cxx/.dist-win $(clean): $(out_base)/cxx/.clean $(call import,$(src_base)/cxx/makefile) -- cgit v1.1