diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 09f5a3c..ad087df 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,6 +29,7 @@ jobs: # Linux, gcc-4.8 - toolset: gcc-4.8 cxxstd: "03,11" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:18.04 @@ -37,6 +38,7 @@ jobs: # Linux, gcc-4.9 - toolset: gcc-4.9 cxxstd: "03,11" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:16.04 @@ -44,6 +46,7 @@ jobs: - g++-4.9-multilib # Linux, gcc-5 - toolset: gcc-5 + cxxflags: -pipe cxxstd: "03,11,14,1z" address-model: 32,64 os: ubuntu-latest @@ -53,6 +56,7 @@ jobs: # Linux, gcc-6 - toolset: gcc-6 cxxstd: "03,11,14,1z" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:18.04 @@ -61,6 +65,7 @@ jobs: # Linux, gcc-7 - toolset: gcc-7 cxxstd: "03,11,14,17" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:18.04 @@ -69,6 +74,7 @@ jobs: # Linux, gcc-8 - toolset: gcc-8 cxxstd: "03,11,14,17,2a" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:18.04 @@ -77,6 +83,7 @@ jobs: # Linux, gcc-9 - toolset: gcc-9 cxxstd: "03,11,14,17,2a" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:20.04 @@ -85,6 +92,7 @@ jobs: # Linux, gcc-10 - toolset: gcc-10 cxxstd: "03,11,14,17,20" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:20.04 @@ -93,6 +101,7 @@ jobs: # Linux, gcc-11 - toolset: gcc-11 cxxstd: "03,11,14,17,20,23" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:22.04 @@ -101,6 +110,7 @@ jobs: # Linux, gcc-12 - toolset: gcc-12 cxxstd: "03,11,14,17,20,23" + cxxflags: -pipe address-model: 32,64 os: ubuntu-latest container: ubuntu:22.04 @@ -109,6 +119,7 @@ jobs: # Linux, gcc-13 - toolset: gcc-13 cxxstd: "11,14,17,20,2b" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:24.04 install: g++-13-multilib @@ -116,6 +127,7 @@ jobs: # Linux, gcc-14 - toolset: gcc-14 cxxstd: "11,14,17,20,2b" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:24.04 install: g++-14-multilib @@ -124,6 +136,7 @@ jobs: - name: UBSAN toolset: gcc-12 cxxstd: "03,11,14,17,20,23" + cxxflags: -pipe ubsan: 1 os: ubuntu-latest container: ubuntu:22.04 @@ -132,18 +145,11 @@ jobs: #------------------ # Linux, clang #------------------ - # Linux, clang-3.5 - - toolset: clang - compiler: clang++-3.5 - cxxstd: "03,11" - os: ubuntu-latest - container: ubuntu:16.04 - install: - - clang-3.5 # Linux, clang-3.6 - toolset: clang compiler: clang++-3.6 cxxstd: "03,11,14" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:16.04 install: @@ -152,6 +158,7 @@ jobs: - toolset: clang compiler: clang++-3.7 cxxstd: "03,11,14" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:16.04 install: @@ -160,6 +167,7 @@ jobs: - toolset: clang compiler: clang++-3.8 cxxstd: "03,11,14" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:16.04 install: @@ -168,6 +176,7 @@ jobs: - toolset: clang compiler: clang++-3.9 cxxstd: "03,11,14" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -176,6 +185,7 @@ jobs: - toolset: clang compiler: clang++-4.0 cxxstd: "03,11,14" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -184,6 +194,7 @@ jobs: - toolset: clang compiler: clang++-5.0 cxxstd: "03,11,14,1z" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -192,6 +203,7 @@ jobs: - toolset: clang compiler: clang++-6.0 cxxstd: "03,11,14,17" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -200,6 +212,7 @@ jobs: - toolset: clang compiler: clang++-7 cxxstd: "03,11,14,17" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -209,6 +222,7 @@ jobs: - toolset: clang compiler: clang++-8 cxxstd: "03,11,14,17,2a" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:18.04 install: @@ -219,6 +233,7 @@ jobs: - toolset: clang compiler: clang++-9 cxxstd: "03,11,14,17,2a" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:20.04 install: @@ -227,6 +242,7 @@ jobs: - toolset: clang compiler: clang++-10 cxxstd: "03,11,14,17,20" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:20.04 install: @@ -235,6 +251,7 @@ jobs: - toolset: clang compiler: clang++-11 cxxstd: "03,11,14,17,20" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:22.04 install: @@ -243,6 +260,7 @@ jobs: - toolset: clang compiler: clang++-12 cxxstd: "03,11,14,17,20" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:22.04 install: @@ -251,6 +269,7 @@ jobs: - toolset: clang compiler: clang++-13 cxxstd: "03,11,14,17,20" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:22.04 install: @@ -259,6 +278,7 @@ jobs: - toolset: clang compiler: clang++-14 cxxstd: "03,11,14,17,20" + cxxflags: -pipe os: ubuntu-latest container: ubuntu:22.04 install: @@ -267,12 +287,14 @@ jobs: - toolset: clang compiler: clang++-15 cxxstd: "03,11,14,17,20" + cxxflags: -pipe container: ubuntu:22.04 os: ubuntu-latest install: clang-15 # Linux, clang-16 - toolset: clang compiler: clang++-16 + cxxflags: -pipe cxxstd: "03,11,14,17,20,2b" container: ubuntu:24.04 os: ubuntu-latest @@ -281,6 +303,7 @@ jobs: - toolset: clang compiler: clang++-17 cxxstd: "03,11,14,17,20,2b" + cxxflags: -pipe container: ubuntu:24.04 os: ubuntu-latest install: clang-17 @@ -288,6 +311,7 @@ jobs: - toolset: clang compiler: clang++-18 cxxstd: "03,11,14,17,20,2b" + cxxflags: -pipe container: ubuntu:24.04 os: ubuntu-latest install: clang-18 @@ -307,7 +331,7 @@ jobs: - clang-15 - libc++-15-dev - libc++abi-15-dev - cxxflags: -stdlib=libc++ + cxxflags: -pipe -stdlib=libc++ linkflags: -stdlib=libc++ # Linux, clang-18 libc++ - toolset: clang @@ -318,14 +342,14 @@ jobs: - clang-18 - libc++-18-dev - libc++abi-18-dev - cxxflags: -stdlib=libc++ + cxxflags: -pipe -stdlib=libc++ linkflags: -stdlib=libc++ # Linux, clang-14 libc++, ubsan - name: UBSAN toolset: clang compiler: clang++-14 cxxstd: "03,11,14,17,20" - cxxflags: -stdlib=libc++ + cxxflags: -pipe -stdlib=libc++ linkflags: -stdlib=libc++ ubsan: 1 os: ubuntu-22.04 @@ -338,7 +362,7 @@ jobs: toolset: clang compiler: clang++-18 cxxstd: "11,14,17,20" - cxxflags: -stdlib=libc++ + cxxflags: -pipe -stdlib=libc++ linkflags: -stdlib=libc++ ubsan: 1 os: ubuntu-24.04 @@ -471,6 +495,7 @@ jobs: BOOST_BRANCH=develop && [ "$REF" = "master" ] && BOOST_BRANCH=master || true echo BOOST_BRANCH: $BOOST_BRANCH BUILD_JOBS=$((nproc || sysctl -n hw.ncpu) 2> /dev/null) + echo BUILD_JOBS: $BUILD_JOBS echo "BUILD_JOBS=$BUILD_JOBS" >> $GITHUB_ENV echo "CMAKE_BUILD_PARALLEL_LEVEL=$BUILD_JOBS" >> $GITHUB_ENV DEPINST_ARGS=() @@ -540,7 +565,7 @@ jobs: if: matrix.cmake_tests == '' run: | cd boost-root - B2_ARGS=("-j" "$BUILD_JOBS" "toolset=${{matrix.toolset}}" "cxxstd=${{matrix.cxxstd}}") + B2_ARGS=("-j" "$BUILD_JOBS" "toolset=${{matrix.toolset}}" "cxxstd=${{matrix.cxxstd}}" "debug-symbols=off") if [ -n "${{matrix.build_variant}}" ] then B2_ARGS+=("variant=${{matrix.build_variant}}") @@ -576,9 +601,15 @@ jobs: fail-fast: false matrix: include: + #------------------ + #Windows runners are much slower, split 32/64 bit jobs - toolset: msvc-14.3 cxxstd: "14,17,20,latest" - addrmd: 32,64 + addrmd: 32 + os: windows-2025 + - toolset: msvc-14.3 + cxxstd: "14,17,20,latest" + addrmd: 64 os: windows-2025 - toolset: clang-win cxxstd: "14,17,latest" @@ -606,6 +637,7 @@ jobs: set BOOST_BRANCH=develop for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master echo BOOST_BRANCH: %BOOST_BRANCH% + echo NUMBER_OF_PROCESSORS: %NUMBER_OF_PROCESSORS% mkdir snapshot cd snapshot echo Downloading library snapshot: https://github.com/%GITHUB_REPOSITORY%/archive/%GITHUB_SHA%.zip @@ -633,5 +665,5 @@ jobs: shell: cmd run: | cd boost-root - b2 -j %NUMBER_OF_PROCESSORS% libs/%LIBRARY%/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} address-model=${{matrix.addrmd}} variant=debug,release embed-manifest-via=linker + b2 -j %NUMBER_OF_PROCESSORS% libs/%LIBRARY%/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} address-model=${{matrix.addrmd}} variant=debug,release embed-manifest-via=linker debug-symbols=off