forked from boostorg/config
Modular Boost and big CI update.
* Make the library modular usable. * Add missing import-search for cconfig/predef checks. * Add requires-b2 check to top-level build file. * Bump B2 require to 5.2 * Remove boost-root target refs. * Change all <source> references to <library>. * Update copyright dates. * Fix library global (relative) references. * Move inter-lib dependencies to a project variable and into the build targets. * Add Boost.StaticAssert transitive dep module. * Only test on latest macOS. * Add Boost.ThrowExceptions transitive dep module. * Add Boost.Preprocessor transitive dep module. * Change MacOS Clang std version to 20 from 2a * Disable ranges on MacOS. Remove CUDA testing - I just can't get CUDA to install any more. * Update drone checkouts. --------- Co-authored-by: Rene Rivera <grafikrobot@gmail.com>
This commit is contained in:
+26
-116
@@ -38,7 +38,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -82,7 +82,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -126,7 +126,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -170,7 +170,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -190,43 +190,8 @@ jobs:
|
||||
- name: Test
|
||||
run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17,2a
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
macos_11:
|
||||
runs-on: macos-11
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
toolset: [ clang, gcc-11, gcc-10 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[linux];[Linux];[LINUX]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
working-directory: ../boost-root
|
||||
- name: Bootstrap
|
||||
run: ./bootstrap.sh
|
||||
working-directory: ../boost-root
|
||||
- name: Generate headers
|
||||
run: ./b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: Config info
|
||||
run: ../../../b2 print_config_info toolset=${{ matrix.toolset }} cxxstd=03,11,14,17,2a
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ../../../b2 toolset=${{ matrix.toolset }} cxxstd=03,11,14,17,2a
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
macos_12:
|
||||
runs-on: macos-12
|
||||
macos:
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
@@ -243,7 +208,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -255,7 +220,7 @@ jobs:
|
||||
run: ./b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: Config info
|
||||
run: ../../../b2 print_config_info toolset=${{ matrix.toolset }} cxxstd=03,11,14,17,2a
|
||||
run: ../../../b2 print_config_info toolset=${{ matrix.toolset }} cxxstd=03,11,14,17,20
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Test
|
||||
run: ../../../b2 toolset=${{ matrix.toolset }} cxxstd=03,11,14,17,2a
|
||||
@@ -281,7 +246,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config
|
||||
@@ -319,7 +284,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config
|
||||
@@ -357,7 +322,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config
|
||||
@@ -395,7 +360,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config
|
||||
@@ -412,20 +377,20 @@ jobs:
|
||||
- name: Test
|
||||
run: ..\..\..\b2 --hash address-model=64 cxxstd=14,17,latest toolset=clang-win embed-manifest-via=linker
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
non_intel_ubuntu_20_04_gcc:
|
||||
runs-on: ubuntu-20.04
|
||||
non_intel_ubuntu_22_04_gcc:
|
||||
runs-on: ubuntu-22.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
qemu_arch: [ aarch64, s390x, ppc64le ]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: uraimo/run-on-arch-action@v2
|
||||
- uses: uraimo/run-on-arch-action@v3
|
||||
name: Run commands
|
||||
id: runcmd
|
||||
with:
|
||||
arch: ${{ matrix.qemu_arch }}
|
||||
distro: ubuntu20.04
|
||||
distro: ubuntu22.04
|
||||
|
||||
# Not required, but speeds up builds by storing container images in
|
||||
# a GitHub package registry.
|
||||
@@ -435,7 +400,7 @@ jobs:
|
||||
run: |
|
||||
uname -a
|
||||
apt update
|
||||
apt -y install gcc g++ git python
|
||||
apt -y install gcc g++ git python3
|
||||
echo $PWD
|
||||
config=$PWD
|
||||
cd ..
|
||||
@@ -443,25 +408,25 @@ jobs:
|
||||
cd boost-root
|
||||
rm -rf libs/config/*
|
||||
cp -r $config/* libs/config
|
||||
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
./bootstrap.sh
|
||||
./b2 headers
|
||||
./b2 toolset=gcc libs/config/test//print_config_info libs/config/test//print_math_info
|
||||
cd libs/config/test && ../../../b2 toolset=gcc cxxstd=03,11,14,17
|
||||
non_intel_ubuntu_20_04_clang:
|
||||
runs-on: ubuntu-20.04
|
||||
non_intel_ubuntu_22_04_clang:
|
||||
runs-on: ubuntu-22.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
qemu_arch: [ aarch64, ppc64le ]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: uraimo/run-on-arch-action@v2
|
||||
- uses: uraimo/run-on-arch-action@v3
|
||||
name: Run commands
|
||||
id: runcmd
|
||||
with:
|
||||
arch: ${{ matrix.qemu_arch }}
|
||||
distro: ubuntu20.04
|
||||
distro: ubuntu22.04
|
||||
|
||||
# Not required, but speeds up builds by storing container images in
|
||||
# a GitHub package registry.
|
||||
@@ -471,7 +436,7 @@ jobs:
|
||||
run: |
|
||||
uname -a
|
||||
apt update
|
||||
apt -y install clang gcc g++ git python
|
||||
apt -y install clang gcc g++ git python3
|
||||
echo $PWD
|
||||
config=$PWD
|
||||
cd ..
|
||||
@@ -479,14 +444,14 @@ jobs:
|
||||
cd boost-root
|
||||
rm -rf libs/config/*
|
||||
cp -r $config/* libs/config
|
||||
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
./bootstrap.sh
|
||||
./b2 headers
|
||||
./b2 toolset=clang libs/config/test//print_config_info libs/config/test//print_math_info
|
||||
cd libs/config/test
|
||||
../../../b2 toolset=clang cxxstd=03,11,14,17
|
||||
emscripten_wasm:
|
||||
runs-on: ubuntu-20.04
|
||||
runs-on: ubuntu-22.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
@@ -515,7 +480,7 @@ jobs:
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits libs/static_assert libs/throw_exception libs/preprocessor
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
@@ -562,58 +527,3 @@ jobs:
|
||||
source ../emsdk/emsdk_env.sh
|
||||
emcc -pthread -s EXIT_RUNTIME=1 -s PTHREAD_POOL_SIZE=32 -s DISABLE_EXCEPTION_CATCHING=0 -I. -O3 -o config_test_pthread libs/config/test/config_test.cpp
|
||||
node --experimental-wasm-threads config_test_pthread
|
||||
ubuntu-cuda:
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
std: [ 11, 14, 17 ]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
- uses: mstachniuk/ci-skip@v1
|
||||
with:
|
||||
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||
commit-filter-separator: ';'
|
||||
fail-fast: true
|
||||
- uses: Jimver/cuda-toolkit@v0.2.4
|
||||
- name: Add repository
|
||||
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
|
||||
- name: Install packages
|
||||
run: sudo apt install g++-11 clang-11
|
||||
- name: Checkout main boost
|
||||
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||
- name: Update Dependencies
|
||||
run: git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
|
||||
working-directory: ../boost-root
|
||||
- name: Copy files
|
||||
run: cp -r $GITHUB_WORKSPACE/* libs/config
|
||||
working-directory: ../boost-root
|
||||
- name: Bootstrap
|
||||
run: ./bootstrap.sh
|
||||
working-directory: ../boost-root
|
||||
- name: Generate headers
|
||||
run: ./b2 headers
|
||||
working-directory: ../boost-root
|
||||
- name: nvcc version
|
||||
run: nvcc --version
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config info nvcc
|
||||
run: nvcc -std=c++${{ matrix.std }} -o config_info -I../../.. config_info.cpp && ./config_info
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config_test nvcc
|
||||
run: nvcc -std=c++${{ matrix.std }} -o config_test -I../../.. config_test.cpp && ./config_test
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config_test nvcc-cuda
|
||||
run: nvcc -c -std=c++${{ matrix.std }} -I../../.. config_test.cu
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config info nvcc+clang
|
||||
run: nvcc -std=c++${{ matrix.std }} --compiler-bindir=clang++ -o config_info -I../../.. config_info.cpp && ./config_info
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config_test nvcc+clang
|
||||
run: nvcc -std=c++${{ matrix.std }} --compiler-bindir=clang++ -o config_test -I../../.. config_test.cpp -latomic && ./config_test
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
- name: Config_test clang-cuda
|
||||
run: clang++ -nocudalib --no-cuda-version-check -c --cuda-gpu-arch=sm_75 -std=c++${{ matrix.std }} -I../../.. config_test.cu
|
||||
working-directory: ../boost-root/libs/config/test
|
||||
|
||||
Reference in New Issue
Block a user