summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
Diffstat (limited to 'build')
-rw-r--r--build/bootstrap.build35
-rw-r--r--build/root.build4
2 files changed, 29 insertions, 10 deletions
diff --git a/build/bootstrap.build b/build/bootstrap.build
index e6b071f..6e801ed 100644
--- a/build/bootstrap.build
+++ b/build/bootstrap.build
@@ -11,15 +11,38 @@ using build@0.4.0-a1
# lot of people in the process) we will always have three components and will
# handle an occasional bugfix release with a revision.
#
+# See also: https://www.sqlite.org/versionnumbers.html
+#
version = 3.14.1
-
-abi_major = 3
-abi_minor = 14
-abi_patch = 1
-abi_prerelease = false
-
revision = 0
+# The SQLite documentation says that as long as the major version stays the
+# same, then it is backwards-compatible. And since we have the major version
+# already embedded into the library name, it doesn't make much sense to repeat
+# it.
+#
+# Note, however, that the binary-compatible API doesn't mean all the builds of
+# SQLite are binary-compatible since they can be built with different sets of
+# enabled/disabled functionality. In fact, one easy way to break backwards-
+# compatibility is to disable some feature that was previously enabled.
+#
+# So what we seem to need is not an ABI version but an ABI id that identifies
+# a specific set of features. And this will not be easy/possible if we want
+# to use platform-native versioning (e.g., libsqlite3.so.<num> on Linux). The
+# only way to make this work would be to "reserve" some range for build2-based
+# builds (e.g., 1000-2000 so that we will have libsqlite3.so.1000; that sure
+# looks weird).
+#
+# Another alternative is to use platform-neutral versioning by embedding the
+# id into the library name, similar to '3'. This is probably better since
+# there is no "newer" semantics here. While ideally we should use something
+# like -build2-0 (i.e., "build2 build, id 0"), that will look rather ugly. So
+# we will use just the number but start with -1 in order not to clash with .0
+# used by the autotools build (which becomes -0 on, e.g., Windows; I don't
+# believe it will ever be incremented though).
+#
+abi_major = 1
+
dist.package = $project-$version
if ($revision != 0)
diff --git a/build/root.build b/build/root.build
index 51c13ed..d28a8bf 100644
--- a/build/root.build
+++ b/build/root.build
@@ -5,7 +5,3 @@ using c
h{*}: extension = h
c{*}: extension = c
-
-# All exe{} in test/ are, well, tests.
-#
-test/exe{*}: test = true