Compare commits

..

6 Commits

Author SHA1 Message Date
Glen Fernandes
4e9d5a3a95 Merge branch 'develop' 2024-12-16 05:26:27 -05:00
Glen Fernandes
5e98c6ddd4 Merge pull request #502 from boostorg/develop
Merge develop to master
2024-08-16 20:00:34 -04:00
Glen Fernandes
2bd6f0dfc5 Merge branch 'develop' 2024-04-18 08:20:52 -04:00
jzmaddock
11385ec210 Merge branch 'develop' 2024-02-04 09:46:22 +00:00
Marshall Clow
eef05e9813 Update version.hpp to 1.85.0 2023-12-19 12:49:14 +02:00
jzmaddock
cbeca533d2 Merge for 1 84 (#490)
* Update cxxstd values for GHA msvc jobs

* Add msvc support for [[maybe_unused]] attribute.
Fixes: https://github.com/boostorg/serialization/issues/271

Also removes failing cuda+clang test as it's an inscrutable system setup issue.

* Add C++23 header macros.

* Minor corrections.

* Remove XCode-9.4 testing as it appears to be no longer supported.

* Update docs for C++23 macros.
[CI SKIP]

* Add C++23 feature test macro support.

* Use __apple_build_version__ to detect Apple clang

…since __APPLE__ is defined by both Apple Clang and LLVM.org Clang
on Apple platforms.

* Update BOOST_CLANG_VERSION for Xcode 14.3, 15.0, 15.1

* Update CI clang version now that gcc has changed. (#489)

---------

Co-authored-by: Peter Dimov <pdimov@gmail.com>
Co-authored-by: Christopher Chavez <chrischavez@gmx.us>
2023-11-04 09:27:38 +00:00
19 changed files with 139 additions and 110 deletions

View File

@@ -25,9 +25,6 @@ git submodule update --init libs/detail
git submodule update --init libs/core
git submodule update --init libs/assert
git submodule update --init libs/type_traits
git submodule update --init libs/throw_exception
git submodule update --init libs/static_assert
git submodule update --init libs/preprocessor
cp -r $TRAVIS_BUILD_DIR/* libs/config
./bootstrap.sh
./b2 headers

View File

@@ -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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -190,8 +190,43 @@ jobs:
- name: Test
run: ../../../b2 toolset=$TOOLSET cxxstd=03,11,14,17,2a
working-directory: ../boost-root/libs/config/test
macos:
runs-on: macos-latest
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
strategy:
fail-fast: false
matrix:
@@ -208,7 +243,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -220,7 +255,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,20
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
@@ -246,7 +281,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -284,7 +319,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -322,7 +357,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -360,7 +395,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -377,20 +412,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_22_04_gcc:
runs-on: ubuntu-22.04
non_intel_ubuntu_20_04_gcc:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
qemu_arch: [ aarch64, s390x, ppc64le ]
steps:
- uses: actions/checkout@v3
- uses: uraimo/run-on-arch-action@v3
- uses: uraimo/run-on-arch-action@v2
name: Run commands
id: runcmd
with:
arch: ${{ matrix.qemu_arch }}
distro: ubuntu22.04
distro: ubuntu20.04
# Not required, but speeds up builds by storing container images in
# a GitHub package registry.
@@ -400,7 +435,7 @@ jobs:
run: |
uname -a
apt update
apt -y install gcc g++ git python3
apt -y install gcc g++ git python
echo $PWD
config=$PWD
cd ..
@@ -408,25 +443,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 libs/static_assert libs/throw_exception libs/preprocessor
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
./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_22_04_clang:
runs-on: ubuntu-22.04
non_intel_ubuntu_20_04_clang:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
qemu_arch: [ aarch64, ppc64le ]
steps:
- uses: actions/checkout@v3
- uses: uraimo/run-on-arch-action@v3
- uses: uraimo/run-on-arch-action@v2
name: Run commands
id: runcmd
with:
arch: ${{ matrix.qemu_arch }}
distro: ubuntu22.04
distro: ubuntu20.04
# Not required, but speeds up builds by storing container images in
# a GitHub package registry.
@@ -436,7 +471,7 @@ jobs:
run: |
uname -a
apt update
apt -y install clang gcc g++ git python3
apt -y install clang gcc g++ git python
echo $PWD
config=$PWD
cd ..
@@ -444,14 +479,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 libs/static_assert libs/throw_exception libs/preprocessor
git submodule update --init tools/build tools/boost_install libs/headers libs/detail libs/core libs/assert libs/type_traits
./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-22.04
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
@@ -480,7 +515,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 libs/static_assert libs/throw_exception libs/preprocessor
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
@@ -527,3 +562,58 @@ 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

View File

@@ -1,32 +0,0 @@
# Copyright René Ferdinand Rivera Morell 2023-2024
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
require-b2 5.2 ;
path-constant BOOST_CONFIG_ROOT : . ;
import-search $(BOOST_CONFIG_ROOT)/checks ;
project /boost/config
: common-requirements
<include>include
;
explicit
[ alias boost_config : : : : <library>$(boost_dependencies) ]
[ alias all : boost_config test ]
[ alias testing
: # sources
: # requirements
: # default-buidl
: # usage-requirements
<include>test
]
;
call-if : boost-library config
;
use-project /boost/architecture : checks/architecture ;

View File

@@ -1,6 +1,6 @@
#
# *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Mon Jan 22 16:16:53 2024
# This file was automatically generated on Fri Oct 13 19:09:38 2023
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -177,9 +177,4 @@
#endif
#endif
#if _LIBCPP_VERSION <= 170006
// no std::ranges::join_view
# define BOOST_NO_CXX20_HDR_RANGES
#endif
// --- end ---

View File

@@ -10,20 +10,15 @@
import feature ;
import testing ;
import notfile ;
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
;
import modules ;
import-search /boost/config/checks ;
import config : requires ;
import ../checks/config : requires ;
local is_unix = [ modules.peek : UNIX ] ;
@@ -103,7 +98,7 @@ test-suite config
<threading>single
<define>BOOST_DYN_LINK=1
<define>BOOST_CONFIG_NO_LIB=1
<target-os>vxworks:<link>shared
<target-os>vxworks:<link>shared
:
config_link_test
]

View File

@@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Mon Jan 22 16:16:53 2024
# This file was automatically generated on Fri Oct 13 19:09:38 2023
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the

View File

@@ -1,12 +1,12 @@
# copyright John Maddock 2003
# Use, modification and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# Use, modification and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
project
: requirements
: requirements
# threading tests require thread support turned on:
<threading>multi
;
local test-requirements = <library>/boost/test//boost_test_exec_monitor ;
local test-requirements = <library>../../test/build//boost_test_exec_monitor ;

View File

@@ -1273,22 +1273,6 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_VOID_RETURNS);
// END GENERATED BLOCK
PRINT_MACRO(BOOST_CXX_VERSION);

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Mon Jan 22 16:16:53 2024
// This file was automatically generated on Fri Oct 13 19:09:38 2023
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-21.
// Use, modification and distribution are subject to the

View File

@@ -1,11 +1,11 @@
# Copyright John Maddock 2005.
# Use, modification and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# Use, modification and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
run generate.cpp
/boost/regex//boost_regex
/boost/filesystem//boost_filesystem /boost/system//boost_system
run generate.cpp
../../regex/build//boost_regex
../../filesystem/build//boost_filesystem ../../system/build//boost_system
: ../../..
;