aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2016-08-31 19:27:53 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2016-08-31 19:27:53 +0300
commit39c76ef8c9b664c94d5d7b789457fa4045fdce04 (patch)
treeeb637b473fa4f5faa41de8e4a422a977f04b2960
parentb2b169b6a5d92bb662637721a2bafa73d88bce35 (diff)
Build infrastructure update
-rw-r--r--build/bootstrap.build20
-rw-r--r--build/root.build18
-rw-r--r--manifest2
-rw-r--r--odb/sqlite/buildfile21
-rw-r--r--odb/sqlite/details/.gitignore1
-rw-r--r--tests/build/.gitignore1
-rw-r--r--tests/build/root.build5
7 files changed, 48 insertions, 20 deletions
diff --git a/build/bootstrap.build b/build/bootstrap.build
index a7c7eed..351fe40 100644
--- a/build/bootstrap.build
+++ b/build/bootstrap.build
@@ -3,16 +3,24 @@
# license : GNU GPL v2; see accompanying LICENSE file
project = libodb-sqlite
-version = 2.5.0-a10
-revision = 0
using build@0.4.0-a1
-using config
-using dist
-using test
-using install
+
+version = 2.5.0-a10
+
+abi_major = 2
+abi_minor = 5
+abi_patch = 0
+abi_prerelease = true
+
+revision = 0
dist.package = $project-$version
if ($revision != 0)
dist.package += +$revision
+
+using config
+using dist
+using test
+using install
diff --git a/build/root.build b/build/root.build
index fb0de84..5898b63 100644
--- a/build/root.build
+++ b/build/root.build
@@ -5,3 +5,21 @@
cxx.std = 11
using cxx
+
+hxx{*}: extension = hxx
+ixx{*}: extension = ixx
+txx{*}: extension = txx
+cxx{*}: extension = cxx
+
+cxx.poptions =+ -I$out_root -I$src_root
+
+# Load the cli module but only if it's available. This way a distribution that
+# includes pre-generated files can be built without installing cli.
+#
+using? cli
+
+if! $cli.loaded
+{
+ define cli: file
+ cli{*}: extension = cli
+}
diff --git a/manifest b/manifest
index 9003733..3db30d9 100644
--- a/manifest
+++ b/manifest
@@ -10,6 +10,6 @@ changes-file: NEWS
url: http://www.codesynthesis.com/products/odb/
email: odb-users@codesynthesis.com
requires: c++11
-requires: build2 >= 0.4.0-a1
+requires: build2 >= 0.4.0
depends: libsqlite3 >= 3.6.18
depends: libodb == 2.5.0-a10
diff --git a/odb/sqlite/buildfile b/odb/sqlite/buildfile
index d5f1d13..d32d3b4 100644
--- a/odb/sqlite/buildfile
+++ b/odb/sqlite/buildfile
@@ -51,7 +51,15 @@ details/build2/{h }{ config } \
details/build2/{h }{ config-vc } \
$int_libs
-cxx.poptions =+ -I$out_root -I$src_root -DLIBODB_SQLITE_BUILD2
+# For pre-releases use the complete version to make sure they cannot be used
+# in place of another pre-release or the final version.
+#
+if $abi_prerelease
+ lib{odb-sqlite}: bin.lib.version = @-$version
+else
+ lib{odb-sqlite}: bin.lib.version = @-$abi_major.$abi_minor
+
+cxx.poptions =+ -DLIBODB_SQLITE_BUILD2
obja{*}: cxx.poptions += -DLIBODB_SQLITE_STATIC_BUILD
objs{*}: cxx.poptions += -DLIBODB_SQLITE_SHARED_BUILD
@@ -61,17 +69,6 @@ libs{odb-sqlite}: cxx.export.poptions += -DLIBODB_SQLITE_SHARED
lib{odb-sqlite}: cxx.export.libs = $int_libs
-# Load the cli module but only if it's available. This way a distribution that
-# includes pre-generated files can be built without installing cli.
-#
-using? cli
-
-if! $cli.loaded
-{
- define cli: file
- cli{*}: extension = cli
-}
-
details/:
{
{hxx ixx cxx}{options}: cli{options}
diff --git a/odb/sqlite/details/.gitignore b/odb/sqlite/details/.gitignore
new file mode 100644
index 0000000..c6e608b
--- /dev/null
+++ b/odb/sqlite/details/.gitignore
@@ -0,0 +1 @@
+options.?xx
diff --git a/tests/build/.gitignore b/tests/build/.gitignore
new file mode 100644
index 0000000..225c27f
--- /dev/null
+++ b/tests/build/.gitignore
@@ -0,0 +1 @@
+config.build
diff --git a/tests/build/root.build b/tests/build/root.build
index 9d11dd5..5dd8142 100644
--- a/tests/build/root.build
+++ b/tests/build/root.build
@@ -2,9 +2,12 @@
# copyright : Copyright (c) 2009-2015 Code Synthesis Tools CC
# license : GNU GPL v2; see accompanying LICENSE file
+cxx.std = 11
+
using cxx
-cxx.std = 11
+hxx{*}: extension = hxx
+cxx{*}: extension = cxx
# Every exe{} in this subproject is by default a test.
#