Compare commits

..

6 Commits

Author SHA1 Message Date
jzmaddock
847d1b3ca3 Remove gcc-15 as it's not supported yet. 2025-05-06 10:40:25 +01:00
jzmaddock
4a8581914f Move old compilers to drone.
Try adding gcc-14 and 15 to github runner.
2025-05-06 10:37:57 +01:00
jzmaddock
007fc64da1 Tentatively fix Circle-ci build. 2025-05-06 09:45:36 +01:00
jzmaddock
c31aa2aee1 Merge pull request #515 from grafikrobot/patch-2
Move project dependencies to specific targets.
2025-04-16 09:20:12 +01:00
René Ferdinand Rivera Morell
897765e348 Move project dependencies to specific targets. 2025-04-15 14:49:59 -05:00
jzmaddock
cc87b132f8 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>
2025-04-15 10:40:21 +01:00
4 changed files with 51 additions and 95 deletions

View File

@@ -6,7 +6,7 @@ jobs:
- BOOST_LIBRARY=config
- CXX_STANDARD=gnu++11
docker:
- image: gcc:7
- image: gcc:13
steps:
- checkout
- run:
@@ -46,7 +46,7 @@ jobs:
- run:
name: Building inspect
command: |
cd $BOOST/boost/tools/inspect/build && ../../../b2 -j2 address-model=64 architecture=x86 toolset=gcc cxxflags="-std=gnu++14" release dist-bin
cd $BOOST/boost/tools/inspect && ../../b2 -j2 address-model=64 architecture=x86 toolset=gcc cxxflags="-std=gnu++14" release dist-bin
- run:
name: Building docs
command: |

View File

@@ -43,6 +43,8 @@ def main(ctx):
linux_cxx("clang++-8 03,11,14,17", "clang++-8", packages="clang-8", llvm_os="xenial", llvm_ver="8", buildtype="boost", image="cppalliance/droneubuntu1804:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-8', 'CXXSTD': '03,11,14,17,2a', }, globalenv=globalenv),
linux_cxx("clang++-9 03,11,14,17,2a", "clang++-9", packages="clang-9", llvm_os="xenial", llvm_ver="9", buildtype="boost", image="cppalliance/droneubuntu1804:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-9', 'CXXSTD': '03,11,14,17,2a', }, globalenv=globalenv),
linux_cxx("clang++-10 03,11,14,17,20", "clang++-10", packages="clang-10", llvm_os="xenial", llvm_ver="10", buildtype="boost", image="cppalliance/droneubuntu1804:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-10', 'CXXSTD': '03,11,14,17,20', }, globalenv=globalenv),
linux_cxx("clang++-11 03,11,14,17,20", "clang++-11", packages="clang-11", llvm_os="focal", llvm_ver="11", buildtype="boost", image="cppalliance/droneubuntu2004:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-11', 'CXXSTD': '03,11,14,17,20', }, globalenv=globalenv),
linux_cxx("clang++-12 03,11,14,17,20", "clang++-12", packages="clang-12", llvm_os="focal", llvm_ver="12", buildtype="boost", image="cppalliance/droneubuntu2004:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-12', 'CXXSTD': '03,11,14,17,20', }, globalenv=globalenv),
linux_cxx("Ubuntu g++-13", packages="g++-13", buildtype="boost", image="cppalliance/droneubuntu2304:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-13', 'CXXSTD': '14,17,20,23', }, globalenv=globalenv),
osx_cxx("XCode-11.7 03,11,17,2a", "clang++", packages="", buildtype="boost", xcode_version="11.7", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,17,2a', }, globalenv=globalenv),
osx_cxx("XCode-10.2 03,11,17,2a", "clang++", packages="", buildtype="boost", xcode_version="10.2", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,17,2a', }, globalenv=globalenv),

View File

@@ -14,6 +14,50 @@ on:
release:
types: [published, created, edited]
jobs:
ubuntu-noble:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
compiler: [ g++-13, g++-14 ]
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
- 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++-13 g++-14
- 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 libs/static_assert libs/throw_exception libs/preprocessor
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,20
working-directory: ../boost-root/libs/config/test
- name: Test
run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17,20
working-directory: ../boost-root/libs/config/test
ubuntu-jammy:
runs-on: ubuntu-22.04
strategy:
@@ -102,94 +146,6 @@ jobs:
- name: Test
run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17,20
working-directory: ../boost-root/libs/config/test
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@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
- 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 libs/static_assert libs/throw_exception libs/preprocessor
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-focal-clang:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
compiler: [ clang++-11, clang++-12 ]
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
- 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 clang-11 clang-12
- 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 libs/static_assert libs/throw_exception libs/preprocessor
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
macos:
runs-on: macos-latest
strategy:

View File

@@ -16,8 +16,6 @@ project
: requirements
<toolset>gcc:<cxxflags>-Wno-deprecated-declarations
<library>/boost/core//boost_core
<library>/boost/detail//boost_detail
<library>/boost/type_traits//boost_type_traits
;
@@ -92,9 +90,9 @@ test-suite config
[ run config_info.cpp : : : <test-info>always_show_run_output <exception-handling>off
<target-os>vxworks:<build>no
: config_info_no_except ]
[ run math_info.cpp : : : <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ]
[ run math_info.cpp : : : <library>/boost/type_traits//boost_type_traits <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ]
[ run abi/abi_test.cpp abi/main.cpp ]
[ run limits_test.cpp ]
[ run limits_test.cpp : : : <library>/boost/detail//boost_detail ]
[ run link/main.cpp link//link_test
: #args
: #input-files
@@ -129,7 +127,7 @@ explicit has_clang_implicit_fallthrough ;
exe config_info_printer : config_info.cpp ;
explicit config_info_printer ;
exe math_info_printer : math_info.cpp ;
exe math_info_printer : math_info.cpp : <library>/boost/type_traits//boost_type_traits ;
explicit math_info_printer ;
actions print-run