From 9c060886adda2886c66b5ade063c2a8bda11cd1e Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 15 Oct 2021 22:33:19 +0300 Subject: Release version 1.1.0+8 Mark headers as importable in buildfiles Drop @ from bin.lib.version in libhello/buildfile Add commented out c/cxx/cc.internal.scope to root.build Make glue buildfile to read packages.manifest Fortify tests against NDEBUG Add BMI extensions to and ignore compressed .i and .i in .gitignore Bump project requirements for build2 to 0.14.0- --- buildfile | 3 ++- libhello/.gitignore | 5 +++++ libhello/build/root.build | 8 ++++++++ libhello/libhello/buildfile | 10 ++++++---- libhello/manifest | 6 +++--- libhello/tests/basics/driver.cxx | 4 +++- libhello/tests/build/root.build | 4 ++++ 7 files changed, 31 insertions(+), 9 deletions(-) diff --git a/buildfile b/buildfile index aad5e21..c3c8909 100644 --- a/buildfile +++ b/buildfile @@ -1,5 +1,6 @@ # Glue buildfile that "pulls" all the packages in the project. # -import pkgs = */ +import pkgs = [dir_paths] $process.run_regex(\ + cat $src_root/packages.manifest, '\s*location\s*:\s*(\S+)\s*', '\1') ./: $pkgs diff --git a/libhello/.gitignore b/libhello/.gitignore index cece09c..6435b97 100644 --- a/libhello/.gitignore +++ b/libhello/.gitignore @@ -3,9 +3,14 @@ *.d *.t *.i +*.i.* *.ii +*.ii.* *.o *.obj +*.gcm +*.pcm +*.ifc *.so *.dll *.a diff --git a/libhello/build/root.build b/libhello/build/root.build index 9c83a8a..ae3d2a6 100644 --- a/libhello/build/root.build +++ b/libhello/build/root.build @@ -1,3 +1,7 @@ +# Uncomment to suppress warnings coming from external libraries. +# +#cxx.internal.scope = current + cxx.std = latest using cxx @@ -7,6 +11,10 @@ ixx{*}: extension = ixx txx{*}: extension = txx cxx{*}: extension = cxx +# Assume headers are importable unless stated otherwise. +# +hxx{*}: cxx.importable = true + # The test target for cross-testing (running tests under Wine, etc). # test.target = $cxx.target diff --git a/libhello/libhello/buildfile b/libhello/libhello/buildfile index 6e6c7a3..833d23d 100644 --- a/libhello/libhello/buildfile +++ b/libhello/libhello/buildfile @@ -13,12 +13,14 @@ hxx{version}: in{version} $src_root/manifest clean = ($src_root != $out_root) } +hxx{export}@./: cxx.importable = false + # Build options. # cxx.poptions =+ "-I$out_root" "-I$src_root" -obja{*}: cxx.poptions += -DLIBHELLO_STATIC_BUILD -objs{*}: cxx.poptions += -DLIBHELLO_SHARED_BUILD +{hbmia obja}{*}: cxx.poptions += -DLIBHELLO_STATIC_BUILD +{hbmis objs}{*}: cxx.poptions += -DLIBHELLO_SHARED_BUILD # Export options. # @@ -36,9 +38,9 @@ libs{hello}: cxx.export.poptions += -DLIBHELLO_SHARED # for details on the version.* variable values. # if $version.pre_release - lib{hello}: bin.lib.version = @"-$version.project_id" + lib{hello}: bin.lib.version = "-$version.project_id" else - lib{hello}: bin.lib.version = @"-$version.major.$version.minor" + lib{hello}: bin.lib.version = "-$version.major.$version.minor" # Install into the libhello/ subdirectory of, say, /usr/include/ # recreating subdirectories. diff --git a/libhello/manifest b/libhello/manifest index d68f9a9..2c29bfb 100644 --- a/libhello/manifest +++ b/libhello/manifest @@ -1,6 +1,6 @@ : 1 name: libhello -version: 1.1.0+7 +version: 1.1.0+8 project: hello summary: The "Hello World" example library license: MIT ; MIT License. @@ -14,7 +14,7 @@ src-url: https://git.build2.org/cgit/hello/libhello/tree/libhello email: users@build2.org build-warning-email: builds@build2.org builds: all -depends: * build2 >= 0.11.0 -depends: * bpkg >= 0.11.0 +depends: * build2 >= 0.14.0- +depends: * bpkg >= 0.14.0- depends: libformat ^1.0.0 depends: libprint ^1.0.0 diff --git a/libhello/tests/basics/driver.cxx b/libhello/tests/basics/driver.cxx index 24c29a1..295c8f6 100644 --- a/libhello/tests/basics/driver.cxx +++ b/libhello/tests/basics/driver.cxx @@ -1,9 +1,11 @@ -#include #include #include #include +#undef NDEBUG +#include + int main () { using namespace std; diff --git a/libhello/tests/build/root.build b/libhello/tests/build/root.build index a67b2fe..8fafbfe 100644 --- a/libhello/tests/build/root.build +++ b/libhello/tests/build/root.build @@ -7,6 +7,10 @@ ixx{*}: extension = ixx txx{*}: extension = txx cxx{*}: extension = cxx +# Assume headers are importable unless stated otherwise. +# +hxx{*}: cxx.importable = true + # Every exe{} in this subproject is by default a test. # exe{*}: test = true -- cgit v1.1