Boost Clone
This action clones the Boost source directory, attempting to get it from the cache first. Only the specified modules are cloned and cached.
Cloning boost is useful when one wants the always use the latest version of boost in a library or is writing a boost proposal. For other use cases, individual boost modules can be fetched with vcpkg in Install Packages or directly included in a package manager manifest.
Besides the explicitly specified list of modules, the action can also scan directories for boost dependencies to implicitly determine what modules should be cloned.
The union of the implicitly and explicitly specified modules is cloned. Caching is based only on these dependencies.
For a project with about 5 boost dependencies, caching saves about 4 minutes in the workflow. When there’s no cache, the scanning scripting saves us about 3 minutes.
Example
steps:
- name: Clone Boost.Variant2
uses: alandefreitas/cpp-actions/boost-clone@v1.2.0
with:
boost-dir: boost-root
branch: master
modules: variant2
Input Parameters
Parameter |
Description |
Default |
|
The boost directory. The default value assumes boost is in-source. |
|
|
Branch of the super-project. |
|
|
Libraries used to patch the boost installation. |
|
|
The boost submodules we need to clone. |
|
|
Additional modules subdirectory to scan; can be repeated. |
|
|
Additional modules subdirectory to scan; can be repeated. |
|
|
An independent directory we should scan for boost dependencies to clone. |
|
|
List of modules that should be ignored in scan-modules. |
|
|
Trace commands executed by the workflow. |
|