aboutsummaryrefslogtreecommitdiff
path: root/dist/examples/cxx/parser/multiroot/nmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'dist/examples/cxx/parser/multiroot/nmakefile')
-rw-r--r--dist/examples/cxx/parser/multiroot/nmakefile54
1 files changed, 54 insertions, 0 deletions
diff --git a/dist/examples/cxx/parser/multiroot/nmakefile b/dist/examples/cxx/parser/multiroot/nmakefile
new file mode 100644
index 0000000..05e6a7d
--- /dev/null
+++ b/dist/examples/cxx/parser/multiroot/nmakefile
@@ -0,0 +1,54 @@
+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_PARSER_VALIDATION)" == "n"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --suppress-validation
+!endif
+
+!if "$(XSDE_REUSE_STYLE)" == "mixin"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --reuse-style-mixin
+!endif
+
+!if "$(XSDE_POLYMORPHIC)" == "y"
+EXTRA_XSDFLAGS = $(EXTRA_XSDFLAGS) --runtime-polymorphic
+!endif
+
+!if "$(XSDE_REUSE_STYLE)" == "mixin"
+impl = protocol-pimpl-mixin
+!else
+impl = protocol-pimpl-tiein
+!endif
+
+
+driver.exe: driver.obj protocol-pskel.obj $(impl).obj $(root)\libxsde\xsde\xsde.lib
+
+driver.obj: driver.cxx $(impl).hxx protocol-pskel.hxx protocol.hxx
+$(impl).obj: $(impl).cxx $(impl).hxx protocol-pskel.hxx protocol.hxx
+protocol-pskel.obj: protocol-pskel.cxx protocol-pskel.hxx protocol.hxx
+
+
+protocol-pskel.hxx protocol-pskel.cxx: protocol.xsd protocol.map
+ $(root)\bin\xsde.exe cxx-parser $(XSDFLAGS) $(EXTRA_XSDFLAGS) \
+--type-map protocol.map protocol.xsd
+
+
+# Test.
+#
+test: driver.exe balance.xml withdraw.xml deposit.xml
+ .\driver balance.xml
+ .\driver withdraw.xml
+ .\driver deposit.xml
+
+# Clean.
+#
+clean:
+ -del protocol-pskel.?xx $(impl).obj protocol-pskel.obj driver.obj driver.exe