summaryrefslogtreecommitdiff
path: root/xsd-examples/cxx/tree/binary
diff options
context:
space:
mode:
Diffstat (limited to 'xsd-examples/cxx/tree/binary')
-rw-r--r--xsd-examples/cxx/tree/binary/boost/README37
-rw-r--r--xsd-examples/cxx/tree/binary/boost/buildfile4
-rw-r--r--xsd-examples/cxx/tree/binary/cdr/README29
-rw-r--r--xsd-examples/cxx/tree/binary/cdr/buildfile4
-rw-r--r--xsd-examples/cxx/tree/binary/xdr/README25
-rw-r--r--xsd-examples/cxx/tree/binary/xdr/buildfile4
6 files changed, 72 insertions, 31 deletions
diff --git a/xsd-examples/cxx/tree/binary/boost/README b/xsd-examples/cxx/tree/binary/boost/README
index 6cdd2dd..4f5ae9a 100644
--- a/xsd-examples/cxx/tree/binary/boost/README
+++ b/xsd-examples/cxx/tree/binary/boost/README
@@ -28,13 +28,22 @@ library-prologue.hxx
library.hxx
library.cxx
C++ types that represent the given vocabulary as well as Boost
- archive insertion and extraction operations. These are generated
- by the XSD compiler from library.xsd. The --hxx-prologue-file
- option is used to insert the contents of the library-prologue.hxx
- file into the generated header file. The --generate-insertion and
- --generate-extraction options are used to generate the insertion
- and extraction operations for text_oarchive and text_iarchive
- types.
+ archive insertion and extraction operations.
+
+ These files are generated by the XSD compiler from library.xsd
+ using the following command line:
+
+ xsd cxx-tree --generate-ostream \
+ --hxx-prologue-file=library-prologue.hxx \
+ --generate-insertion 'boost::archive::text_oarchive' \
+ --generate-extraction 'boost::archive::text_iarchive' \
+ library.xsd
+
+ The --hxx-prologue-file option is used to insert the contents of
+ the library-prologue.hxx file into the generated header file. The
+ --generate-insertion and --generate-extraction options are used to
+ generate the insertion and extraction operations for text_oarchive
+ and text_iarchive types.
driver.cxx
Driver for the example. It first calls one of the parsing functions
@@ -44,6 +53,16 @@ driver.cxx
representation as well as the content of the object model before
saving it to text_oarchive and after loading it from text_iarchive.
-To run the example on the sample XML instance document simply execute:
+To compile and link the example manually from the command line we can use
+the following commands (replace 'c++' with your C++ compiler name):
+
+c++ -DXSD_CXX11 -c library.cxx
+c++ -DXSD_CXX11 -c driver.cxx
+c++ -o driver driver.o library.o -lboost_serialization -lxerces-c
+
+Note that we need to define the XSD_CXX11 preprocessor macro since the
+source code includes libxsd headers directly.
+
+To run the example on the sample XML instance document execute:
-$ ./driver library.xml
+./driver library.xml
diff --git a/xsd-examples/cxx/tree/binary/boost/buildfile b/xsd-examples/cxx/tree/binary/boost/buildfile
index 4306273..17e67fb 100644
--- a/xsd-examples/cxx/tree/binary/boost/buildfile
+++ b/xsd-examples/cxx/tree/binary/boost/buildfile
@@ -13,9 +13,7 @@ exe{driver}: xml{library}: test.input = true
<{hxx ixx cxx}{library}>: xsd{library} hxx{library-prologue} $xsd
{{
- diag xsd ($<[0]) # @@ TMP
-
- $xsd cxx-tree --std c++11 \
+ $xsd cxx-tree \
--generate-inline \
--generate-ostream \
--hxx-prologue-file $path($<[1]) \
diff --git a/xsd-examples/cxx/tree/binary/cdr/README b/xsd-examples/cxx/tree/binary/cdr/README
index 914d27c..5e3b7ba 100644
--- a/xsd-examples/cxx/tree/binary/cdr/README
+++ b/xsd-examples/cxx/tree/binary/cdr/README
@@ -17,11 +17,19 @@ library.xml
library.hxx
library.cxx
C++ types that represent the given vocabulary as well as data
- representation stream insertion and extraction operations. These
- are generated by XSD from library.xsd. Note that the
- --generate-insertion and --generate-extraction options are used
- to generate the insertion and extraction operations for ACE CDR
- stream.
+ representation stream insertion and extraction operations.
+
+ These files are generated by the XSD compiler from library.xsd using
+ the following command line:
+
+ xsd cxx-tree --generate-ostream \
+ --generate-insertion 'ACE_OutputCDR' \
+ --generate-extraction 'ACE_InputCDR' \
+ --generate-comparison library.xsd
+
+ Note that the --generate-insertion and --generate-extraction options
+ are used to generate the insertion and extraction operations for ACE
+ CDR stream.
driver.cxx
Driver for the example. It first calls one of the parsing functions
@@ -31,6 +39,13 @@ driver.cxx
representation as well as the content of the object model before
saving it to the CDR stream and after loading it from the CDR stream.
-To run the example on the sample XML instance document simply execute:
+To compile and link the example manually from the command line we can use
+the following commands (replace 'c++' with your C++ compiler name):
+
+c++ -c library.cxx
+c++ -c driver.cxx
+c++ -o driver driver.o library.o -lACE -lxerces-c
+
+To run the example on the sample XML instance document execute:
-$ ./driver library.xml
+./driver library.xml
diff --git a/xsd-examples/cxx/tree/binary/cdr/buildfile b/xsd-examples/cxx/tree/binary/cdr/buildfile
index d78a56a..ccff659 100644
--- a/xsd-examples/cxx/tree/binary/cdr/buildfile
+++ b/xsd-examples/cxx/tree/binary/cdr/buildfile
@@ -13,9 +13,7 @@ exe{driver}: xml{library}: test.input = true
<{hxx ixx cxx}{library}>: xsd{library} $xsd
{{
- diag xsd ($<[0]) # @@ TMP
-
- $xsd cxx-tree --std c++11 \
+ $xsd cxx-tree \
--generate-inline \
--generate-ostream \
--generate-insertion 'ACE_OutputCDR' \
diff --git a/xsd-examples/cxx/tree/binary/xdr/README b/xsd-examples/cxx/tree/binary/xdr/README
index e02b2b9..2096064 100644
--- a/xsd-examples/cxx/tree/binary/xdr/README
+++ b/xsd-examples/cxx/tree/binary/xdr/README
@@ -17,10 +17,16 @@ library.xml
library.hxx
library.cxx
C++ types that represent the given vocabulary as well as data
- representation stream insertion and extraction operations. These
- are generated by XSD from library.xsd. Note that the
- --generate-insertion and --generate-extraction options are used
- to generate the insertion and extraction operations for XDR
+ representation stream insertion and extraction operations.
+
+ These files are generated by the XSD compiler from library.xsd using
+ the following command line:
+
+ xsd cxx-tree --generate-ostream --generate-comparison \
+ --generate-insertion 'XDR' --generate-extraction 'XDR' library.xsd
+
+ Note that the --generate-insertion and --generate-extraction options
+ are used to generate the insertion and extraction operations for XDR
stream.
driver.cxx
@@ -31,6 +37,13 @@ driver.cxx
it to the XDR representation and after loading it from the XDR
representation.
-To run the example on the sample XML instance document simply execute:
+To compile and link the example manually from the command line we can use
+the following commands (replace 'c++' with your C++ compiler name):
+
+c++ -c library.cxx
+c++ -c driver.cxx
+c++ -o driver driver.o library.o -ltirpc -lxerces-c
+
+To run the example on the sample XML instance document execute:
-$ ./driver library.xml
+./driver library.xml
diff --git a/xsd-examples/cxx/tree/binary/xdr/buildfile b/xsd-examples/cxx/tree/binary/xdr/buildfile
index 92f0c48..0fbab13 100644
--- a/xsd-examples/cxx/tree/binary/xdr/buildfile
+++ b/xsd-examples/cxx/tree/binary/xdr/buildfile
@@ -15,9 +15,7 @@ exe{driver}: xml{library}: test.input = true
<{hxx ixx cxx}{library}>: xsd{library} $xsd
{{
- diag xsd ($<[0]) # @@ TMP
-
- $xsd cxx-tree --std c++11 \
+ $xsd cxx-tree \
--generate-inline \
--generate-ostream \
--generate-insertion 'XDR' \