summaryrefslogtreecommitdiff
path: root/libxerces-c/build
diff options
context:
space:
mode:
Diffstat (limited to 'libxerces-c/build')
-rw-r--r--libxerces-c/build/.gitignore3
-rw-r--r--libxerces-c/build/bootstrap.build35
-rw-r--r--libxerces-c/build/export.build9
-rw-r--r--libxerces-c/build/root.build26
4 files changed, 73 insertions, 0 deletions
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 <version>.<release>.<modification> 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