aboutsummaryrefslogtreecommitdiff
path: root/dist/examples/cxx/serializer/polymorphism/nmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'dist/examples/cxx/serializer/polymorphism/nmakefile')
-rw-r--r--dist/examples/cxx/serializer/polymorphism/nmakefile49
1 files changed, 49 insertions, 0 deletions
diff --git a/dist/examples/cxx/serializer/polymorphism/nmakefile b/dist/examples/cxx/serializer/polymorphism/nmakefile
new file mode 100644
index 0000000..8bb5d26
--- /dev/null
+++ b/dist/examples/cxx/serializer/polymorphism/nmakefile
@@ -0,0 +1,49 @@
+root = ..\..\..\..
+
+!include $(root)\build\cxx\rules.nmake
+
+# Build.
+#
+EXTRA_CPPFLAGS = /I$(root)\libxsde
+
+!if "$(XSDE_LONGLONG)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --no-long-long
+!endif
+
+!if "$(XSDE_SERIALIZER_VALIDATION)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --suppress-validation
+!endif
+
+!if "$(XSDE_REUSE_STYLE)" == "mixin"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --reuse-style-mixin
+!endif
+
+!if "$(XSDE_REUSE_STYLE)" == "mixin"
+impl = supermen-simpl-mixin
+!else
+impl = supermen-simpl-tiein
+!endif
+
+driver.exe: driver.obj supermen-sskel.obj $(impl).obj $(root)\libxsde\xsde\xsde.lib
+
+driver.obj: driver.cxx $(impl).hxx supermen-sskel.hxx supermen.hxx
+$(impl).obj: $(impl).cxx $(impl).hxx supermen-sskel.hxx supermen.hxx
+supermen-sskel.obj: supermen-sskel.cxx supermen-sskel.hxx supermen.hxx
+
+
+supermen-sskel.hxx supermen-sskel.cxx: supermen.xsd supermen.map
+ $(root)\bin\xsde.exe cxx-serializer $(XSDFLAGS) $(EXTRA_XSDFLAGS) \
+--generate-polymorphic --type-map supermen.map supermen.xsd
+
+
+# Test.
+#
+test: driver.exe
+ .\driver.exe
+
+
+# Clean.
+#
+clean:
+ -del supermen-sskel.?xx $(impl).obj supermen-sskel.obj driver.obj driver.exe
+