bdep/0.14.0

[full]

build2 project dependency manager

This package contains the build2 project 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.14.0
license MIT
repository https://pkg.cppget.org/1/alpha
download bdep-0.14.0.tar.gz
sha256 b22ceb1a64a2c649092fd9e8700e01d48e67f4ec92c72b99d9b35cd59e3398f8
project build2
url build2.org
doc-url build2.org/doc.xhtml
src-url git.build2.org/cgit/bdep/tree/
topics project dependency managementbuild toolchain

Depends (4)

libodb ^2.5.0-b.21
libodb-sqlite ^2.5.0-b.21
libbutl ^0.14.0
libbpkg ^0.14.0

Requires (2)

c++14
? cliOnly required if changing .cli files

Builds

toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11_lld / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-28 14:40:03 UTC (02:56:42 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-28 14:39:36 UTC (02:57:08 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-28 14:38:57 UTC (02:57:47 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-28 14:37:53 UTC (02:58:51 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0-static_O3 / x86_64-apple-darwin20.5.0
timestamp 2021-11-28 05:28:03 UTC (12:08:42 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew-O3 / x86_64-apple-darwin20.5.0
timestamp 2021-11-28 04:11:19 UTC (13:25:25 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++-static_O3 / x86_64-linux-gnu
timestamp 2021-11-27 20:56:42 UTC (20:40:03 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 20:55:52 UTC (20:40:52 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0 / x86_64-linux-gnu
timestamp 2021-11-27 20:54:46 UTC (20:41:59 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++-O3 / x86_64-linux-gnu
timestamp 2021-11-27 20:54:32 UTC (20:42:13 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0-static_O3 / x86_64-linux-gnu
timestamp 2021-11-27 20:54:12 UTC (20:42:33 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0-O3 / x86_64-linux-gnu
timestamp 2021-11-27 20:53:59 UTC (20:42:45 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64-static_O2 / x86_64-w64-mingw32
timestamp 2021-11-27 20:39:43 UTC (20:57:01 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64-O2 / x86_64-w64-mingw32
timestamp 2021-11-27 20:38:22 UTC (20:58:22 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew-static_O3 / x86_64-apple-darwin20.5.0
timestamp 2021-11-27 19:49:26 UTC (21:47:18 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0-O3 / x86_64-apple-darwin20.5.0
timestamp 2021-11-27 19:48:24 UTC (21:48:21 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew / x86_64-apple-darwin20.5.0
timestamp 2021-11-27 19:47:59 UTC (21:48:45 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0 / x86_64-apple-darwin20.5.0
timestamp 2021-11-27 19:47:15 UTC (21:49:29 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_12.0 / x86_64-apple-darwin20.5.0
timestamp 2021-11-27 19:46:08 UTC (21:50:36 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 19:22:47 UTC (22:13:57 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 19:21:48 UTC (22:14:56 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 19:17:59 UTC (22:18:46 hours ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0-O3 / x86_64-freebsd13.0
timestamp 2021-11-27 16:56:41 UTC (01 00:40:04 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0-static_O3 / x86_64-freebsd13.0
timestamp 2021-11-27 16:56:07 UTC (01 00:40:37 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10_devmode-msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 16:55:23 UTC (01 00:41:21 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0 / x86_64-freebsd13.0
timestamp 2021-11-27 16:50:00 UTC (01 00:46:44 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.9 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 16:48:20 UTC (01 00:48:25 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-static_O3 / x86_64-linux-gnu
timestamp 2021-11-27 16:44:30 UTC (01 00:52:15 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_12.0_msvc_msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-11-27 16:43:50 UTC (01 00:52:55 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-O3 / x86_64-linux-gnu
timestamp 2021-11-27 16:42:58 UTC (01 00:53:47 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_12-clang_10.0 / x86_64-freebsd12.2
timestamp 2021-11-27 16:42:24 UTC (01 00:54:20 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_12.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 16:41:32 UTC (01 00:55:13 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_12.0 / x86_64-linux-gnu
timestamp 2021-11-27 16:39:38 UTC (01 00:57:07 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2 / x86_64-linux-gnu
timestamp 2021-11-27 16:38:58 UTC (01 00:57:47 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_10.2 / x86_64-linux-gnu
timestamp 2021-11-27 16:37:36 UTC (01 00:59:08 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_7.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:20:15 UTC (01 06:16:30 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_11.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:20:11 UTC (01 06:16:33 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_9.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:19:38 UTC (01 06:17:06 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_8.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:19:36 UTC (01 06:17:09 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_7.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:19:19 UTC (01 06:17:26 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_11.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:19:01 UTC (01 06:17:43 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_9.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:18:41 UTC (01 06:18:04 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_6.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:18:22 UTC (01 06:18:23 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_8.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:18:04 UTC (01 06:18:41 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-clang_6.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:17:44 UTC (01 06:19:01 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-gcc_8.4 / x86_64-linux-gnu
timestamp 2021-11-27 11:17:38 UTC (01 06:19:07 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_10.0_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:17:26 UTC (01 06:19:19 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_10.0 / x86_64-linux-gnu
timestamp 2021-11-27 11:16:47 UTC (01 06:19:57 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_ubuntu_16.04-clang_3.7_libc++ / x86_64-linux-gnu
timestamp 2021-11-27 11:15:40 UTC (01 06:21:05 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_9.3 / x86_64-linux-gnu
timestamp 2021-11-27 11:15:37 UTC (01 06:21:07 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_8-gcc_4.9 / x86_64-linux-gnu
timestamp 2021-11-27 11:15:24 UTC (01 06:21:20 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_9-gcc_7.4 / x86_64-linux-gnu
timestamp 2021-11-27 11:14:53 UTC (01 06:21:51 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_11-clang_10.0 / x86_64-freebsd11.4
timestamp 2021-11-27 11:11:29 UTC (01 06:25:15 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_14.3 / x86_64-microsoft-win32-msvc14.0
timestamp 2021-11-27 11:09:49 UTC (01 06:26:56 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-ndebug_O3 / x86_64-linux-gnu
timestamp 2021-11-27 10:30:33 UTC (01 07:06:12 days ago)
result warning (update) | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64 / x86_64-w64-mingw32
timestamp 2021-11-27 10:16:51 UTC (01 07:19:53 days ago)
result error (update) | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_15.9 / x86_64-microsoft-win32-msvc14.1
timestamp 2021-11-27 10:01:54 UTC (01 07:34:51 days ago)
result error (test-installed) | log | rebuild

Changes

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 project packages and/or
    dependencies), and `build2` (used for build system modules). We can now
    also have multiple default configurations if they are of different types.
    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 initialization or synchronization a build-time dependency is
    encountered and there is no build configuration of a suitable type
    associated with the project, then the user is prompted to automatically
    create and associate such a configuration.

    New relevant commands: bdep-config-{link,unlink}.

    Command with relevant changes (new options, etc): bdep-config-create,
    bdep-init, bdep-sync.

    See bdep-config(1) and bdep-sync(1) for details on this functionality.
    See also the corresponding functionality in bpkg on which this support
    is based.

  * Project packages are now by default initialized for development.

    Specifically, a package is configured with config.<package>.develop=true
    unless an alternative value is specified on the command line. For example:

    $ bdep init @install config.hello.develop=false

    To change the development mode of an already initialized package, use
    bdep-sync:

    $ bdep sync @install config.hello.develop=false

    See the build system manual for details on the config.*.develop variable
    semantics.

  * Configuration of project packages is now preserved during synchronization.

    To reconfigure a package from scratch, use the new --disfigure bdep-sync
    option. For example:

    $ bdep sync config.hello.develop=false  # develop=false (new)
    $ bdep sync                             # develop=false (preserved)
    $ bdep sync --disfigure                 # develop=true  (default)

  * The bdep-new command can now create multi-language C/C++ projects.

  * The bdep-new command can now create binless (header-only) C libraries.

  * The bdep-new command now generates smarter glue buildfiles that read
    packages.manifest instead of using a directory wildcard.

  * New --immediate|-i and --recursive|-r bdep-{update,clean} options.

    These options can be used to additionally update or clean immediate or all
    dependencies of the project packages, respectively.

  * New --build-config bdep-ci option.

    This option provides an easier way to specify the desired build
    configuration or configuration pattern.

  * New --interactive|-i bdep-ci option.

    This option can be used to request an interactive CI session. In this mode
    the CI service pauses the testing at the specified breakpoint and provides
    the login information to the execution environment.

  * Support for argument grouping in bdep-{sync,init}.

    See bdep-argument-grouping(1) for details on argument grouping.

  * New BDEP_DEF_OPT environment variable that can be used to suppress loading
    of default options files.

Version 0.13.0

  * The SPDX License Expression in now the default scheme in the bdep-new
    --type|-t,license sub-option.

    Auto-detected licenses now also result in the SPDX License ID in the
    'license' package manifest value.

  * New source layout customization mechanisms in bdep-new.

    In particular, the split include/src layout is now supported out of the
    box:

    $ bdep new -l c++ -t lib,split libhello

    See the SOURCE LAYOUT section in bdep-new(1) for details and a large
    number of examples.

  * The bdep-new command in the --package mode now creates the "glue
    buildfile" for the project.

  * The bdep-new command now generates the .gitattributes file with sensible
    defaults.

  * The bdep-new --subdirectory mode option has been renamed to --source.

    The corresponding default options file has also been renamed to
    bdep-new-source.options.

  * The bdep-new binless sub-option has been moved from --lang|-l to --type|t.

Version 0.12.0

  * Support for creating new projects with existing files.

    The bdep-new command now also recognizes and handles the following
    existing filesystem entries in the project root:

      .git      -- assume VCS is already initialized and is Git
      LICENSE   -- try to guess the manifest license from contents
      README.md -- try to extract the manifest summary line from contents

    Overall,... More