diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2020-12-18 18:48:46 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2021-02-25 13:45:48 +0300 |
commit | 5e527213a2430bb3018e5eebd909aef294edf9b5 (patch) | |
tree | 94de33c82080b53d9a9e300170f6d221d89078f4 /xsd-examples/cxx/tree/custom/taxonomy/buildfile | |
parent | 7420f85ea19b0562ffdd8123442f32bc8bac1267 (diff) |
Switch to build2
Diffstat (limited to 'xsd-examples/cxx/tree/custom/taxonomy/buildfile')
-rw-r--r-- | xsd-examples/cxx/tree/custom/taxonomy/buildfile | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/xsd-examples/cxx/tree/custom/taxonomy/buildfile b/xsd-examples/cxx/tree/custom/taxonomy/buildfile new file mode 100644 index 0000000..9267c68 --- /dev/null +++ b/xsd-examples/cxx/tree/custom/taxonomy/buildfile @@ -0,0 +1,31 @@ +# file : cxx/tree/custom/taxonomy/buildfile +# license : not copyrighted - public domain + +import libs = libxsd%lib{xsd} +import libs += libxerces-c%lib{xerces-c} + +./: exe{driver} doc{README} + +exe{driver}: {hxx cxx}{* -people} {hxx ixx cxx}{people} hxx{people-fwd} $libs + +exe{driver}: xml{people}: test.input = true + +<{hxx ixx cxx}{people} hxx{people-fwd}>: xsd{people} $xsd +{{ + diag xsd ($<[0]) # @@ TMP + + $xsd cxx-tree --std c++11 \ + --generate-inline \ + --generate-forward \ + --generate-polymorphic \ + --polymorphic-type person \ + --custom-type "person=person_impl<person_base>/person_base" \ + --custom-type "superman=superman_impl<superman_base>/superman_base" \ + --custom-type "batman=batman_impl<batman_base>/batman_base" \ + --fwd-prologue '#include "people-custom-fwd.hxx"' \ + --hxx-prologue '#include "people-custom.hxx"' \ + --output-dir $out_base \ + $path($<[0]) +}} + +cxx.poptions =+ "-I$out_base" "-I$src_base" |