-
Notifications
You must be signed in to change notification settings - Fork 54
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The updated CI workflows include building Boost.URL with the Boost super-project as the project root, with Boost.URL as the project root, building a project that adds the Boost super-project as a subdirectory, a project that adds Boost.URL as a subdirectory, that finds Boost as a package and that finds Boost.URL as a package. fix #796
- Loading branch information
1 parent
392bbfc
commit 84b82b8
Showing
3 changed files
with
142 additions
and
31 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -53,7 +53,7 @@ jobs: | |
matrix: ${{ steps.cpp-matrix.outputs.matrix }} | ||
steps: | ||
- name: Generate Test Matrix | ||
uses: alandefreitas/cpp-actions/cpp-matrix@v1.5.0 | ||
uses: alandefreitas/cpp-actions/cpp-matrix@v1.6.1 | ||
id: cpp-matrix | ||
with: | ||
compilers: | | ||
|
@@ -93,20 +93,20 @@ jobs: | |
uses: actions/checkout@v3 | ||
|
||
- name: Setup C++ | ||
uses: alandefreitas/cpp-actions/setup-cpp@v1.5.0 | ||
uses: alandefreitas/cpp-actions/setup-cpp@v1.6.1 | ||
id: setup-cpp | ||
with: | ||
compiler: ${{ matrix.compiler }} | ||
version: ${{ matrix.version }} | ||
version: ${{ (matrix.subrange-policy == 'one-per-major' && matrix.major) || matrix.version }} | ||
|
||
- name: Install packages | ||
uses: alandefreitas/cpp-actions/package-install@v1.5.0 | ||
uses: alandefreitas/cpp-actions/package-install@v1.6.1 | ||
id: package-install | ||
with: | ||
apt-get: ${{ matrix.install }} | ||
|
||
- name: Clone Boost | ||
uses: alandefreitas/cpp-actions/boost-clone@v1.5.0 | ||
uses: alandefreitas/cpp-actions/boost-clone@v1.6.1 | ||
id: boost-clone | ||
with: | ||
branch: ${{ (github.ref_name == 'master' && github.ref_name) || 'develop' }} | ||
|
@@ -158,8 +158,9 @@ jobs: | |
restore-keys: | | ||
corpus- | ||
# Run cmake to build Boost.URL with the Boost super-project as PROJECT_ROOT | ||
- name: Boost CMake Workflow | ||
uses: alandefreitas/cpp-actions/cmake-workflow@v1.5.0 | ||
uses: alandefreitas/cpp-actions/cmake-workflow@v1.6.1 | ||
with: | ||
source-dir: ../boost-root | ||
build-dir: __build_cmake_test__ | ||
|
@@ -180,30 +181,45 @@ jobs: | |
package: false | ||
package-artifact: false | ||
ref-source-dir: ../boost-root/libs/url | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
- name: Subdirectory Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
- name: Set shared library paths | ||
if: startsWith(matrix.runs-on, 'windows') && matrix.shared | ||
run: | | ||
echo "$GITHUB_WORKSPACE/.local/bin" >> $GITHUB_PATH | ||
ls -la $GITHUB_WORKSPACE/.local/bin | ||
# Run cmake to build a project that finds Boost as a package and | ||
# url as a COMPONENT of this package. | ||
- name: Boost Find Package Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
if: ${{ matrix.is-latest || matrix.is-earliest }} | ||
with: | ||
source-dir: ../boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
build-dir: __build_cmake_subdir_test__ | ||
build-dir: __build_cmake_boost_install_test__ | ||
generator: ${{ matrix.generator }} | ||
build-type: ${{ matrix.build_type }} | ||
build-type: ${{ matrix.build-type }} | ||
cxxstd: ${{ matrix.latest-cxxstd }} | ||
cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
ccflags: ${{ matrix.ccflags }} | ||
cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
cxxflags: ${{ matrix.cxxflags }} | ||
shared: ${{ matrix.shared }} | ||
cmake-version: '*' | ||
install: false | ||
cmake-version: '>=3.11' | ||
extra-args: -D BOOST_CI_INSTALL_TEST=OFF | ||
extra-args: -D BOOST_CI_INSTALL_TEST=ON -D CMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/.local | ||
package: false | ||
package-artifact: false | ||
ref-source-dir: ../boost-root/libs/url/test/cmake_test | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
- name: Find Package Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
# Run cmake to build a project that finds Boost.URL as a `boost_url` package | ||
- name: Boost.URL Find Package Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
if: ${{ matrix.is-latest || matrix.is-earliest }} | ||
with: | ||
source-dir: ../boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
build-dir: __build_cmake_install_test__ | ||
build-dir: __build_cmake_url_install_test__ | ||
generator: ${{ matrix.generator }} | ||
build-type: ${{ matrix.build-type }} | ||
cxxstd: ${{ matrix.latest-cxxstd }} | ||
|
@@ -212,14 +228,62 @@ jobs: | |
cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
cxxflags: ${{ matrix.cxxflags }} | ||
shared: ${{ matrix.shared }} | ||
cmake-version: '*' | ||
install: false | ||
extra-args: -D BOOST_CI_INSTALL_TEST=ON -D CMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/.local | ||
extra-args: -D BOOST_CI_INSTALL_MODULE_TEST=ON -D CMAKE_PREFIX_PATH=$GITHUB_WORKSPACE/.local | ||
package: false | ||
package-artifact: false | ||
ref-source-dir: ../boost-root/libs/url/test/cmake_test | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
# Run cmake to build a project that adds the Boost super-project as subdirectory | ||
# defining BOOST_INCLUDE_LIBRARIES to url | ||
- name: Boost as Subdirectory Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
if: ${{ matrix.is-latest || matrix.is-earliest }} | ||
with: | ||
source-dir: ../boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
build-dir: __build_cmake_boost_subdir_test__ | ||
generator: ${{ matrix.generator }} | ||
build-type: ${{ matrix.build_type }} | ||
cxxstd: ${{ matrix.latest-cxxstd }} | ||
cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
ccflags: ${{ matrix.ccflags }} | ||
cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
cxxflags: ${{ matrix.cxxflags }} | ||
shared: ${{ matrix.shared }} | ||
cmake-version: '>=3.11' | ||
install: false | ||
extra-args: -D BOOST_CI_BOOST_SUBDIR_TEST=ON | ||
ref-source-dir: ../boost-root/libs/url/test/cmake_test | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
# Run cmake to build a project that adds the Boost.URL as subdirectory | ||
# All other transitive dependencies are directly added as subdirectories | ||
- name: Boost.URL as Subdirectory Integration Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
if: ${{ matrix.is-latest || matrix.is-earliest }} | ||
with: | ||
source-dir: ../boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test | ||
build-dir: __build_cmake_url_subdir_test__ | ||
generator: ${{ matrix.generator }} | ||
build-type: ${{ matrix.build_type }} | ||
cxxstd: ${{ matrix.latest-cxxstd }} | ||
cc: ${{ steps.setup-cpp.outputs.cc || matrix.cc }} | ||
ccflags: ${{ matrix.ccflags }} | ||
cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
cxxflags: ${{ matrix.cxxflags }} | ||
shared: ${{ matrix.shared }} | ||
install: false | ||
cmake-version: '>=3.11' | ||
extra-args: -D BOOST_CI_URL_SUBDIR_TEST=ON | ||
ref-source-dir: ../boost-root/libs/url/test/cmake_test | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
- name: Root Project CMake Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
# Run cmake to build Boost.URL with the module as PROJECT_ROOT | ||
- name: Boost.URL as root CMake Workflow | ||
uses: alandefreitas/cpp-actions/[email protected] | ||
if: ${{ matrix.is-latest || matrix.is-earliest }} | ||
with: | ||
source-dir: . | ||
build-dir: __build_root_test__ | ||
|
@@ -234,13 +298,16 @@ jobs: | |
cxx: ${{ steps.setup-cpp.outputs.cxx || matrix.cxx }} | ||
cxxflags: ${{ matrix.cxxflags }} | ||
shared: ${{ matrix.shared }} | ||
cmake-version: '*' | ||
extra-args: -D Boost_VERBOSE=ON -D BUILD_TESTING=ON -D BOOST_SRC_DIR="../boost-root" | ||
package: false | ||
package-artifact: false | ||
ref-source-dir: . | ||
trace-commands: ${{ env.ACTIONS_STEP_DEBUG == 'true' }} | ||
|
||
# Run b2 to build Boost.URL with the Boost super-project the root directory | ||
- name: Boost B2 Workflow | ||
uses: alandefreitas/cpp-actions/b2-workflow@v1.5.0 | ||
uses: alandefreitas/cpp-actions/b2-workflow@v1.6.1 | ||
with: | ||
source-dir: ../boost-root | ||
modules: url | ||
|
@@ -255,7 +322,7 @@ jobs: | |
shared: ${{ matrix.shared }} | ||
|
||
- name: FlameGraph | ||
uses: alandefreitas/cpp-actions/flamegraph@v1.5.0 | ||
uses: alandefreitas/cpp-actions/flamegraph@v1.6.1 | ||
if: matrix.time-trace | ||
with: | ||
source-dir: ../boost-root/libs/url | ||
|
@@ -308,12 +375,13 @@ jobs: | |
fetch-depth: 100 | ||
|
||
- name: Changelog | ||
uses: alandefreitas/cpp-actions/create-changelog@v1.5.0 | ||
uses: alandefreitas/cpp-actions/create-changelog@v1.6.1 | ||
with: | ||
thank-non-regular: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
github-token: ${{ secrets.GITHUB_TOKEN }} | ||
limit: 200 | ||
tag-pattern: 'boost-.*\..*\..*' | ||
tag-pattern: 'boost-.+\..+\..+' # Match tags like boost-1.75.0 | ||
trace-commands: true | ||
|
||
antora: | ||
name: Antora Docs | ||
|
@@ -339,12 +407,6 @@ jobs: | |
clang-14 --version | ||
clang --version | ||
# The collector script will download mrdocs | ||
# - name: Install MrDocs | ||
# run: | | ||
# wget https://github.com/cppalliance/mrdocs/releases/download/develop-release/MrDocs-1.0.0-Linux.tar.gz | ||
# sudo tar -xzf MrDocs-1.0.0-Linux.tar.gz -C /usr/local --strip-components=1 | ||
|
||
- name: Build Antora Docs | ||
run: | | ||
cd doc | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters