aboutsummaryrefslogtreecommitdiff
path: root/dist/examples/cxx/hybrid/polyroot/nmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'dist/examples/cxx/hybrid/polyroot/nmakefile')
-rw-r--r--dist/examples/cxx/hybrid/polyroot/nmakefile55
1 files changed, 55 insertions, 0 deletions
diff --git a/dist/examples/cxx/hybrid/polyroot/nmakefile b/dist/examples/cxx/hybrid/polyroot/nmakefile
new file mode 100644
index 0000000..8d098bb
--- /dev/null
+++ b/dist/examples/cxx/hybrid/polyroot/nmakefile
@@ -0,0 +1,55 @@
+root = ..\..\..\..
+
+!include $(root)\build\cxx\rules.nmake
+
+# Build.
+#
+EXTRA_CPPFLAGS = /I$(root)\libxsde
+
+!if "$(XSDE_STL)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --no-stl
+!endif
+
+!if "$(XSDE_LONGLONG)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --no-long-long
+!endif
+
+!if "$(XSDE_PARSER_VALIDATION)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --suppress-validation
+!endif
+
+!if "$(XSDE_REUSE_STYLE)" == "mixin"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --reuse-style-mixin
+!endif
+
+driver.exe: driver.obj supermen.obj supermen-pskel.obj supermen-pimpl.obj \
+supermen-sskel.obj supermen-simpl.obj $(root)\libxsde\xsde\xsde.lib
+
+driver.obj: driver.cxx supermen.hxx supermen-pimpl.hxx supermen-simpl.hxx
+supermen.obj: supermen.cxx
+supermen-pskel.obj: supermen-pskel.cxx
+supermen-pimpl.obj: supermen-pimpl.cxx
+supermen-sskel.obj: supermen-sskel.cxx
+supermen-simpl.obj: supermen-simpl.cxx
+
+supermen.cxx supermen.hxx \
+supermen-pskel.cxx supermen-pskel.hxx supermen-pimpl.cxx supermen-pimpl.hxx \
+supermen-sskel.cxx supermen-sskel.hxx supermen-simpl.cxx supermen-simpl.hxx \
+: supermen.xsd
+ $(root)\bin\xsde.exe cxx-hybrid $(XSDFLAGS) $(EXTRA_XSDFLAGS) \
+--generate-parser --generate-serializer --generate-aggregate \
+--generate-polymorphic --generate-typeinfo --root-element person supermen.xsd
+
+# Test.
+#
+test: driver.exe person.xml batman.xml superman.xml
+ .\driver person.xml
+ .\driver batman.xml
+ .\driver superman.xml
+
+# Clean.
+#
+clean:
+ -del supermen-pimpl.?xx supermen-pskel.?xx supermen-simpl.?xx \
+supermen-sskel.?xx supermen.?xx supermen-pimpl.obj supermen-pskel.obj \
+supermen-simpl.obj supermen-sskel.obj supermen.obj driver.obj driver.exe