[build2-announce] build2 0.10.0 released

Boris Kolpackov boris at codesynthesis.com
Tue Mar 19 13:05:06 UTC 2019

We have released build2 toolchain version 0.10.0. Coming shortly after
0.9.0, this is more of a maintenance release that nevertheless includes
a good number of new features. It was also an opportunity to hone our
release process with the overall goal of increasing the release cadence.

While the corresponding NEWS file entries are included below, a more
detailed discussion of the major new features is available in the
release notes:


This release has been tested on Windows, Linux, Mac OS, and FreeBSD with
GCC, Clang (both vanilla and Apple's), MinGW GCC, and MSVC (14, 15, and
16 RC1). A big thank you to everyone who helped test pre-release snapshots.

Installation instructions:


Download directory:


SHA256 checksums:

08f5ec72123efff4913861c4ba3cfc98f3139cacd57850a84ac54b98ee19fada *build2-install-0.10.0.sh
45a2a5e316ab63cd4041d18ee90832e8959dbca1d803318856ad263adf36bbe7 *build2-install-msvc-0.10.0.bat
4ca0cd51ba1a999c9a7ba27e550c8910ec6f66b957ed86704f62287c32d99bd7 *build2-install-mingw-0.10.0.bat

6e97837b14a1ce3d20d92185dbde4ba1bf8a01606a4dfa3525ace5e0f584072a *build2-toolchain-0.10.0.tar.xz
35aca2549a2a6a1810ab3433165c902ddea998dac8ed145752069f2b03b8f84f *build2-toolchain-0.10.0.tar.gz

36c784c55ef055f02ce0c6ea980a4919af7273c3e3c5b06640d66e637426d293 *build2-baseutils-0.10.0-x86_64-windows.zip
e42590b426ddbee8bc2cf8dbe5f92cb4dbd926f25af46254766540eabfd10d67 *build2-mingw-0.10.0-x86_64-windows.tar.xz

Certificate fingerprint for cppget.org:


NEWS file entries:

build2 version 0.10.0

 * Support for an alternative build file/directory naming scheme.

   Now the build/*.build, buildfile, and .buildignore filesystem entries in
   a project can alternatively (but consistently) be called build2/*.build2,
   build2file, and .build2ignore. See a note at the beginning of the Project
   Structure section in the manual for details (motivation, restrictions,

 * Support for multiple variable overrides.

   Now we can do:

   $ b config.cxx.coptions=-O3 config.cxx.coptions=-O0

   Or even:

   $ b config.cxx.coptions=-O3 config.cxx.coptions+=-g

 * Support for MSVC 16 (2019).

 * Support for automatic switching to option files (AKA response files) on
   Windows if the linker command line is too long.

   This covers both MSVC link.exe/lib.exe and MinGW gcc.exe/ar.exe.

bdep version 0.10.0

  * New bdep-new(1) --subdirectory mode.

    This mode can be used to create a new source subdirectory in an already
    existing project.

  * Support for more granular C++ source file extension specification in

    For example:

    $ bdep new -t lib -l c++,hxx=h,cxx=cpp libhello  # .h & .cpp
    $ bdep new -t lib -l c++,extension=?++           # .h++, .c++, etc

    See the bdep-new(1) man pages for details.

  * Support for suppressing the generation of the library version header.

    Specifically, the bdep-new(1) --type|-t=lib option now has the new
    no-version sub-option.

  * Support for the alternative build file/directory naming scheme.

    Specifically, the bdep-new(1) --type|-t option now has the new alt-naming
    sub-option that can be used to create projects with the alternative

  * New bdep-release(1) --[no]-edit options.

    Now in all the bdep-release modes that perform a commit, if the project's
    repository index already contains other changes, then the commit message
    is automatically opened for editing unless --no-edit is specified. The
    editing of the commit message in the absence of other changes can be
    requested with the --edit option.

More information about the announce mailing list