bpt build-deps

The bpt build-deps command is used to compile a set of dependencies for use in another project.

<dependency> ...

One or more dependency strings. These match the dependencies strings used in bpt.yaml.

--toolchain <file-or-id>, -t <file-or-id>

Specify the toolchain to use. Can be a filepath to a toolchain file or the name of a built-in toolchain. If not provided, bpt will try to load a default toolchain.

--tweaks-dir <dir>, -TD <dir>

Specify the filepath to a directory containing tweak-headers to be used for the build.

--out <output-path>, -o <output-path>

Specify a filepath to the directory where bpt will write its build results and use as scratch space. By default, this will be the _build/ subdirectory of the working directory.

--built-json <json-path>

Specify the destination filepath of the generated _built.json file (Refer: Building and Using bpt in Another Build System)

--cmake <file-path>

Generate a CMake script that will create imported targets for the dependencies that bpt builds.

--jobs <job-count>, -j <job-count>

Specify the maximum number of parallel tasks that bpt will allow to execute in parallel.

By default, will use the amount of hardware parallelism available on the system, plus two.

--use-repo <url-or-path>, -r <url-or-path>

Specify the URL or filepath to a package repository to use for package/dependency lookup. This option can be repeated for multiple repositories. The default repository will always be available unless --no-default-repo is specified.

Only packages in any expressly-enabled repositories will be available.

--no-default-repo, -NDR

Disable the default package repository for dependency/package lookup.

This can also be enforced by setting the BPT_NO_DEFAULT_REPO environment variable to a “truthy” value.

--repo-sync {always,cached-okay,never}

Mode for repository metadata synchronization. Default is always.

always

Always try to keep the repository metadata up-to-date. If there is a failure to validate/update the repo metadata, the build fails immediately.

cached-okay

Attempt to update the repository metadata. If a low-level network error prevents such an update and we have cached metadata for the repository, ignore the error and continue.

never

Do not try to update the repository metadata. This option requires that there be a local cache of the repository metadata before being used.

If any packages need to be pulled for the build and those packages are not already locally cached, bpt will still attempt to download those packages from the repository.

Regardless of this option, the HTTP Cache-Control headers for the repository data will be respected. If repository data is within the lifetime of the max-age of the resource, bpt will not try to update the repository data.