From 2d670169dc18911cfb5918a37bdd99a3256b1b4e Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Tue, 16 Apr 2024 22:17:54 +0300 Subject: [PATCH 1/8] Update doc/Jamfile --- doc/Jamfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/Jamfile b/doc/Jamfile index fb4caba..6502698 100644 --- a/doc/Jamfile +++ b/doc/Jamfile @@ -4,7 +4,7 @@ # Distributed under the Boost Software License, Version 1.0. # (http://www.boost.org/LICENSE_1_0.txt) -import asciidoctor ; +using asciidoctor ; html endian.html : endian.adoc ; From 0a25317ece2db1d76d779eb2b2fc8891e749ae27 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Tue, 16 Apr 2024 22:36:06 +0300 Subject: [PATCH 2/8] Revert "Update doc/Jamfile" This reverts commit 2d670169dc18911cfb5918a37bdd99a3256b1b4e. --- doc/Jamfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/Jamfile b/doc/Jamfile index 6502698..fb4caba 100644 --- a/doc/Jamfile +++ b/doc/Jamfile @@ -4,7 +4,7 @@ # Distributed under the Boost Software License, Version 1.0. # (http://www.boost.org/LICENSE_1_0.txt) -using asciidoctor ; +import asciidoctor ; html endian.html : endian.adoc ; From 7b594b2a9aa677209701684867c353f98a9a9089 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Wed, 17 Apr 2024 04:25:27 +0300 Subject: [PATCH 3/8] Update ci.yml --- .github/workflows/ci.yml | 66 +++++++++++++++++++++++++++++++--------- 1 file changed, 51 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 07daf9a..eaf029d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,22 +17,34 @@ jobs: fail-fast: false matrix: include: + - toolset: gcc-4.7 + cxxstd: "11" + container: ubuntu:16.04 + os: ubuntu-latest + install: g++-4.7-multilib + address-model: 32,64 - toolset: gcc-4.8 cxxstd: "11" - os: ubuntu-latest container: ubuntu:18.04 + os: ubuntu-latest install: g++-4.8-multilib address-model: 32,64 + - toolset: gcc-4.9 + cxxstd: "11" + container: ubuntu:16.04 + os: ubuntu-latest + install: g++-4.9-multilib + address-model: 32,64 - toolset: gcc-5 cxxstd: "11,14,1z" - os: ubuntu-latest container: ubuntu:18.04 + os: ubuntu-latest install: g++-5-multilib address-model: 32,64 - toolset: gcc-6 cxxstd: "11,14,1z" - os: ubuntu-latest container: ubuntu:18.04 + os: ubuntu-latest install: g++-6-multilib address-model: 32,64 - toolset: gcc-7 @@ -65,6 +77,12 @@ jobs: os: ubuntu-22.04 install: g++-12-multilib address-model: 32,64 + - toolset: gcc-13 + cxxstd: "11,14,17,20,2b" + container: ubuntu:23.04 + os: ubuntu-latest + install: g++-13-multilib + address-model: 32,64 - toolset: clang compiler: clang++-3.9 cxxstd: "11,14" @@ -121,18 +139,33 @@ jobs: - toolset: clang compiler: clang++-13 cxxstd: "11,14,17,20,2b" - os: ubuntu-22.04 + container: ubuntu:22.04 + os: ubuntu-latest install: clang-13 - toolset: clang compiler: clang++-14 cxxstd: "11,14,17,20,2b" - os: ubuntu-22.04 + container: ubuntu:22.04 + os: ubuntu-latest install: clang-14 - toolset: clang compiler: clang++-15 cxxstd: "11,14,17,20,2b" - os: ubuntu-22.04 + container: ubuntu:22.04 + os: ubuntu-latest install: clang-15 + - toolset: clang + compiler: clang++-16 + cxxstd: "11,14,17,20,2b" + container: ubuntu:23.04 + os: ubuntu-latest + install: clang-16 + - toolset: clang + compiler: clang++-17 + cxxstd: "11,14,17,20,2b" + container: ubuntu:23.10 + os: ubuntu-latest + install: clang-17 - toolset: clang cxxstd: "11,14,17,2a" os: macos-11 @@ -142,6 +175,9 @@ jobs: - toolset: clang cxxstd: "11,14,17,20,2b" os: macos-13 + - toolset: clang + cxxstd: "11,14,17,20,2b" + os: macos-14 runs-on: ${{matrix.os}} container: ${{matrix.container}} @@ -157,7 +193,7 @@ jobs: if: matrix.container run: | apt-get update - apt-get -y install sudo python git g++ + apt-get -y install sudo python3 git g++ - name: Install packages if: matrix.install @@ -183,7 +219,7 @@ jobs: cd boost-root cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY git submodule update --init tools/boostdep - python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY + python3 tools/boostdep/depinst/depinst.py $LIBRARY ./bootstrap.sh ./b2 -d0 headers @@ -227,7 +263,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Boost shell: cmd @@ -271,7 +307,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install packages if: matrix.install @@ -319,7 +355,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install packages if: matrix.install @@ -377,7 +413,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install packages if: matrix.install @@ -430,7 +466,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Boost shell: cmd @@ -479,7 +515,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Boost shell: cmd @@ -546,7 +582,7 @@ jobs: runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Boost shell: cmd From b9b6db51bc4421b8c4cf9af9d03aff860a60e18b Mon Sep 17 00:00:00 2001 From: sdarwin Date: Wed, 17 Apr 2024 11:37:34 -0600 Subject: [PATCH 4/8] Add drone debugging variable DRONE_STAGE_MACHINE --- .drone/drone.bat | 2 ++ .drone/drone.sh | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.drone/drone.bat b/.drone/drone.bat index 66aaf78..0a2f87c 100644 --- a/.drone/drone.bat +++ b/.drone/drone.bat @@ -7,6 +7,8 @@ set LIBRARY=%1 set DRONE_BUILD_DIR=%CD% +echo %DRONE_STAGE_MACHINE% + set BOOST_BRANCH=develop if "%DRONE_BRANCH%" == "master" set BOOST_BRANCH=master cd .. diff --git a/.drone/drone.sh b/.drone/drone.sh index 2f2125d..713f4a4 100755 --- a/.drone/drone.sh +++ b/.drone/drone.sh @@ -6,6 +6,8 @@ set -ex export PATH=~/.local/bin:/usr/local/bin:$PATH +uname -a +echo $DRONE_STAGE_MACHINE DRONE_BUILD_DIR=$(pwd) From 3b33adbea3e7055173552ea9e3f91195e4c3ff64 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Wed, 17 Apr 2024 19:18:12 +0300 Subject: [PATCH 5/8] Update .drone.jsonnet --- .drone.jsonnet | 86 +++++++++++++++++++++++++++++++++++++------------- 1 file changed, 64 insertions(+), 22 deletions(-) diff --git a/.drone.jsonnet b/.drone.jsonnet index 8f039cc..2aa2870 100644 --- a/.drone.jsonnet +++ b/.drone.jsonnet @@ -101,7 +101,6 @@ local windows_pipeline(name, image, environment, arch = "amd64") = "cppalliance/droneubuntu1404:1", { TOOLSET: 'gcc', COMPILER: 'g++-4.6', CXXSTD: '0x', ADDRMD: '32,64' }, "g++-4.6-multilib", - [ "ppa:ubuntu-toolchain-r/test" ], ), linux_pipeline( @@ -109,7 +108,6 @@ local windows_pipeline(name, image, environment, arch = "amd64") = "cppalliance/droneubuntu1404:1", { TOOLSET: 'gcc', COMPILER: 'g++-4.7', CXXSTD: '0x', ADDRMD: '32,64' }, "g++-4.7-multilib", - [ "ppa:ubuntu-toolchain-r/test" ], ), linux_pipeline( @@ -119,11 +117,16 @@ local windows_pipeline(name, image, environment, arch = "amd64") = ), linux_pipeline( - "Linux 14.04 GCC 4.9 32/64", - "cppalliance/droneubuntu1404:1", + "Linux 16.04 GCC 4.9 32/64", + "cppalliance/droneubuntu1604:1", { TOOLSET: 'gcc', COMPILER: 'g++-4.9', CXXSTD: '11', ADDRMD: '32,64' }, "g++-4.9-multilib", - [ "ppa:ubuntu-toolchain-r/test" ], + ), + + linux_pipeline( + "Linux 16.04 GCC 5* 32/64", + "cppalliance/droneubuntu1604:1", + { TOOLSET: 'gcc', COMPILER: 'g++', CXXSTD: '11,14', ADDRMD: '32,64' }, ), linux_pipeline( @@ -141,37 +144,44 @@ local windows_pipeline(name, image, environment, arch = "amd64") = ), linux_pipeline( - "Linux 22.04 GCC 12 32 ASAN", + "Linux 22.04 GCC 12 32/64", "cppalliance/droneubuntu2204:1", - { TOOLSET: 'gcc', COMPILER: 'g++-12', CXXSTD: '11,14,17,20', ADDRMD: '32' } + asan, + { TOOLSET: 'gcc', COMPILER: 'g++-12', CXXSTD: '11,14,17,20', ADDRMD: '32,64' }, "g++-12-multilib", ), linux_pipeline( - "Linux 22.04 GCC 12 64 ASAN", - "cppalliance/droneubuntu2204:1", - { TOOLSET: 'gcc', COMPILER: 'g++-12', CXXSTD: '11,14,17,20', ADDRMD: '64' } + asan, - "g++-12-multilib", - ), - - linux_pipeline( - "Linux 23.04 GCC 13 32/64", + "Linux 23.04 GCC 13 32 UBSAN", "cppalliance/droneubuntu2304:1", - { TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '11,14,17,20,2b', ADDRMD: '32,64' }, + { TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '11,14,17,20,2b', ADDRMD: '32' } + ubsan, "g++-13-multilib", ), linux_pipeline( - "Linux 22.04 Clang 15 UBSAN", - "cppalliance/droneubuntu2204:1", - { TOOLSET: 'clang', COMPILER: 'clang++-15', CXXSTD: '11,14,17,20,2b' } + ubsan, - "clang-15", + "Linux 23.04 GCC 13 64 UBSAN", + "cppalliance/droneubuntu2304:1", + { TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '11,14,17,20,2b', ADDRMD: '64' } + ubsan, + "g++-13-multilib", ), linux_pipeline( - "Linux 22.04 Clang 15 ASAN", + "Linux 23.04 GCC 13 32 ASAN", + "cppalliance/droneubuntu2304:1", + { TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '11,14,17,20,2b', ADDRMD: '32' } + asan, + "g++-13-multilib", + ), + + linux_pipeline( + "Linux 23.04 GCC 13 64 ASAN", + "cppalliance/droneubuntu2304:1", + { TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '11,14,17,20,2b', ADDRMD: '64' } + asan, + "g++-13-multilib", + ), + + linux_pipeline( + "Linux 22.04 Clang 15", "cppalliance/droneubuntu2204:1", - { TOOLSET: 'clang', COMPILER: 'clang++-15', CXXSTD: '11,14,17,20,2b' } + asan, + { TOOLSET: 'clang', COMPILER: 'clang++-15', CXXSTD: '11,14,17,20,2b' }, "clang-15", ), @@ -182,6 +192,20 @@ local windows_pipeline(name, image, environment, arch = "amd64") = "clang-16", ), + linux_pipeline( + "Linux 23.10 Clang 17 UBSAN", + "cppalliance/droneubuntu2310:1", + { TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '11,14,17,20,2b' } + ubsan, + "clang-17", + ), + + linux_pipeline( + "Linux 23.10 Clang 17 ASAN", + "cppalliance/droneubuntu2310:1", + { TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '11,14,17,20,2b' } + asan, + "clang-17", + ), + macos_pipeline( "MacOS 10.15 Xcode 12.2 UBSAN", { TOOLSET: 'clang', COMPILER: 'clang++', CXXSTD: '11,14,1z' } + ubsan, @@ -204,9 +228,27 @@ local windows_pipeline(name, image, environment, arch = "amd64") = xcode_version = "13.4.1", osx_version = "monterey", arch = "arm64", ), + windows_pipeline( + "Windows VS2015 msvc-14.0", + "cppalliance/dronevs2015", + { TOOLSET: 'msvc-14.0', CXXSTD: '14,latest', B2_DONT_EMBED_MANIFEST: '1' }, + ), + windows_pipeline( "Windows VS2017 msvc-14.1", "cppalliance/dronevs2017", { TOOLSET: 'msvc-14.1', CXXSTD: '14,17,latest' }, ), + + windows_pipeline( + "Windows VS2019 msvc-14.2", + "cppalliance/dronevs2019", + { TOOLSET: 'msvc-14.2', CXXSTD: '14,17,20,latest' }, + ), + + windows_pipeline( + "Windows VS2022 msvc-14.3", + "cppalliance/dronevs2022:1", + { TOOLSET: 'msvc-14.3', CXXSTD: '14,17,20,latest' }, + ), ] From 9d5ec37d61e8aacfd841fbb5465b8f5809d0c4d7 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Wed, 17 Apr 2024 21:16:51 +0300 Subject: [PATCH 6/8] Update appveyor.yml --- appveyor.yml | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 0931445..6793dcc 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -15,21 +15,25 @@ branches: environment: matrix: - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - TOOLSET: msvc-12.0,msvc-14.0 + TOOLSET: msvc-12.0 + ADDRMD: 32,64 + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + TOOLSET: msvc-14.0 + CXXSTD: 14,latest ADDRMD: 32,64 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 - TOOLSET: msvc-14.1,clang-win - CXXSTD: 14,17 + TOOLSET: msvc-14.1 + CXXSTD: 14,17,latest ADDRMD: 32,64 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 - TOOLSET: msvc-14.2 - CXXSTD: 14,17 + TOOLSET: clang-win + CXXSTD: 14,17,latest ADDRMD: 32,64 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 ADDPATH: C:\cygwin\bin; TOOLSET: gcc CXXSTD: 11,14,1z - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 ADDPATH: C:\cygwin64\bin; TOOLSET: gcc CXXSTD: 11,14,1z @@ -37,8 +41,12 @@ environment: ADDPATH: C:\mingw\bin; TOOLSET: gcc CXXSTD: 11,14,1z - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - ADDPATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin; + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + ADDPATH: C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin; + TOOLSET: gcc + CXXSTD: 11,14,1z + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + ADDPATH: C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin; TOOLSET: gcc CXXSTD: 11,14,1z From fdf08f9c4d25c8d38ce2bdbaf1fde2441a86cd3e Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Thu, 18 Apr 2024 11:02:31 +0300 Subject: [PATCH 7/8] Change -j3 to -j2 to avoid Drone issues with endian_operations_test --- .drone/drone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone/drone.sh b/.drone/drone.sh index 713f4a4..2a8325b 100755 --- a/.drone/drone.sh +++ b/.drone/drone.sh @@ -24,4 +24,4 @@ python tools/boostdep/depinst/depinst.py $LIBRARY ./b2 -d0 headers echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam -./b2 -j3 libs/$LIBRARY/test toolset=$TOOLSET cxxstd=$CXXSTD variant=debug,release ${ADDRMD:+address-model=$ADDRMD} ${UBSAN:+undefined-sanitizer=norecover debug-symbols=on} ${ASAN:+address-sanitizer=norecover debug-symbols=on} ${LINKFLAGS:+linkflags=$LINKFLAGS} +./b2 -j2 libs/$LIBRARY/test toolset=$TOOLSET cxxstd=$CXXSTD variant=debug,release ${ADDRMD:+address-model=$ADDRMD} ${UBSAN:+undefined-sanitizer=norecover debug-symbols=on} ${ASAN:+address-sanitizer=norecover debug-symbols=on} ${LINKFLAGS:+linkflags=$LINKFLAGS} From 1eb037e19ecf19cf3630db7935dfabf8a4551018 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Thu, 18 Apr 2024 12:39:23 +0300 Subject: [PATCH 8/8] Update revision history --- doc/endian/changelog.adoc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/endian/changelog.adoc b/doc/endian/changelog.adoc index d46d721..aefbcb7 100644 --- a/doc/endian/changelog.adoc +++ b/doc/endian/changelog.adoc @@ -12,7 +12,8 @@ http://www.boost.org/LICENSE_1_0.txt ## Changes in 1.84.0 -* {cpp}03 is no longer supported. +* {cpp}03 is no longer supported; a {cpp}11 compiler is required. + (This includes GCC 4.6 or later, and MSVC 12.0 (VS 2013) or later.) ## Changes in 1.75.0