| # Copyright 2020 Evan Miller |
| # Copyright 2020 Matt Borland |
| # Copyright 2021 John Maddock |
| # Distributed under the Boost Software License, Version 1.0. |
| # (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt) |
| |
| name: CI |
| on: [ push, pull_request ] |
| jobs: |
| ubuntu-focal: |
| runs-on: ubuntu-20.04 |
| strategy: |
| fail-fast: false |
| matrix: |
| compiler: [ g++-9, g++-10, clang++-9, clang++-10 ] |
| steps: |
| - uses: actions/checkout@v2 |
| 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 |
| - name: Set TOOLSET |
| run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV |
| - name: Add repository |
| run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" |
| - name: Install packages |
| run: sudo apt install g++-9 g++-10 clang-9 clang-10 |
| - 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: Generate user config |
| run: 'echo "using $TOOLSET : : ${{ matrix.compiler }} ;" > ~/user-config.jam' |
| working-directory: ../boost-root |
| - name: Config info |
| run: ../../../b2 print_config_info toolset=$TOOLSET cxxstd=03,11,14,17,2a |
| working-directory: ../boost-root/libs/config/test |
| - name: Test |
| run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17,2a |
| working-directory: ../boost-root/libs/config/test |
| ubuntu-bionic: |
| runs-on: ubuntu-18.04 |
| strategy: |
| fail-fast: false |
| matrix: |
| compiler: [ g++-7, g++-8, clang++-7, clang++-8 ] |
| steps: |
| - uses: actions/checkout@v2 |
| 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 |
| - name: Set TOOLSET |
| run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV |
| - name: Add repository |
| run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" |
| - name: Install packages |
| run: sudo apt install g++-7 g++-8 clang-7 clang-8 |
| - 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: Generate user config |
| run: 'echo "using $TOOLSET : : ${{ matrix.compiler }} ;" > ~/user-config.jam' |
| working-directory: ../boost-root |
| - name: Config info install |
| run: ../../../b2 print_config_info toolset=$TOOLSET cxxstd=03,11,14,17 |
| working-directory: ../boost-root/libs/config/test |
| - name: Test |
| run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17 |
| working-directory: ../boost-root/libs/config/test |
| macos: |
| runs-on: macos-latest |
| strategy: |
| fail-fast: false |
| matrix: |
| toolset: [ clang ] |
| steps: |
| - uses: actions/checkout@v2 |
| 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 |
| windows_msvc_14_0: |
| runs-on: windows-latest |
| defaults: |
| run: |
| shell: cmd |
| strategy: |
| fail-fast: false |
| matrix: |
| toolset: [ msvc-14.0 ] |
| steps: |
| - uses: actions/checkout@v2 |
| with: |
| fetch-depth: '0' |
| - uses: mstachniuk/ci-skip@v1 |
| with: |
| commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[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: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config |
| working-directory: ../boost-root |
| - name: Bootstrap |
| run: bootstrap |
| working-directory: ../boost-root |
| - name: Generate headers |
| run: b2 headers |
| working-directory: ../boost-root |
| - name: Config info |
| run: ..\..\..\b2 print_config_info cxxstd=14,17 address-model=64 toolset=msvc-14.0 |
| working-directory: ../boost-root/libs/config/test |
| - name: Test |
| run: ..\..\..\b2 --hash address-model=64 cxxstd=14,17 toolset=msvc-14.0 |
| working-directory: ../boost-root/libs/config/test |
| windows_msvc_14_2: |
| runs-on: windows-latest |
| defaults: |
| run: |
| shell: cmd |
| strategy: |
| fail-fast: false |
| matrix: |
| toolset: [ msvc-14.2 ] |
| steps: |
| - uses: actions/checkout@v2 |
| with: |
| fetch-depth: '0' |
| - uses: mstachniuk/ci-skip@v1 |
| with: |
| commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[apple];[Apple];[APPLE];[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: xcopy /s /e /q %GITHUB_WORKSPACE% libs\config |
| working-directory: ../boost-root |
| - name: Bootstrap |
| run: bootstrap |
| working-directory: ../boost-root |
| - name: Generate headers |
| run: b2 headers |
| working-directory: ../boost-root |
| - name: Config info |
| run: ..\..\..\b2 print_config_info cxxstd=14,17,20 address-model=64 toolset=msvc-14.2 |
| working-directory: ../boost-root/libs/config/test |
| - name: Test |
| run: ..\..\..\b2 --hash address-model=64 cxxstd=14,17,20 toolset=msvc-14.2 |
| working-directory: ../boost-root/libs/config/test |