aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README62
1 files changed, 38 insertions, 24 deletions
diff --git a/README b/README
index 6dcb3ba..25c88b4 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
This archive contains pre-configured CodeSynthesis XSD source code
-with all its dependencies (except Xerces-C++ and Boost) as well as
-a build script that builds the XSD compiler in non-interactive mode
-(that is, without asking any questions).
+with all its dependencies (except Xerces-C++ and Boost). It allows
+you to build the XSD compiler in non-interactive mode (that is,
+without answering any configuration questions).
The following GNU tools are required to build XSD. Any fairly recent
GNU/Linux distribution should have these already installed:
@@ -11,41 +11,45 @@ GNU m4 >= 1.4 (m4 --version) http://www.gnu.org/software/m4/
GNU make >= 3.81 (make --version) http://www.gnu.org/software/make/
GNU g++ >= 3.4.3 (g++ --version) http://gcc.gnu.org/
-The build script expects you to have the Xerces-C++ (2.6.0 or later)
+The build system expects you to have the Xerces-C++ (2.6.0 or later)
as well as Boost filesystem and regex (1.33.1 or later) libraries
-built and installed in a location where the g++ compiler looks by
-default (normally /usr/lib/ and /usr/local/lib/). Alternatively,
-you can install them into the stage/ directory in this package
-or provide include (-I) and library (-L) paths via the CPPFLAGS
-and LDFLAGS variables, respectively.
+built and installed in a location where the C++ compiler looks by
+default (normally /usr/lib/ and /usr/local/lib/). Alternatively, you
+can provide include (-I) and library (-L) paths for this packages via
+the CPPFLAGS and LDFLAGS variables, respectively.
-The script supports the following standard variables:
+The build system supports the following variables:
-CXX (defaults to g++ if not set)
+CXX (defaults to g++ if not set)
CPPFLAGS
CXXFLAGS
LDFALGS
LIBS
-MAKEFLAGS
+BOOST_LIB_SUFFIX
For example:
-$ CXX=g++-4.2 CXXFLAGS=-O3 MAKEFLAGS=-j4 ./build.sh
+$ make CXX=g++-4.2 CXXFLAGS=-O3 -j 4
+
+The BOOST_LIB_SUFFIX variable allows you to specify the optional
+Boost library suffix. For example, if your Boost library names are
+in the libboost_regex-gcc41-mt-d.so format, then you will need to
+set BOOST_LIB_SUFFIX to -gcc41-mt-d.
If you would like to see the full compiler/linker/etc., command lines,
-you can add verbose=1 to MAKEFLAGS, for example:
+you can add verbose=1 to the make command line:
-MAKEFLAGS="verbose=1" ./build.sh
+$ make verbose=1
-After the build, the XSD compiler can be found in the stage/bin/
-directory and the runtime headers in the stage/include/xsd/
-directory. You can install the XSD compiler, runtime library, and
-documentation with the install target, for example:
+After the build is complete, the XSD compiler can be found in the
+xsd/xsd/ directory and the runtime headers in the xsd/libxsd/ directory.
+You can install the XSD compiler, runtime library, and documentation
+with the install target, for example:
-$ MAKEFLAGS="install_prefix=/usr" ./build.sh install
+$ make install_prefix=/usr install
-You can fine-tune the installation locations with the following
-make variables (should be set in MAKEFLAGS):
+You can fine-tune the installation locations with the following make
+variables:
install_prefix default is /usr/local
install_data_prefix default is install_prefix
@@ -62,9 +66,19 @@ install_doc_dir default is install_data_dir/doc
install_man_dir default is install_data_dir/man
install_info_dir default is install_data_dir/info
-The build script also supports the clean target:
+You can also create a distribution package with the XSD compiler binary,
+source code for the runtime library and examples, as well as the
+documentation using the dist and dist-win targets, for example:
+
+$ make dist_prefix=./xsd-x.y.z dist
+
+Or, for Windows:
+
+$ make dist_prefix=./xsd-x.y.z dist-win
+
+The build system also supports the clean target:
-$ ./build.sh clean
+$ make clean
Send bug reports or any other feedback to the xsd-users@codesynthesis.com
mailing list.