build2 package dependency manager
This package contains the build2 package dependency manager.
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... More
Depends (6)
Requires (1)
Builds
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11_lld / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 17:43:26 UTC (01 09:20:19 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 17:42:17 UTC (01 09:21:28 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 17:41:20 UTC (01 09:22:24 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_13.0_llvm_msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 17:40:18 UTC (01 09:23:27 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2-static_O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 15:57:11 UTC (01 11:06:33 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2_lld / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 15:56:08 UTC (01 11:07:36 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2-O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 15:55:48 UTC (01 11:07:56 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-clang_14.0_llvm_msvc_17.2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 15:55:05 UTC (01 11:08:40 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++-static_O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:55:21 UTC (01 17:08:23 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0-static_O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:55:18 UTC (01 17:08:27 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2-static_O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 09:55:17 UTC (01 17:08:28 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2-O2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 09:55:09 UTC (01 17:08:36 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 09:55:04 UTC (01 17:08:40 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64 / x86_64-w64-mingw32 |
timestamp |
2023-03-20 09:54:54 UTC (01 17:08:50 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++-O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:54:44 UTC (01 17:09:01 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-20 09:54:42 UTC (01 17:09:02 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_17.2 / x86_64-microsoft-win32-msvc14.3 |
timestamp |
2023-03-20 09:54:14 UTC (01 17:09:31 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0-O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:54:06 UTC (01 17:09:38 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_14.0 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:54:05 UTC (01 17:09:40 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 09:53:44 UTC (01 17:10:00 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64-static_O2 / x86_64-w64-mingw32 |
timestamp |
2023-03-20 09:53:25 UTC (01 17:10:19 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 09:52:48 UTC (01 17:10:57 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-gcc_11.2_mingw_w64-O2 / x86_64-w64-mingw32 |
timestamp |
2023-03-20 09:52:34 UTC (01 17:11:11 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-static_O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:50:25 UTC (01 17:13:19 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-O3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:49:53 UTC (01 17:13:52 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:49:33 UTC (01 17:14:12 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0-static_O3 / x86_64-freebsd13.1 |
timestamp |
2023-03-20 09:49:28 UTC (01 17:14:17 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0-O3 / x86_64-freebsd13.1 |
timestamp |
2023-03-20 09:48:20 UTC (01 17:15:24 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_13-clang_13.0 / x86_64-freebsd13.1 |
timestamp |
2023-03-20 09:47:30 UTC (01 17:16:15 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_13.0 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:47:21 UTC (01 17:16:23 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10_devmode-msvc_16.11 / x86_64-microsoft-win32-msvc14.2 |
timestamp |
2023-03-20 09:46:27 UTC (01 17:17:17 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-clang_13.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-20 09:43:24 UTC (01 17:20:20 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_12-clang_10.0 / x86_64-freebsd12.3 |
timestamp |
2023-03-20 09:42:48 UTC (01 17:20:56 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_11.3 / x86_64-linux-gnu |
timestamp |
2023-03-20 09:39:33 UTC (01 17:24:11 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-20 00:08:20 UTC (02 02:55:24 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew-O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-19 23:12:41 UTC (02 03:51:03 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-gcc_12.1_homebrew-static_O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-19 23:11:24 UTC (02 03:52:21 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1-O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-19 23:05:34 UTC (02 03:58:11 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1-static_O3 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-19 22:45:09 UTC (02 04:18:35 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_12-clang_13.1 / x86_64-apple-darwin21.6.0 |
timestamp |
2023-03-19 22:40:31 UTC (02 04:23:14 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
macos_11-clang_13.0 / x86_64-apple-darwin20.5.0 |
timestamp |
2023-03-19 21:59:50 UTC (02 05:03:55 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_11-gcc_12.1-ndebug_O3 / x86_64-linux-gnu |
timestamp |
2023-03-19 12:00:25 UTC (02 15:03:19 days ago) |
result |
warning (update) | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_12.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:59:19 UTC (02 16:04:25 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_10.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:45:48 UTC (02 16:17:57 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_9.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:44:48 UTC (02 16:18:57 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_12.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:43:57 UTC (02 16:19:48 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_10.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:43:19 UTC (02 16:20:25 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_8.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:41:48 UTC (02 16:21:57 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_8.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:40:25 UTC (02 16:23:20 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_9.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:39:26 UTC (02 16:24:18 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_7.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:36:47 UTC (02 16:26:58 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_11.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:36:10 UTC (02 16:27:35 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-clang_11.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:34:47 UTC (02 16:28:57 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_6.0_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:34:21 UTC (02 16:29:23 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_6.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:33:42 UTC (02 16:30:02 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_ubuntu_16.04-clang_3.7_libc++ / x86_64-linux-gnu |
timestamp |
2023-03-19 10:29:23 UTC (02 16:34:22 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-clang_7.0 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:28:46 UTC (02 16:34:59 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-gcc_10.2 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:24:35 UTC (02 16:39:10 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_15.9 / x86_64-microsoft-win32-msvc14.1 |
timestamp |
2023-03-19 10:19:47 UTC (02 16:43:58 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-gcc_8.4 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:16:25 UTC (02 16:47:20 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_10-gcc_9.3 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:13:57 UTC (02 16:49:47 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
freebsd_11-clang_10.0 / x86_64-freebsd11.4 |
timestamp |
2023-03-19 10:13:05 UTC (02 16:50:40 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_8-gcc_4.9 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:12:43 UTC (02 16:51:02 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
linux_debian_9-gcc_7.4 / x86_64-linux-gnu |
timestamp |
2023-03-19 10:09:43 UTC (02 16:54:02 days ago) |
result |
success | log | rebuild |
toolchain |
public-0.15.0 |
config |
windows_10-msvc_14.3 / x86_64-microsoft-win32-msvc14.0 |
timestamp |
2023-03-19 10:05:03 UTC (02 16:58:42 days ago) |
result |
success | log | rebuild |
Changes
Version 0.15.0
* New dependency declaration features:
- Dependency groups, for example:
depends: { libboost-any libboost-log libboost-uuid } ~1.77.0
- Conditional dependencies, for example:
depends: libposix-getopt ^1.0.0 ? ($cxx.target.class == 'windows')
- Dependency alternatives, for example:
depends: libmysqlclient >= 5.0.3 | libmariadb ^10.2.2
- Reflected configuration variables, for example:
depends: libposix-getopt ^1.0.0 \
? ($cxx.target.class == 'windows') \
config.hello.external_regex=true
Or:
depends: libmysqlclient >= 5.0.3 config.hello.db='mysql' | \
libmariadb ^10.2.2 config.hello.db='mariadb'
- Dependency configuration, for example:
depends:
\
libmariadb ^10.2.2
{
require
{
config.libmariadb.cache = true
if ($cxx.target.class != 'windows')
config.libmariadb.tls = true
}
}
\
Or:
depends:
\
libmariadb ^10.2.2
{
prefer
{
config.libmariadb.cache = true
config.libmariadb.buffer = ($config.libmariadb.buffer < 4096 \
? 4096 \
: $config.libmariadb.buffer)
}
accept ($config.libmariadb.buffer >= 4096)
}
\
See the `depends` package manifest value in the manual for details.
The implementation of these features led to bpkg becoming a special build
system driver with repository metadata now containing the minimal subset
of build system files for each package (called the package build system
skeleton). See "Package Build System Skeleton" in the manual for details.
* Support for JSON output in the bpkg-pkg-status command.
See the --stdout-format option in bpkg-pkg-status(1) for details.
* New --all, --all-pattern bpkg-pkg-drop options.
These options can be used to drop all the held packages (in case of
--all-pattern, limited to those that match a wildcard pattern).
* New --keep-tmp common option.
This option instructs bpkg not to remove its temporary directory at the
end of the command execution and print its path if the verbosity level is
2 or higher. This option is primarily useful for troubleshooting.
Version 0.14.0
* Support for configuration types, configuration linking, and build-time
dependencies.
Configurations can now be linked with each other to allow a package to be
built in one configuration while its dependencies -- in one or more linked
configurations. This can be used to create a "base" configuration with
common dependencies that are shared between multiple configurations.
Configurations now also have types with the three predefined types being
`target` (the default) `host` (used for build-time dependencies), and
`build2` (used for build system modules). This mechanism together with
configuration linking is used to provide separate configurations for
build-time dependencies, for example, tools that need to be executed or
build system modules that need to be loaded during the build.
If during dependency resolution a build-time dependency is encountered and
there is no build configuration of a suitable type linked with the target
configuration, then a private configuration of the needed type is
automatically created and linked.
New relevant commands: bpkg-cfg-{link,unlink,info}.
Command with relevant changes (new options, etc): bpkg-cfg-create,
bpkg-pkg-{build,status}.
See bpkg-cfg-create(1) for details on this functionality.
* Tests, examples, and benchmark packages can now also be run-time or build-
time.
See the `tests`, `examples`, and `benchmarks` package manifest values for
details.
* Two new pre-defined automated build bot requirements: `bootstrap` (package
is a build system module that requires bootstrapping) and `host` (package
is normally used as build-time dependency and should be built in a host
configuration).
See the `requires` package manifest value for details.
* Configuration of an external package is now preserved between upgrades and
downgrades.
The same behavior for normal packages is still a TODO. The old behavior
can be achieved with the new --disfigure bpkg-pkg-build option that forces
a from-scratch reconfiguration.
* New `min-bpkg-version` repositories manifest value that allows specifying
the minimum supported bpkg version.
See also the new --min-bpkg-version bpkg-rep-create option.
* Change of the `build-email` package manifest value semantics.
Now build result notifications are only sent if this value is explicitly
specified (before we used to fallback to `email`).
* New --immediate|-i and --recursive|-r bpkg-pkg-{update,clean} options.... More