aboutsummaryrefslogtreecommitdiff
path: root/examples/cxx/serializer
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cxx/serializer')
-rw-r--r--examples/cxx/serializer/hello/makefile27
-rw-r--r--examples/cxx/serializer/library/makefile33
-rw-r--r--examples/cxx/serializer/makefile43
-rw-r--r--examples/cxx/serializer/minimal/makefile31
-rw-r--r--examples/cxx/serializer/polymorphism/makefile33
-rw-r--r--examples/cxx/serializer/polyroot/makefile33
-rw-r--r--examples/cxx/serializer/wildcard/makefile29
7 files changed, 205 insertions, 24 deletions
diff --git a/examples/cxx/serializer/hello/makefile b/examples/cxx/serializer/hello/makefile
index 77e9ad8..5d07a2d 100644
--- a/examples/cxx/serializer/hello/makefile
+++ b/examples/cxx/serializer/hello/makefile
@@ -14,8 +14,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -39,6 +41,26 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/hello.xsd,$(dist_prefix)/$(path)/hello.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -67,6 +89,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)
diff --git a/examples/cxx/serializer/library/makefile b/examples/cxx/serializer/library/makefile
index e44c671..5ca18fb 100644
--- a/examples/cxx/serializer/library/makefile
+++ b/examples/cxx/serializer/library/makefile
@@ -20,8 +20,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -47,6 +49,32 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/library.hxx,$(dist_prefix)/$(path)/library.hxx)
+ $(call install-data,$(src_base)/library-simpl-mixin.hxx,$(dist_prefix)/$(path)/library-simpl-mixin.hxx)
+ $(call install-data,$(src_base)/library-simpl-mixin.cxx,$(dist_prefix)/$(path)/library-simpl-mixin.cxx)
+ $(call install-data,$(src_base)/library-simpl-tiein.hxx,$(dist_prefix)/$(path)/library-simpl-tiein.hxx)
+ $(call install-data,$(src_base)/library-simpl-tiein.cxx,$(dist_prefix)/$(path)/library-simpl-tiein.cxx)
+ $(call install-data,$(src_base)/library.map,$(dist_prefix)/$(path)/library.map)
+ $(call install-data,$(src_base)/library.xsd,$(dist_prefix)/$(path)/library.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -75,6 +103,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)
diff --git a/examples/cxx/serializer/makefile b/examples/cxx/serializer/makefile
index 0bda4e8..7e454bf 100644
--- a/examples/cxx/serializer/makefile
+++ b/examples/cxx/serializer/makefile
@@ -5,25 +5,27 @@
include $(dir $(lastword $(MAKEFILE_LIST)))../../../build/bootstrap.make
-examples :=
+all_examples := hello library polymorphism polyroot wildcard minimal
+
+build_examples :=
ifeq ($(xsde_stl),y)
ifeq ($(xsde_iostream),y)
ifeq ($(xsde_exceptions),y)
-examples += hello
+build_examples += hello
ifneq ($(xsde_reuse_style),none)
-examples += library
+build_examples += library
ifeq ($(xsde_polymorphic),y)
-examples += polymorphism polyroot
+build_examples += polymorphism polyroot
endif
endif
ifeq ($(xsde_reuse_style),tiein)
-examples += wildcard
+build_examples += wildcard
endif
endif
@@ -33,17 +35,34 @@ endif
ifeq ($(xsde_stl),n)
ifeq ($(xsde_exceptions),n)
ifneq ($(xsde_reuse_style),none)
-examples += minimal
+build_examples += minimal
endif
endif
endif
-default := $(out_base)/
-clean := $(out_base)/.clean
+default := $(out_base)/
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
+
+.PHONY: $(default) $(dist) $(dist-win) $(clean)
+
+$(default): $(addprefix $(out_base)/,$(addsuffix /,$(build_examples)))
+$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_examples)))
-.PHONY: $(default) $(clean)
+# Dist.
+#
+$(dist) $(dist-win): path := $(subst $(src_root)/,,$(src_base))
-$(default): $(addprefix $(out_base)/,$(addsuffix /,$(examples)))
-$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(examples)))
+$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples)))
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
-$(foreach e,$(examples),$(call import,$(src_base)/$e/makefile))
+$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples)))
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+ifneq ($(filter $(MAKECMDGOALS),dist dist-win),)
+$(foreach e,$(all_examples),$(call import,$(src_base)/$e/makefile))
+else
+$(foreach e,$(build_examples),$(call import,$(src_base)/$e/makefile))
+endif
diff --git a/examples/cxx/serializer/minimal/makefile b/examples/cxx/serializer/minimal/makefile
index 4bd42a1..992343e 100644
--- a/examples/cxx/serializer/minimal/makefile
+++ b/examples/cxx/serializer/minimal/makefile
@@ -14,8 +14,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -41,6 +43,30 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/people.hxx,$(dist_prefix)/$(path)/people.hxx)
+ $(call install-data,$(src_base)/people-simpl-mixin.hxx,$(dist_prefix)/$(path)/people-simpl-mixin.hxx)
+ $(call install-data,$(src_base)/people-simpl-tiein.hxx,$(dist_prefix)/$(path)/people-simpl-tiein.hxx)
+ $(call install-data,$(src_base)/people.map,$(dist_prefix)/$(path)/people.map)
+ $(call install-data,$(src_base)/people.xsd,$(dist_prefix)/$(path)/people.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -69,6 +95,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)
diff --git a/examples/cxx/serializer/polymorphism/makefile b/examples/cxx/serializer/polymorphism/makefile
index 24845cb..203ca26 100644
--- a/examples/cxx/serializer/polymorphism/makefile
+++ b/examples/cxx/serializer/polymorphism/makefile
@@ -20,8 +20,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -48,6 +50,32 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/supermen.hxx,$(dist_prefix)/$(path)/supermen.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-mixin.hxx,$(dist_prefix)/$(path)/supermen-simpl-mixin.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-mixin.cxx,$(dist_prefix)/$(path)/supermen-simpl-mixin.cxx)
+ $(call install-data,$(src_base)/supermen-simpl-tiein.hxx,$(dist_prefix)/$(path)/supermen-simpl-tiein.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-tiein.cxx,$(dist_prefix)/$(path)/supermen-simpl-tiein.cxx)
+ $(call install-data,$(src_base)/supermen.map,$(dist_prefix)/$(path)/supermen.map)
+ $(call install-data,$(src_base)/supermen.xsd,$(dist_prefix)/$(path)/supermen.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -76,6 +104,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)
diff --git a/examples/cxx/serializer/polyroot/makefile b/examples/cxx/serializer/polyroot/makefile
index afa52b5..d151cc4 100644
--- a/examples/cxx/serializer/polyroot/makefile
+++ b/examples/cxx/serializer/polyroot/makefile
@@ -20,8 +20,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -48,6 +50,32 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/supermen.hxx,$(dist_prefix)/$(path)/supermen.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-mixin.hxx,$(dist_prefix)/$(path)/supermen-simpl-mixin.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-mixin.cxx,$(dist_prefix)/$(path)/supermen-simpl-mixin.cxx)
+ $(call install-data,$(src_base)/supermen-simpl-tiein.hxx,$(dist_prefix)/$(path)/supermen-simpl-tiein.hxx)
+ $(call install-data,$(src_base)/supermen-simpl-tiein.cxx,$(dist_prefix)/$(path)/supermen-simpl-tiein.cxx)
+ $(call install-data,$(src_base)/supermen.map,$(dist_prefix)/$(path)/supermen.map)
+ $(call install-data,$(src_base)/supermen.xsd,$(dist_prefix)/$(path)/supermen.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -76,6 +104,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)
diff --git a/examples/cxx/serializer/wildcard/makefile b/examples/cxx/serializer/wildcard/makefile
index e2b43a6..c44aa8c 100644
--- a/examples/cxx/serializer/wildcard/makefile
+++ b/examples/cxx/serializer/wildcard/makefile
@@ -14,8 +14,10 @@ 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
-clean := $(out_base)/.clean
+driver := $(out_base)/driver
+dist := $(out_base)/.dist
+dist-win := $(out_base)/.dist-win
+clean := $(out_base)/.clean
# Build.
@@ -41,6 +43,28 @@ $(call include-dep,$(dep))
$(out_base)/: $(driver)
+# Dist.
+#
+dist-common := $(out_base)/.dist-common
+
+.PHONY: $(dist) $(dist-win) $(dist-common)
+
+$(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base))
+
+$(dist-common):
+ $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx)
+ $(call install-data,$(src_base)/email.hxx,$(dist_prefix)/$(path)/email.hxx)
+ $(call install-data,$(src_base)/email.map,$(dist_prefix)/$(path)/email.map)
+ $(call install-data,$(src_base)/email.xsd,$(dist_prefix)/$(path)/email.xsd)
+
+$(dist): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README)
+
+$(dist-win): $(dist-common)
+ $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt)
+ $(call message,,unix2dos $(dist_prefix)/$(path)/README.txt)
+
+
# Clean.
#
.PHONY: $(clean)
@@ -69,6 +93,7 @@ endif
$(call include,$(bld_root)/cxx/o-e.make)
$(call include,$(bld_root)/cxx/cxx-o.make)
$(call include,$(bld_root)/cxx/cxx-d.make)
+$(call include,$(bld_root)/install.make)
$(call include,$(scf_root)/xsde/serializer/xsd-cxx.make)