summaryrefslogtreecommitdiff
path: root/libcrypto/build/bootstrap.build
diff options
context:
space:
mode:
Diffstat (limited to 'libcrypto/build/bootstrap.build')
-rw-r--r--libcrypto/build/bootstrap.build37
1 files changed, 37 insertions, 0 deletions
diff --git a/libcrypto/build/bootstrap.build b/libcrypto/build/bootstrap.build
new file mode 100644
index 0000000..12b55b2
--- /dev/null
+++ b/libcrypto/build/bootstrap.build
@@ -0,0 +1,37 @@
+# file : build/root.build
+# copyright : Copyright (c) 2018-2019 Code Synthesis Ltd
+# license : OpenSSL and SSLeay Licenses; see accompanying LICENSE file
+
+project = libcrypto
+
+using version
+using config
+using test
+using install
+using dist
+
+# As of 1.0.0 the OpenSSL version has the <major>.<minor>.<fix>[<patch>] form,
+# where optional <patch> is a letter. The patch releases contain only bug and
+# security fixes. Fix releases are likely to contain new features, but don't
+# break ABI compatibility. This versioning scheme will change with the next
+# major release 3.0.0 (2.0.0 will be skipped) to just <major>.<minor>.<patch>,
+# with the ABI compatibility guaranteed across the minor releases. See also:
+#
+# https://www.openssl.org/policies/releasestrat.html
+# https://www.openssl.org/blog/blog/2018/11/28/version/
+#
+# The upstream version 1.1.1a, that we packaged initially, is not a semantic
+# version. Not to mess with such a version, it seems reasonable for us to
+# start with 1.1.1-a.0.z, release as 1.1.1 and, if required, followup with
+# revisions, even for further letter-based upstream patches (that contain
+# nothing more than just fixes). We also mention the "lettered" release in
+# the package summary for information.
+#
+# There is no way to deduce the ABI version from the release version, so we
+# obtain it from the SHLIB_VERSION_NUMBER macro definition in
+# ../libcrypto/openssl/opensslv.h.
+#
+if ($version.major == 1 && $version.minor == 1 && $version.patch == 1)
+ abi_version = '1.1'
+else
+ fail 'increment the ABI version?'