summaryrefslogtreecommitdiff
path: root/libmysqlclient/build
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2019-04-05 10:30:58 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2019-04-05 17:53:59 +0300
commit72e7f011b29998d8a3e15eb5b381ef962af5fe5b (patch)
tree9fd87a0c6f545552849f466b20d3969a21e21e15 /libmysqlclient/build
parent4e0bcdb33411afb02d60b72cbffa278344a572a6 (diff)
Upgrade to 8.0.15
Diffstat (limited to 'libmysqlclient/build')
-rw-r--r--libmysqlclient/build/.gitignore3
-rw-r--r--libmysqlclient/build/bootstrap.build41
-rw-r--r--libmysqlclient/build/export.build10
-rw-r--r--libmysqlclient/build/root.build23
4 files changed, 77 insertions, 0 deletions
diff --git a/libmysqlclient/build/.gitignore b/libmysqlclient/build/.gitignore
new file mode 100644
index 0000000..4a730a3
--- /dev/null
+++ b/libmysqlclient/build/.gitignore
@@ -0,0 +1,3 @@
+config.build
+root/
+bootstrap/
diff --git a/libmysqlclient/build/bootstrap.build b/libmysqlclient/build/bootstrap.build
new file mode 100644
index 0000000..dee51fd
--- /dev/null
+++ b/libmysqlclient/build/bootstrap.build
@@ -0,0 +1,41 @@
+# file : build/bootstrap.build
+# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd
+# license : GPLv2 with Universal FOSS Exception; see accompanying LICENSE file
+
+project = libmysqlclient
+
+using version
+using config
+using dist
+using test
+using install
+
+# The MySQL client library ABI version number has the <major>.<minor>.<patch>
+# form. The major number is increased for backwards-incompatible API changes,
+# the minor number for backwards-compatible ones (for example, for adding a new
+# function), and the patch number is typically increased for each package
+# release, being in a sense redundant. Increase of the version component resets
+# the rightmost ones to zero. See also:
+#
+# http://mysqlserverteam.com/the-client-library-part-2-the-version-number/
+#
+# There is no way to deduce the ABI version from the release version, so we
+# obtain the ABI version from the SHARED_LIB_MAJOR_VERSION variable value in
+# upstream/cmake/mysql_version.cmake for each package release. Also, while at
+# it, check that the protocol version is still correct (the PROTOCOL_VERSION
+# variable).
+#
+# See also how Debian/Fedora package libmysqlclient if trying to wrap your head
+# around this mess.
+#
+if ($version.major == 8 && $version.minor == 0 && $version.patch == 15)
+{
+ # @@ Should we also use the ABI minor version to make sure the library is
+ # also forward-compatible?
+ #
+ abi_version = 21
+
+ protocol_version = 10
+}
+else
+ fail "increment the ABI version?"
diff --git a/libmysqlclient/build/export.build b/libmysqlclient/build/export.build
new file mode 100644
index 0000000..390d864
--- /dev/null
+++ b/libmysqlclient/build/export.build
@@ -0,0 +1,10 @@
+# file : build/export.build
+# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd
+# license : GPLv2 with Universal FOSS Exception; see accompanying LICENSE file
+
+$out_root/
+{
+ include mysql/
+}
+
+export $out_root/mysql/$import.target
diff --git a/libmysqlclient/build/root.build b/libmysqlclient/build/root.build
new file mode 100644
index 0000000..04449b6
--- /dev/null
+++ b/libmysqlclient/build/root.build
@@ -0,0 +1,23 @@
+# file : build/root.build
+# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd
+# license : GPLv2 with Universal FOSS Exception; see accompanying LICENSE file
+
+using in
+
+using c
+
+h{*}: extension = h
+c{*}: extension = c
+
+cxx.std = latest
+
+using cxx
+
+hxx{*}: extension = h
+cxx{*}: extension = cc
+
+if ($c.class == 'msvc')
+{
+ cc.poptions += -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS
+ cc.coptions += /wd4251 /wd4275 /wd4800
+}