Fix compile test CML and add CMake testing #2172
Workflow file for this run
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
# Copyright 2020 Evan Miller | |
# Copyright 2020 Matt Borland | |
# 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: | |
branches: | |
- master | |
- develop | |
- feature/** | |
pull_request: | |
release: | |
types: [published, created, edited] | |
concurrency: | |
group: ${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
ubuntu-noble: | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-14, clang++-16, clang++-17, clang++-18 ] | |
standard: [ c++20 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Set TOOLSET | |
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y g++-13 g++-14 clang-16 clang-17 clang-18 libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam' | |
working-directory: ../boost-root | |
- name: Config info install | |
run: ../../../b2 config_info_travis_install toolset=$TOOLSET | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: ./config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER define=BOOST_MATH_RUN_MP_TESTS | |
working-directory: ../boost-root/libs/math/test | |
ubuntu-jammy: | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-12, clang++-14, clang++-15 ] | |
standard: [ c++14, c++17 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Set TOOLSET | |
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y g++-12 clang-14 clang-15 libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam' | |
working-directory: ../boost-root | |
- name: Config info install | |
run: ../../../b2 config_info_travis_install toolset=$TOOLSET | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: ./config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER define=BOOST_MATH_RUN_MP_TESTS | |
working-directory: ../boost-root/libs/math/test | |
ubuntu-focal-no-eh: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-9, g++-11, clang++-10 ] | |
standard: [ c++14, c++17, c++2a ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Set TOOLSET | |
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y g++-9 g++-11 clang-9 clang-10 libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam' | |
working-directory: ../boost-root | |
- name: Config info install | |
run: ../../../b2 config_info_travis_install toolset=$TOOLSET | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: ./config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ../../../b2 toolset=$TOOLSET no_eh_tests exception-handling=off rtti=off define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER | |
working-directory: ../boost-root/libs/math/test | |
macos: | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
toolset: [ clang ] | |
standard: [ 14, 17, 20 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 install | |
run: ../../../b2 config_info_travis_install toolset=${{ matrix.toolset }} cxxstd=${{ matrix.standard }} | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: ./config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ../../../b2 toolset=${{ matrix.toolset }} cxxstd=${{ matrix.standard }} ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER | |
working-directory: ../boost-root/libs/math/test | |
windows: | |
runs-on: windows-2019 | |
defaults: | |
run: | |
shell: cmd | |
env: | |
ARGS: toolset=${{ matrix.toolset }} address-model=64 cxxstd=${{ matrix.standard }} | |
ARGSLATEST: toolset=${{ matrix.toolset }} address-model=64 cxxstd=latest | |
strategy: | |
fail-fast: false | |
matrix: | |
toolset: [ msvc-14.2 ] | |
standard: [ 14, 17 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 install | |
run: ..\..\..\b2 config_info_travis_install %ARGS% | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test std-14 vc140 and std-14-17 vc142 | |
if: ${{ matrix.toolset != 'msvc-14.0' || matrix.standard != '17' }} | |
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES debug-symbols=off ${{ matrix.suite }} pch=off | |
working-directory: ../boost-root/libs/math/test | |
- name: Test std-latest vc140 | |
if: ${{ matrix.toolset == 'msvc-14.0' && matrix.standard == '17' }} | |
run: ..\..\..\b2 --hash %ARGSLATEST% define=CI_SUPPRESS_KNOWN_ISSUES debug-symbols=off ${{ matrix.suite }} pch=off | |
working-directory: ../boost-root/libs/math/test | |
windows_gcc: | |
runs-on: windows-2019 | |
defaults: | |
run: | |
shell: cmd | |
env: | |
ARGS: toolset=${{ matrix.toolset }} address-model=64 cxxstd=${{ matrix.standard }} | |
strategy: | |
fail-fast: false | |
matrix: | |
toolset: [ gcc ] | |
standard: [ 14, 17 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 install | |
run: ..\..\..\b2 config_info_travis_install %ARGS% | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES ${{ matrix.suite }} | |
working-directory: ../boost-root/libs/math/test | |
MSVC2022: | |
runs-on: windows-2022 | |
defaults: | |
run: | |
shell: cmd | |
env: | |
ARGS: address-model=64 cxxstd=${{ matrix.standard }} | |
strategy: | |
fail-fast: false | |
matrix: | |
toolset: [ msvc-14.3, clang-win ] | |
standard: [ 14, 17, latest ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: xcopy /s /e /q %GITHUB_WORKSPACE% libs\math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 install | |
run: ..\..\..\b2 config_info_travis_install %ARGS% | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ..\..\..\b2 --hash %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES ${{ matrix.suite }} pch=off | |
working-directory: ../boost-root/libs/math/test | |
cygwin: | |
runs-on: windows-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-11 ] | |
standard: [ c++17 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
env: | |
TOOLSET: gcc | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Install Cygwin | |
run: choco install -y cygwin | |
- name: Install Package Manager | |
run: choco install -y cyg-get | |
- name: Install Packages | |
run: cyg-get git gcc-core gcc-g++ python39 libgmp-devel libmpfr-devel libfftw3-devel | |
- name: Checkout main boost | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE") && git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root' | |
- name: Update tools/boostdep | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root && git submodule update --init tools/boostdep' | |
- name: Copy files | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE") && cp -r * ../boost-root/libs/math' | |
- name: Install deps | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root && python tools/boostdep/depinst/depinst.py math -I example -I tools' | |
- name: Bootstrap | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root && ./bootstrap.sh' | |
- name: Generate headers | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root && ./b2 headers' | |
- name: Config info install | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root/libs/config/test && ../../../b2 config_info_travis_install toolset=$TOOLSET' | |
- name: Config info | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root/libs/config/test && ./config_info_travis' | |
- name: Test | |
run: C:\\tools\\cygwin\\bin\\bash -l -c 'cd $(cygpath -u "$GITHUB_WORKSPACE")/../boost-root/libs/math/test && ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER' | |
standalone-compile-tests-gcc: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-10 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y g++-10 libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Run CMake | |
run: cmake -DBUILD_TESTING=1 -DCMAKE_CXX_COMPILER=g++-10 . | |
working-directory: ../boost-root/libs/math | |
- name: Run Compile Tests | |
run: make -j$((`nproc`+1)) | |
working-directory: ../boost-root/libs/math | |
standalone-compile-tests-clang: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ clang++-10 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y clang-10 libgmp-dev libmpfr-dev libfftw3-dev libtbb-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Run CMake | |
run: cmake -DBUILD_TESTING=1 -DCMAKE_CXX_COMPILER=clang++-10 . | |
working-directory: ../boost-root/libs/math | |
- name: Run Compile Tests | |
run: make -j$((`nproc`+1)) | |
working-directory: ../boost-root/libs/math | |
standalone-gcc: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [ g++-10 ] | |
standard: [ c++14, c++17, c++20 ] | |
suite: [ github_ci_block_1, github_ci_block_2 ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: '0' | |
- name: Set TOOLSET | |
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV | |
- name: Add repository | |
continue-on-error: true | |
id: addrepo | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo | |
continue-on-error: true | |
id: retry1 | |
if: steps.addrepo.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Retry Add Repo 2 | |
continue-on-error: true | |
id: retry2 | |
if: steps.retry1.outcome=='failure' | |
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test" | |
- name: Install packages | |
run: sudo apt-get install -y g++-10 libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Checkout main boost | |
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root | |
- name: Update tools/boostdep | |
run: git submodule update --init tools/boostdep | |
working-directory: ../boost-root | |
- name: Copy files | |
run: cp -r $GITHUB_WORKSPACE/* libs/math | |
working-directory: ../boost-root | |
- name: Install deps | |
run: python tools/boostdep/depinst/depinst.py math -I example -I tools | |
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 }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam' | |
working-directory: ../boost-root | |
- name: Config info install | |
run: ../../../b2 config_info_travis_install toolset=$TOOLSET | |
working-directory: ../boost-root/libs/config/test | |
- name: Config info | |
run: ./config_info_travis | |
working-directory: ../boost-root/libs/config/test | |
- name: Test | |
run: ../../../b2 toolset=$TOOLSET ${{ matrix.suite }} define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER define=BOOST_MATH_STANDALONE define=BOOST_MP_STANDALONE | |
working-directory: ../boost-root/libs/math/test | |
posix-cmake-test: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-22.04 | |
runs-on: ${{matrix.os}} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install packages | |
if: matrix.install | |
run: sudo apt install ${{matrix.install}} libgmp-dev libmpfr-dev libfftw3-dev | |
- name: Setup Boost | |
run: | | |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY | |
LIBRARY=${GITHUB_REPOSITORY#*/} | |
echo LIBRARY: $LIBRARY | |
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV | |
echo GITHUB_BASE_REF: $GITHUB_BASE_REF | |
echo GITHUB_REF: $GITHUB_REF | |
REF=${GITHUB_BASE_REF:-$GITHUB_REF} | |
REF=${REF#refs/heads/} | |
echo REF: $REF | |
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true | |
echo BOOST_BRANCH: $BOOST_BRANCH | |
cd .. | |
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root | |
cd boost-root | |
mkdir -p libs/$LIBRARY | |
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY | |
git submodule update --init tools/boostdep | |
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY | |
- name: Configure | |
run: | | |
cd ../boost-root | |
mkdir __build__ && cd __build__ | |
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON .. | |
- name: Build tests | |
run: | | |
cd ../boost-root/__build__ | |
cmake --build . | |
- name: Run tests | |
run: | | |
cd ../boost-root/__build__ | |
ctest --output-on-failure --no-tests=error | |
sycl-cmake-test: | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
- name: Intel Apt repository | |
timeout-minutes: 1 | |
run: | | |
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB | |
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB | |
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB | |
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list | |
sudo apt-get update | |
- name: Install Intel oneAPI compilers | |
timeout-minutes: 5 | |
run: sudo apt-get install intel-oneapi-compiler-fortran intel-oneapi-compiler-dpcpp-cpp | |
- name: Setup Intel oneAPI environment | |
run: | | |
source /opt/intel/oneapi/setvars.sh | |
printenv >> $GITHUB_ENV | |
- name: checkout project code | |
uses: actions/checkout@v4 | |
- name: Install Packages | |
run: | | |
sudo apt-get install -y cmake make | |
- name: Setup Boost | |
run: | | |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY | |
LIBRARY=${GITHUB_REPOSITORY#*/} | |
echo LIBRARY: $LIBRARY | |
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV | |
echo GITHUB_BASE_REF: $GITHUB_BASE_REF | |
echo GITHUB_REF: $GITHUB_REF | |
REF=${GITHUB_BASE_REF:-$GITHUB_REF} | |
REF=${REF#refs/heads/} | |
echo REF: $REF | |
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true | |
echo BOOST_BRANCH: $BOOST_BRANCH | |
cd .. | |
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root | |
cd boost-root | |
mkdir -p libs/$LIBRARY | |
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY | |
git submodule update --init tools/boostdep | |
python3 tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY | |
- name: Configure | |
run: | | |
cd ../boost-root | |
mkdir __build__ && cd __build__ | |
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON -DBOOST_MATH_ENABLE_SYCL=ON .. | |
- name: Build tests | |
run: | | |
cd ../boost-root/__build__ | |
cmake --build . --target tests -j $(nproc) | |
- name: Run tests | |
run: | | |
cd ../boost-root/__build__ | |
ctest --output-on-failure --no-tests=error | |
cuda-cmake-test: | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: Jimver/cuda-toolkit@v0.2.16 | |
id: cuda-toolkit | |
with: | |
cuda: '12.5.0' | |
method: 'network' | |
sub-packages: '["nvcc"]' | |
- name: Output CUDA information | |
run: | | |
echo "Installed cuda version is: ${{steps.cuda-toolkit.outputs.cuda}}"+ | |
echo "Cuda install location: ${{steps.cuda-toolkit.outputs.CUDA_PATH}}" | |
nvcc -V | |
- uses: actions/checkout@v4 | |
- name: Install Packages | |
run: | | |
sudo apt-get install -y cmake make | |
- name: Setup Boost | |
run: | | |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY | |
LIBRARY=${GITHUB_REPOSITORY#*/} | |
echo LIBRARY: $LIBRARY | |
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV | |
echo GITHUB_BASE_REF: $GITHUB_BASE_REF | |
echo GITHUB_REF: $GITHUB_REF | |
REF=${GITHUB_BASE_REF:-$GITHUB_REF} | |
REF=${REF#refs/heads/} | |
echo REF: $REF | |
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true | |
echo BOOST_BRANCH: $BOOST_BRANCH | |
cd .. | |
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root | |
cd boost-root | |
mkdir -p libs/$LIBRARY | |
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY | |
git submodule update --init tools/boostdep | |
python3 tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY | |
- name: Configure | |
run: | | |
cd ../boost-root | |
mkdir __build__ && cd __build__ | |
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON -DCMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc -DBOOST_MATH_ENABLE_CUDA=1 -DCMAKE_CUDA_ARCHITECTURES=70 -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.5 .. | |
- name: Build tests | |
run: | | |
cd ../boost-root/__build__ | |
cmake --build . --target tests -j $(nproc) | |
# Will leave this commented out for now. GHA does not install graphics cards by default | |
#- name: Run tests | |
# run: | | |
# cd ../boost-root/__build__ | |
# ctest --output-on-failure --no-tests=error | |
nvrtc-cmake-test: | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: Jimver/cuda-toolkit@v0.2.16 | |
id: cuda-toolkit | |
with: | |
cuda: '12.5.0' | |
method: 'network' | |
- name: Output CUDA information | |
run: | | |
echo "Installed cuda version is: ${{steps.cuda-toolkit.outputs.cuda}}"+ | |
echo "Cuda install location: ${{steps.cuda-toolkit.outputs.CUDA_PATH}}" | |
nvcc -V | |
- uses: actions/checkout@v4 | |
- name: Install Packages | |
run: | | |
sudo apt-get install -y cmake make | |
- name: Setup Boost | |
run: | | |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY | |
LIBRARY=${GITHUB_REPOSITORY#*/} | |
echo LIBRARY: $LIBRARY | |
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV | |
echo GITHUB_BASE_REF: $GITHUB_BASE_REF | |
echo GITHUB_REF: $GITHUB_REF | |
REF=${GITHUB_BASE_REF:-$GITHUB_REF} | |
REF=${REF#refs/heads/} | |
echo REF: $REF | |
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true | |
echo BOOST_BRANCH: $BOOST_BRANCH | |
cd .. | |
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root | |
cd boost-root | |
mkdir -p libs/$LIBRARY | |
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY | |
git submodule update --init tools/boostdep | |
python3 tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY | |
- name: Configure | |
run: | | |
cd ../boost-root | |
mkdir __build__ && cd __build__ | |
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON -DCMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc -DBOOST_MATH_ENABLE_NVRTC=1 -DCMAKE_CUDA_ARCHITECTURES=70 -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.5 -DBOOST_MATH_NVRTC_CI_RUN=1 .. | |
pwd | |
- name: Build tests | |
run: | | |
cd ../boost-root/__build__ | |
cmake --build . --target tests -j $(nproc) | |
# We don't have the ability for runtime right now | |
#- name: Run tests | |
# run: | | |
# cd ../boost-root/__build__ | |
# ctest --output-on-failure --no-tests=error |