bpkg/0.16.0

[full]

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
version 0.16.0
license MIT
repository https://pkg.cppget.org/1/alpha
download bpkg-0.16.0.tar.gz
sha256 b31cd589d54bf1da681fcd887af7308dc2168f82d0ce5886bfdcdab1362a7a89
project build2
url build2.org
doc-url build2.org/doc.xhtml
src-url git.build2.org/cgit/bpkg/tree/
topics package dependency managementbuild toolchain

Depends (6)

libodb ^2.5.0-b.25
libodb-sqlite ^2.5.0-b.25
libsqlite3 ^3.21.0ATTACH in transaction
libbutl ^0.16.0
libbpkg ^0.16.0
build2 ^0.16.0

Requires (1)

c++14

Builds

toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_14.0-static_O3
timestamp 2023-09-27 09:31:21 UTC (01 21:28:03 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_14.0-O3
timestamp 2023-09-27 09:30:36 UTC (01 21:28:48 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_14.0
timestamp 2023-09-27 09:29:49 UTC (01 21:29:34 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0-static_O3
timestamp 2023-09-26 21:43:31 UTC (02 09:15:53 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0-O3
timestamp 2023-09-26 21:37:24 UTC (02 09:22:00 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0
timestamp 2023-09-26 21:32:35 UTC (02 09:26:49 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16_libc++-static_O3
timestamp 2023-09-26 20:36:10 UTC (02 10:23:14 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16_libc++-O3
timestamp 2023-09-26 20:35:00 UTC (02 10:24:24 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16_libc++
timestamp 2023-09-26 20:28:47 UTC (02 10:30:37 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16-static_O3
timestamp 2023-09-26 20:24:42 UTC (02 10:34:42 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16
timestamp 2023-09-26 20:21:50 UTC (02 10:37:33 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_16-O3
timestamp 2023-09-26 20:18:02 UTC (02 10:41:22 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_fedora_38-gcc_13-bindist
timestamp 2023-09-26 19:22:16 UTC (02 11:37:08 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-gcc_13_homebrew-static_O3
timestamp 2023-09-26 18:47:20 UTC (02 12:12:04 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-gcc_13_homebrew-O3
timestamp 2023-09-26 18:34:05 UTC (02 12:25:19 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_12.2_mingw_w64
timestamp 2023-09-26 18:31:27 UTC (02 12:27:57 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin22.5.0
tgt config macos_13-gcc_13_homebrew
timestamp 2023-09-26 18:27:20 UTC (02 12:32:04 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.6-O2
timestamp 2023-09-26 18:18:00 UTC (02 12:41:24 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_10.2-bindist
timestamp 2023-09-26 18:06:20 UTC (02 12:53:04 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.6-static_O2
timestamp 2023-09-26 18:03:41 UTC (02 12:55:43 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13-static_O3
timestamp 2023-09-26 18:01:24 UTC (02 12:58:00 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.6
timestamp 2023-09-26 17:57:15 UTC (02 13:02:09 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13-O3
timestamp 2023-09-26 17:56:44 UTC (02 13:02:40 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13
timestamp 2023-09-26 17:52:08 UTC (02 13:07:16 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_fedora_37-gcc_12.2-bindist
timestamp 2023-09-26 17:46:41 UTC (02 13:12:43 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_15_libc++
timestamp 2023-09-26 17:29:44 UTC (02 13:29:40 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0_libc++-O3
timestamp 2023-09-26 17:29:26 UTC (02 13:29:58 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0_libc++-static_O3
timestamp 2023-09-26 17:27:00 UTC (02 13:32:23 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_11-clang_14_libc++
timestamp 2023-09-26 17:24:53 UTC (02 13:34:31 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_11-gcc_12
timestamp 2023-09-26 17:23:38 UTC (02 13:35:45 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0-static_O3
timestamp 2023-09-26 17:22:10 UTC (02 13:37:14 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0_libc++
timestamp 2023-09-26 17:21:14 UTC (02 13:38:10 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_15
timestamp 2023-09-26 17:21:05 UTC (02 13:38:19 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0
timestamp 2023-09-26 17:19:08 UTC (02 13:40:16 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0-O3
timestamp 2023-09-26 17:17:06 UTC (02 13:42:17 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_11-clang_14
timestamp 2023-09-26 17:15:19 UTC (02 13:44:05 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1
timestamp 2023-09-26 17:14:04 UTC (02 13:45:20 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_16.0_llvm_msvc_17.6-static_O2
timestamp 2023-09-26 17:10:23 UTC (02 13:49:01 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_16.0_llvm_msvc_17.6-O2
timestamp 2023-09-26 17:04:04 UTC (02 13:55:20 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_16.0_llvm_msvc_17.6
timestamp 2023-09-26 16:53:55 UTC (02 14:05:28 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_12.2_mingw_w64-O2
timestamp 2023-09-26 16:35:08 UTC (02 14:24:16 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-w64-mingw32
tgt config windows_10-gcc_12.2_mingw_w64-static_O2
timestamp 2023-09-26 16:33:08 UTC (02 14:26:16 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1-static_O3
timestamp 2023-09-26 16:01:27 UTC (02 14:57:56 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1-O3
timestamp 2023-09-26 15:59:14 UTC (02 15:00:10 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_15.0_msvc_msvc_17.6
timestamp 2023-09-26 15:56:29 UTC (02 15:02:55 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.5
timestamp 2023-09-26 15:54:10 UTC (02 15:05:14 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_12-bindist
timestamp 2023-09-26 15:52:16 UTC (02 15:07:08 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-freebsd13.2
tgt config freebsd_13-clang_14.0-O3
timestamp 2023-09-26 15:46:42 UTC (02 15:12:42 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-freebsd13.2
tgt config freebsd_13-clang_14.0-static_O3
timestamp 2023-09-26 15:44:49 UTC (02 15:14:35 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_15.0_libc++
timestamp 2023-09-26 15:42:52 UTC (02 15:16:32 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-freebsd13.2
tgt config freebsd_13-clang_14.0
timestamp 2023-09-26 15:42:27 UTC (02 15:16:57 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_15.0
timestamp 2023-09-26 15:40:54 UTC (02 15:18:29 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_12.1
timestamp 2023-09-26 15:36:34 UTC (02 15:22:50 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-freebsd12.4
tgt config freebsd_12-clang_13.0
timestamp 2023-09-26 15:32:33 UTC (02 15:26:51 days ago)
result success | log | rebuild
toolchain public-0.16.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13-ndebug_O3
timestamp 2023-09-26 13:37:00 UTC (02 17:22:23 days ago)
result warning (update) | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1-ndebug_O3
timestamp 2023-09-26 12:45:43 UTC (02 18:13:41 days ago)
result warning (update) | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_14.0_llvm_msvc_17.2_lld
timestamp 2023-09-26 11:55:02 UTC (02 19:04:22 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.2
tgt config windows_10_devmode-msvc_16.11
timestamp 2023-09-26 11:54:49 UTC (02 19:04:35 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.2
tgt config windows_10-msvc_16.11
timestamp 2023-09-26 11:51:32 UTC (02 19:07:52 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_13.0_libc++
timestamp 2023-09-26 11:23:41 UTC (02 19:35:43 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_14.0_libc++
timestamp 2023-09-26 11:22:59 UTC (02 19:36:25 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_8.0_libc++
timestamp 2023-09-26 11:16:14 UTC (02 19:43:09 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.0
tgt config windows_10-msvc_14.3
timestamp 2023-09-26 11:16:10 UTC (02 19:43:13 days ago)
result error (test-installed) | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_7.0_libc++
timestamp 2023-09-26 11:14:55 UTC (02 19:44:29 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_12.0_libc++
timestamp 2023-09-26 11:14:06 UTC (02 19:45:18 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_8-gcc_4.9
timestamp 2023-09-26 11:13:14 UTC (02 19:46:10 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_6.0_libc++
timestamp 2023-09-26 11:11:22 UTC (02 19:48:02 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_14.0
timestamp 2023-09-26 11:09:18 UTC (02 19:50:06 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_8.0
timestamp 2023-09-26 11:08:53 UTC (02 19:50:31 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_7.0
timestamp 2023-09-26 11:08:15 UTC (02 19:51:09 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_11.0_libc++
timestamp 2023-09-26 11:05:38 UTC (02 19:53:46 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_9.0_libc++
timestamp 2023-09-26 11:04:56 UTC (02 19:54:28 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-freebsd11.4
tgt config freebsd_11-clang_10.0
timestamp 2023-09-26 11:04:03 UTC (02 19:55:21 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_ubuntu_16.04-clang_3.7_libc++
timestamp 2023-09-26 11:02:52 UTC (02 19:56:32 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_10.0_libc++
timestamp 2023-09-26 11:01:36 UTC (02 19:57:48 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_8.4
timestamp 2023-09-26 11:01:04 UTC (02 19:58:20 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_13.0
timestamp 2023-09-26 10:59:53 UTC (02 19:59:31 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_7.4
timestamp 2023-09-26 10:59:53 UTC (02 19:59:31 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_11.3
timestamp 2023-09-26 10:59:45 UTC (02 19:59:39 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_12.0
timestamp 2023-09-26 10:58:34 UTC (02 20:00:50 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_6.0
timestamp 2023-09-26 10:57:58 UTC (02 20:01:26 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_11.0
timestamp 2023-09-26 10:57:31 UTC (02 20:01:53 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_9.0
timestamp 2023-09-26 10:57:06 UTC (02 20:02:18 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_10.0
timestamp 2023-09-26 10:56:05 UTC (02 20:03:19 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_10.2
timestamp 2023-09-26 10:53:22 UTC (02 20:06:02 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_9.3
timestamp 2023-09-26 10:52:21 UTC (02 20:07:03 days ago)
result success | log | rebuild
toolchain public-0.16.0
target x86_64-microsoft-win32-msvc14.1
tgt config windows_10-msvc_15.9
timestamp 2023-09-26 10:47:05 UTC (02 20:12:18 days ago)
result error (test-installed) | log | rebuild
toolchain public-0.16.0
target x86_64-apple-darwin21.6.0
tgt config macos_12-clang_14.0
timestamp 2023-09-26 10:33:13 UTC (02 20:26:11 days ago)
result success | log | rebuild

Changes

Version 0.16.0

  * System package manager query/installation support for Debian and Fedora
    (and alike).

    The pkg-build command will now query (unless --sys-no-query is specified)
    the system package manager on Debian (and alike, such as Ubuntu) and
    Fedora (and alike, such as RHEL) for versions of packages that are
    specified as coming from the system (the sys: scheme). For example, if
    running the following command on one of these distributions:

    bpkg build hello ?sys:libsqlite3

    Then pkg-build will query the system package manager for the installed
    version of libsqlite3 and fail if none is present.

    Additionally, if --sys-install is specified, pkg-build will attempt to
    install such packages if not present but available from the system package
    repository.

    Other relevant options include --sys-yes, --sys-no-fetch, --sys-no-stub,
    and --sys-sudo. See bpkg-pkg-build(1) for details.

    See also the `*-{name, version, to-downstream-version}` package manifest
    values in the manual for details on the bpkg to distribution package name
    and version mapping.

  * Binary distribution package generation support for Debian and Fedora (and
    alike).

    The new pkg-bindist command can be used to automatically generate binary
    distribution packages from bpkg packages for Debian (and alike, such as
    Ubuntu), Fedora (and alike, such as RHEL), and for other operating systems
    as installation archives. For Debian and Fedora, dependencies can be
    satisfied with system packages, bpkg packages, or bundled. See
    bpkg-pkg-bindist(1) for details.

  * Package build configuration support (*-build-config manifest values).

    A package can now customize in its manifest the build configuration used
    by automated build bots. This includes specifying configuration variable
    values, forcing specific versions of dependencies, satisfying dependencies
    with system packages, and enabling/disabling build bot steps. For example:

    # Test with extras enabled.
    #
    extras-build-config: config.libfoo.extra=true

    # Test with system-installed libsqlite3.
    #
    system-builds: sys
    system-build-config: ?sys:libsqlite3

    # Enable Debian binary distribution generation and upload.
    #
    bindist-debian-builds: bindist
    bindist-debian-build-include: linux_debian*-**
    bindist-debian-build-include: linux_ubuntu*-**
    bindist-debian-build-exclude: **
    bindist-debian-build-config:
    \
    +bpkg.bindist.debian:
    +bbot.bindist.upload:
    \

    See the `*-build-config` package manifest values in the manual for
    details.

  * New package-description and package-description-{file,type} package
    manifest values.

    Compared to the description* values, these can be used to provide a bpkg
    package-specific description, such as the recommended usage, configuration
    variables, etc. See the `description`, `package-description` package
    manifest values in the manual for details.

  * New changes-type package manifest value and type auto-detection, similar
    to description.

    See the `changes` package manifest value in the manual for details.

  * New --deorphan pkg-build option.

    This option can be used to replace orphaned packages (packages that no
    longer have the corresponding package available in the repository it came
    from) with the closest available package versions that satisfy all the
    constraints.

  * New --mask-repository* pkg-build options.

    These options allow pretending for the duration of the pkg-build command
    execution that the specified repository was removed as if by performing
    the rep-remove command.

  * New --dependent-exit pkg-drop option.

    This option causes the pkg-drop command to silently exit with the
    specified error code if attempting to drop dependent packages.

  * New --git-capabilities common option to override auto-detected git
    capabilities.

    We now also assume the git repository protocol is smart if the HTTP
    response code is 401 (requires authentication).

  * curl is now used instead of wget as the default fetch program.

    We used to prefer wget 1.16 because it has --show-progress which results
    in nicer progress. But experience shows that wget is quite unreliable plus
    with bdep always using curl, it would be strange to use both curl and wget
    (and expecting the user to setup proxy, authentication, etc., for both).

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... More