build2/0.19.0-a.0.20260408083357.2ec0f2beaa31

[full]

build2 build system

This package contains the build2 build system.

build2 is an open source, cross-platform toolchain for building and packaging
C++ code. Its aim is a modern build system and dependency manager for the C++
language that provide a consistent, out of the box interface across multiple
platforms and compilers. For more information see:

https://build2.org/

See the NEWS file for the user-visible changes from the previous release.

See the LICENSE file for the distribution conditions.

See the INSTALL file... More
version 0.19.0-a.0.20260408083357.2ec0f2beaa31
license MIT
repository https://stage.build2.org/1
download build2-0.19.0-a.0.20260408083357.2ec0f2beaa31.tar.gz
sha256 deab61d4eaa04877c6e9098371c7e3cb2b16e811ccef34a711f05db6f48dd233
project build2
url build2.org
doc-url build2.org/doc.xhtml
src-url git.build2.org/cgit/build2/tree/
topics build systembuild toolchain

Depends (1)

libbutl [0.19.0-a.0.1 0.19.0-a.1)

Requires (1)

c++14

Builds

toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-static_O3
timestamp 2026-04-16 11:55:22 UTC (03 00:39:29 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-static_O3
timestamp 2026-04-16 11:53:34 UTC (03 00:41:17 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-O3
timestamp 2026-04-16 11:46:29 UTC (03 00:48:23 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-ndebug_O3
timestamp 2026-04-16 11:44:59 UTC (03 00:49:52 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_9_tsan-gcc_7.4
timestamp 2026-04-16 11:35:21 UTC (03 00:59:30 days ago)
result error (test-installed) | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++
timestamp 2026-04-16 11:35:13 UTC (03 00:59:38 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2026-04-16 11:26:40 UTC (03 01:08:11 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-static_O3
timestamp 2026-04-16 11:25:25 UTC (03 01:09:26 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-O3
timestamp 2026-04-16 11:18:50 UTC (03 01:16:01 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18
timestamp 2026-04-16 11:08:22 UTC (03 01:26:29 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2026-04-16 11:08:13 UTC (03 01:26:39 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21_libc++-static_O3
timestamp 2026-04-16 11:02:30 UTC (03 01:32:21 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_16-static_O3
timestamp 2026-04-16 11:00:47 UTC (03 01:34:04 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21_libc++-O3
timestamp 2026-04-16 10:59:48 UTC (03 01:35:03 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21_libc++
timestamp 2026-04-16 10:55:48 UTC (03 01:39:03 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_16-ndebug_O3
timestamp 2026-04-16 10:55:41 UTC (03 01:39:10 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22_libc++-static_O3
timestamp 2026-04-16 10:54:50 UTC (03 01:40:01 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-clang_21_msvc_18.3-static_O2
timestamp 2026-04-16 10:54:39 UTC (03 01:40:13 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-static_O3
timestamp 2026-04-16 10:54:05 UTC (03 01:40:46 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21-static_O3
timestamp 2026-04-16 10:52:23 UTC (03 01:42:28 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22_libc++-O3
timestamp 2026-04-16 10:51:43 UTC (03 01:43:08 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-clang_21_msvc_18.3-O2
timestamp 2026-04-16 10:51:33 UTC (03 01:43:18 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-w64-mingw32
tgt config windows_10-gcc_14.2_mingw_w64-static_O2
timestamp 2026-04-16 10:49:47 UTC (03 01:45:05 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-O3
timestamp 2026-04-16 10:49:29 UTC (03 01:45:22 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21-O3
timestamp 2026-04-16 10:49:01 UTC (03 01:45:50 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-msvc_18.3-static_O2
timestamp 2026-04-16 10:48:14 UTC (03 01:46:38 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_16-O3
timestamp 2026-04-16 10:47:29 UTC (03 01:47:22 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-clang_21_msvc_18.3
timestamp 2026-04-16 10:47:09 UTC (03 01:47:42 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22_libc++
timestamp 2026-04-16 10:46:56 UTC (03 01:47:55 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-w64-mingw32
tgt config windows_10-gcc_14.2_mingw_w64-O2
timestamp 2026-04-16 10:44:43 UTC (03 01:50:08 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-msvc_18.3-O2
timestamp 2026-04-16 10:44:15 UTC (03 01:50:36 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_21
timestamp 2026-04-16 10:43:41 UTC (03 01:51:10 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22-static_O3
timestamp 2026-04-16 10:42:24 UTC (03 01:52:27 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew
timestamp 2026-04-16 10:41:58 UTC (03 01:52:53 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22-O3
timestamp 2026-04-16 10:38:52 UTC (03 01:55:59 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_16
timestamp 2026-04-16 10:38:43 UTC (03 01:56:08 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.5
tgt config windows_10-msvc_18.3
timestamp 2026-04-16 10:37:57 UTC (03 01:56:54 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_ubuntu_24.04-gcc_13-bindist
timestamp 2026-04-16 10:37:26 UTC (03 01:57:26 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-w64-mingw32
tgt config windows_10-gcc_14.2_mingw_w64
timestamp 2026-04-16 10:37:09 UTC (03 01:57:43 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_22
timestamp 2026-04-16 10:32:49 UTC (03 02:02:02 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_15-static_O3
timestamp 2026-04-16 10:23:39 UTC (03 02:11:13 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_15-ndebug_O3
timestamp 2026-04-16 10:20:37 UTC (03 02:14:15 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.0
tgt config windows_10-msvc_14.3
timestamp 2026-04-16 10:18:14 UTC (03 02:16:37 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-freebsd15.0
tgt config freebsd_15-clang_19-static_O3
timestamp 2026-04-16 10:17:39 UTC (03 02:17:12 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_ubuntu_22.04-gcc_11-bindist
timestamp 2026-04-16 10:15:32 UTC (03 02:19:19 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_15-O3
timestamp 2026-04-16 10:15:11 UTC (03 02:19:40 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2026-04-16 10:15:05 UTC (03 02:19:47 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_fedora_42-gcc_15-bindist
timestamp 2026-04-16 10:14:51 UTC (03 02:20:01 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11_tsan-gcc_11.3
timestamp 2026-04-16 10:12:37 UTC (03 02:22:14 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-freebsd15.0
tgt config freebsd_15-clang_19-O3
timestamp 2026-04-16 10:12:35 UTC (03 02:22:17 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.1
tgt config windows_10-msvc_15.9
timestamp 2026-04-16 10:10:27 UTC (03 02:24:24 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11_tsan-clang_14.0
timestamp 2026-04-16 10:08:45 UTC (03 02:26:06 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_15
timestamp 2026-04-16 10:08:29 UTC (03 02:26:22 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-static_O3
timestamp 2026-04-16 10:07:55 UTC (03 02:26:56 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_ubuntu_16.04-clang_3.7_libc++
timestamp 2026-04-16 10:06:24 UTC (03 02:28:28 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_12-bindist
timestamp 2026-04-16 10:06:08 UTC (03 02:28:43 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_rhel_8-gcc_8-bindist
timestamp 2026-04-16 10:06:02 UTC (03 02:28:49 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11_asan-gcc_11.3
timestamp 2026-04-16 10:05:53 UTC (03 02:28:58 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-freebsd15.0
tgt config freebsd_15-clang_19
timestamp 2026-04-16 10:03:56 UTC (03 02:30:55 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_fedora_43-gcc_15-bindist
timestamp 2026-04-16 10:03:26 UTC (03 02:31:26 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-O3
timestamp 2026-04-16 10:02:54 UTC (03 02:31:58 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11_asan-clang_14.0
timestamp 2026-04-16 10:01:27 UTC (03 02:33:24 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2026-04-16 09:59:58 UTC (03 02:34:54 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-gcc_14-bindist
timestamp 2026-04-16 09:59:55 UTC (03 02:34:57 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_10.2-bindist
timestamp 2026-04-16 09:57:39 UTC (03 02:37:13 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_7.4
timestamp 2026-04-16 09:57:08 UTC (03 02:37:44 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0
timestamp 2026-04-16 09:55:21 UTC (03 02:39:30 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_13-clang_20
timestamp 2026-04-16 09:52:41 UTC (03 02:42:11 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_9.3
timestamp 2026-04-16 09:47:44 UTC (03 02:47:07 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18
timestamp 2026-04-16 09:47:36 UTC (03 02:47:16 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_8-gcc_4.9
timestamp 2026-04-16 09:46:23 UTC (03 02:48:29 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0
timestamp 2026-04-16 09:44:15 UTC (03 02:50:37 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.2
tgt config windows_10_devmode-msvc_16.11
timestamp 2026-04-16 09:43:07 UTC (03 02:51:44 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_10.2
timestamp 2026-04-16 09:40:40 UTC (03 02:54:12 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_rhel_9-gcc_11-bindist
timestamp 2026-04-16 09:39:10 UTC (03 02:55:42 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.2
tgt config windows_10-msvc_16.11
timestamp 2026-04-16 09:38:42 UTC (03 02:56:09 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13
timestamp 2026-04-16 09:31:15 UTC (03 03:03:36 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_11.3
timestamp 2026-04-16 09:27:45 UTC (03 03:07:06 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.14
timestamp 2026-04-16 09:26:19 UTC (03 03:08:32 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_8.4
timestamp 2026-04-16 09:22:46 UTC (03 03:12:05 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_12.1
timestamp 2026-04-16 09:21:37 UTC (03 03:13:14 days ago)
result success | log | rebuild
toolchain stage-0.19.0-a.0.20260408113614.4db6b6d03c00
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1
timestamp 2026-04-16 09:18:20 UTC (03 03:16:31 days ago)
result success | log | rebuild

Changes

Version 0.18.0

  * Support for `while`-loop in the Buildfile language.

    See the "Buildfile Language" section in the manual for details.

  * Support for `continue` and `break` in loops in the Buildfile and scripting
    languages.

  * `ifn` and `ife` shortcuts in the Buildfile and scripting languages.

    These flow control shortcuts allow more succinct expression of is/is-not
    \c{null} and empty checks. They are equivalent to the following more
    verbose expressions:

    ifn ...     ~  if $null(...)
    ife ...     ~  if $empty(...)

    ifn! ...    ~  if! $null(...)
    ife! ...    ~  if! $empty(...)

    elifn ...   ~  elif $null(...)
    elife ...   ~  elif $empty(...)

    elifn! ...  ~  elif! $null(...)
    elife! ...  ~  elif! $empty(...)

  * New Buildfile and scripting language functions:

    - $front(), $back() and $json.array_front(), $json.array_back()

      Return first/last element in a sequence.

    - $sha256sum(), $xxh64sum()

      Compute SHA256 and XXH64 checksums of a string.

    - $builtin.generate_uuid()

      Generate UUID.

    - $string.{compare,filter,filter_out}()

      Compare or filter/filter out strings.

      There is now also support for the `contains`, `contains_once`,
      `starts_with`, and `ends_with` flags in $string.{find,find_index}().

    - $process.search()

      Search in PATH to determine absolute executable path.

  * New scripting languages builtins:

    - sha256sum

      Compute SHA256 checksum of a file or stdin.

    - xxh64sum

      Compute XXH64 checksum of a file or stdin.

    Also, the `ln` builtin now supports creating hard links in addition to
    symbolic.

  * New json{} builtin target type.

    It represents a JSON text file and has the .json default extension.

  * Shell script and task runner executable.

    The portable scripting language that is used for buildfile recipes
    (Buildscript) and test scripts (Testscript) has been generalized to also
    provide a general-purpose shell scripting flavor (Shellscript). Such shell
    scripts can be executed with the `bx` executable which is now provided
    alongside the build system driver (`b`). See the bx(1) man page for
    details.

  * Buildscript/Testscript/Shellscript syntax version 2.

    The version 2 is an improved syntax that should be used in new projects.
    Existing projects should also be eventually migrated to the new syntax.

    The syntax changes in version 2 compared to version 1 are:

    - Flow-control constructs (`if`, `for`, etc) are no longer terminated with
      the `end` line. Instead, the commands inside need to be enclosed into
      curly braces, which can be omitted for a single command. For example,
      syntax 1:

        if true
          echo one
          echo two
        end

        if true
          echo one
        end

      Syntax 2:

        if true
        {
          echo one
          echo two
        }

        if true
          echo one

    - Testscript groups are now enclosed into double curly braces ({{ }}).
      For example, syntax 1:

        : basics
        :
        {
          : test1
          :
          $* test1

          : test2
          :
          $* test2
        }

      Syntax 2:

        : basics
        :
        {{
          : test1
          :
          $* test1

          : test2
          :
          $* test2
        }}

    - Testscript commands in explicit test scopes are no longer separated with
      semicolons. For example, syntax 1:

      : test1
      :
      {
        $* pre;
        $* test1;
        $* post
      }

      Syntax 2:

      : test1
      :
      {
        $* pre
        $* test1
        $* post
      }

    The syntax version is selected based on the project's build2 version
    constraint in the manifest (`depends: build2 >= X.Y.Z`). Specifically, if
    the required version is equal to or great than 0.18.0, then syntax 2 is
    automatically selected. Otherwise, version 1 is used for backwards
    compatibility.

    The desired syntax can also be specified explicitly, both at the buildfile
    and script levels, with the {shellscript,buildscript,testscript}.syntax
    variables. For example:

    # root.build
    #
    testscript.syntax = 1

  * Support for JSON compilation database generation and maintenance.

    See the "Compilation Database" section in the "cc Module" chapter of
    the manual for details.

  * Support for specifying compile options on exe/lib{} targets

    It is now possible to specify compile option (*.poptions and *.coptions)
    on the exe/lib{} targets (we call them "binary-specific compile
    options"). Such options are propagated to obj/bmi{} targets that are
    synthesized for source prerequisites of the binary. Note that this
    propagation does not apply to explicit (non-synthesized) obj/bmi{}
    prerequisites. For example:

    exe{foo}: cxx{foo} obj{common}
    {
      cxx.poptions += -DFOO
    }

    exe{bar}: cxx{bar} obj{common}... More