From fc2234b87f4ce29be0e556c6f3b085b749b7d71b Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 16 Apr 2020 18:15:45 +0300 Subject: Add implementation --- libxerces-c/build/.gitignore | 3 +++ libxerces-c/build/bootstrap.build | 35 +++++++++++++++++++++++++++++++++++ libxerces-c/build/export.build | 9 +++++++++ libxerces-c/build/root.build | 26 ++++++++++++++++++++++++++ 4 files changed, 73 insertions(+) create mode 100644 libxerces-c/build/.gitignore create mode 100644 libxerces-c/build/bootstrap.build create mode 100644 libxerces-c/build/export.build create mode 100644 libxerces-c/build/root.build (limited to 'libxerces-c/build') diff --git a/libxerces-c/build/.gitignore b/libxerces-c/build/.gitignore new file mode 100644 index 0000000..4a730a3 --- /dev/null +++ b/libxerces-c/build/.gitignore @@ -0,0 +1,3 @@ +config.build +root/ +bootstrap/ diff --git a/libxerces-c/build/bootstrap.build b/libxerces-c/build/bootstrap.build new file mode 100644 index 0000000..ef8f579 --- /dev/null +++ b/libxerces-c/build/bootstrap.build @@ -0,0 +1,35 @@ +# file : build/bootstrap.build +# license : Apache License 2.0; see accompanying LICENSE file + +project = libxerces-c + +using version +using config +using dist +using test +using install + +# The Xerces-C++ version has the .. form and +# follows the semver semantics. Specifically, the new versions and releases +# are issued when a certain number of bug fixes and new features are added +# and the modifications are issued when critical bugs are encountered. The +# releases and modifications may only contain the backward-compatible API +# changes. The ABI backward compatibility is only preserved for modifications. +# +# There is also the serialization format version number that can not be +# deduced from the package version. It is not documented which kind of package +# releases may increment this number, but based on its change history we can +# probably assume that this may not happen for modifications. Thus, we will +# check for its change (the XERCES_GRAMMAR_SERIALIZATION_LEVEL variable in +# configure.ac) only when the version or release number is incremented. +# +# See also: https://xerces.apache.org/xerces-c/faq-contributing-3.html +# +if ($version.major == 3 && $version.minor == 2) +{ + grammar_serialization_level = 7 # Serialization format version. + + abi_version = "$version.major.$version.minor" +} +else + fail "increment the serialization format version?" diff --git a/libxerces-c/build/export.build b/libxerces-c/build/export.build new file mode 100644 index 0000000..de1de82 --- /dev/null +++ b/libxerces-c/build/export.build @@ -0,0 +1,9 @@ +# file : build/export.build +# license : Apache License 2.0; see accompanying LICENSE file + +$out_root/ +{ + include xercesc/ +} + +export $out_root/xercesc/lib{xerces-c} diff --git a/libxerces-c/build/root.build b/libxerces-c/build/root.build new file mode 100644 index 0000000..92eb1cb --- /dev/null +++ b/libxerces-c/build/root.build @@ -0,0 +1,26 @@ +# file : build/root.build +# license : Apache License 2.0; see accompanying LICENSE file + +# We rely on C99 in macro deductions (see xercesc/config.h and +# xercesc/util/Xerces_autoconf_config.hpp for details). +# +c.std = 99 + +using c + +h{*}: extension = h +c{*}: extension = c + +cxx.std = latest + +using cxx + +hxx{*}: extension = hpp +txx{*}: extension = c +cxx{*}: extension = cpp + +if ($c.target.system == 'win32-msvc') + cc.poptions += -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS + +if ($c.class == 'msvc') + cc.coptions += /wd4251 /wd4275 /wd4800 -- cgit v1.1