From d123226f8324813cb1698888879f6f1060652717 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Wed, 31 Aug 2016 22:53:55 +0300 Subject: Build infrastructure update --- brep/buildfile | 8 ++++++++ build/bootstrap.build | 18 +++++++++++++++--- build/root.build | 6 ------ load/buildfile | 8 +++++++- manifest | 2 +- migrate/buildfile | 8 +++++++- mod/buildfile | 8 +++++++- 7 files changed, 45 insertions(+), 13 deletions(-) diff --git a/brep/buildfile b/brep/buildfile index d34a6e5..7c70ceb 100644 --- a/brep/buildfile +++ b/brep/buildfile @@ -25,6 +25,14 @@ lib{brep}: \ $int_libs \ sql{package package-extra} +# 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{brep}: bin.lib.version = @-$version +else + lib{brep}: bin.lib.version = @-$abi_major.$abi_minor + lib{brep}: cxx.export.poptions = -I$out_root -I$src_root lib{brep}: cxx.export.libs = $int_libs diff --git a/build/bootstrap.build b/build/bootstrap.build index 890bf51..86abdbd 100644 --- a/build/bootstrap.build +++ b/build/bootstrap.build @@ -3,12 +3,24 @@ # license : MIT; see accompanying LICENSE file project = brep + +using build@0.4.0-a1 + version = 0.4.0-a1 -using build@0.3.0 +abi_major = 0 +abi_minor = 4 +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 - -dist.package = $project-$version diff --git a/build/root.build b/build/root.build index 5f607ff..3987205 100644 --- a/build/root.build +++ b/build/root.build @@ -24,12 +24,6 @@ if! $cli.loaded cli{*}: extension = cli } -# Include generated cli files into the distribution. -# -hxx{*options}: dist = true -ixx{*options}: dist = true -cxx{*options}: dist = true - # All exe{} in tests/ are, well, tests. # tests/exe{*}: test = true diff --git a/load/buildfile b/load/buildfile index db5a5ac..096da43 100644 --- a/load/buildfile +++ b/load/buildfile @@ -15,9 +15,15 @@ exe{brep-load}: \ {hxx cxx}{ types-parsers } \ ../brep/lib{brep} $libs +# Generated options parser. +# +{hxx ixx cxx}{load-options}: cli{load} + cli.options += -I $src_root --include-with-brackets --include-prefix load \ --guard-prefix LOAD --generate-specifier --page-usage print_ --ansi-color \ --cxx-prologue "#include " \ --long-usage -{hxx ixx cxx}{load-options}: cli{load} +# Include generated cli files into the distribution. +# +{hxx ixx cxx}{load-options}: dist = true diff --git a/manifest b/manifest index 924132a..7faf71d 100644 --- a/manifest +++ b/manifest @@ -8,7 +8,7 @@ description-file: README changes-file: NEWS url: https://build2.org email: users@build2.org -requires: c++11 +requires: c++14 requires: build2 >= 0.4.0 requires: postgresql >= 9.0 requires: apache2; Including development files (httpd.h header, etc). diff --git a/migrate/buildfile b/migrate/buildfile index 2bdbe9e..7fb2cf6 100644 --- a/migrate/buildfile +++ b/migrate/buildfile @@ -13,8 +13,14 @@ exe{brep-migrate}: \ {hxx ixx cxx}{ migrate-options } \ ../brep/lib{brep} $libs +# Generated options parser. +# +{hxx ixx cxx}{migrate-options}: cli{migrate} + cli.options += -I $src_root --include-with-brackets --include-prefix migrate \ --guard-prefix MIGRATE --generate-specifier --page-usage print_ --ansi-color \ --long-usage -{hxx ixx cxx}{migrate-options}: cli{migrate} +# Include generated cli files into the distribution. +# +{hxx ixx cxx}{migrate-options}: dist = true diff --git a/mod/buildfile b/mod/buildfile index 79d86e0..799ed5d 100644 --- a/mod/buildfile +++ b/mod/buildfile @@ -47,6 +47,10 @@ mod{brep}: \ {hxx ixx txx}{*}: install = false ../web/{hxx ixx txx}{*}: install = false +# Generated options parser. +# +{hxx ixx cxx}{options}: cli{options} + # Set option prefix to the empty value to handle all unknown request parameters # uniformly with a single catch block. # @@ -56,4 +60,6 @@ cli.options += --std c++11 -I $src_root --include-with-brackets \ --cli-namespace brep::cli --generate-file-scanner --suppress-usage \ --generate-modifier --generate-description --option-prefix "" -{hxx ixx cxx}{options}: cli{options} +# Include generated cli files into the distribution. +# +{hxx ixx cxx}{options}: dist = true -- cgit v1.1