From 0f4abb0d519a295cad360c296204ade8f54f2410 Mon Sep 17 00:00:00 2001 From: Mohammad Nejati Date: Wed, 13 Mar 2024 15:59:36 +0000 Subject: [PATCH] Fix MinGW builds in GHA CI --- .github/workflows/ci.yml | 1272 +++++++++++++++++++------------------- 1 file changed, 636 insertions(+), 636 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ef07a19..1d19991 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,66 +60,66 @@ jobs: # Windows compilers # - - compiler: "msvc" - version: "14.34" - cxxstd: "17,20" - latest-cxxstd: "20" - runs-on: "windows-2022" - b2-toolset: "msvc-14.3" - generator: "Visual Studio 17 2022" - is-latest: true - name: "MSVC 14.34: C++17-20" - build-type: "Release" - build-cmake: true - - - compiler: "msvc" - version: "14.34" - cxxstd: "17,20" - latest-cxxstd: "20" - runs-on: "windows-2022" - b2-toolset: "msvc-14.3" - generator: "Visual Studio 17 2022" - is-latest: true - name: "MSVC 14.34: C++17-20 (x86)" - x86: true - build-type: "Release" - - - compiler: "msvc" - version: "14.34" - cxxstd: "17,20" - latest-cxxstd: "20" - runs-on: "windows-2022" - b2-toolset: "msvc-14.3" - generator: "Visual Studio 17 2022" - is-latest: true - name: "MSVC 14.34: C++17-20 (shared)" - shared: true - build-type: "Release" - build-cmake: true - - - compiler: "msvc" - version: "14.29" - cxxstd: "14,17" - latest-cxxstd: "17" - runs-on: "windows-2019" - b2-toolset: "msvc-14.2" - generator: "Visual Studio 16 2019" - is-earliest: true - name: "MSVC 14.29: C++14-17" - build-type: "Release" - - - compiler: "clang-cl" - version: "*" - cxx: "clang++-cl" - cc: "clang-cl" - runs-on: "windows-2022" - b2-toolset: "clang-win" - generator-toolset: "ClangCL" - is-latest: true - is-earliest: true - name: "Windows-Clang" - build-type: "Release" - build-cmake: true + # - compiler: "msvc" + # version: "14.34" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # runs-on: "windows-2022" + # b2-toolset: "msvc-14.3" + # generator: "Visual Studio 17 2022" + # is-latest: true + # name: "MSVC 14.34: C++17-20" + # build-type: "Release" + # build-cmake: true + + # - compiler: "msvc" + # version: "14.34" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # runs-on: "windows-2022" + # b2-toolset: "msvc-14.3" + # generator: "Visual Studio 17 2022" + # is-latest: true + # name: "MSVC 14.34: C++17-20 (x86)" + # x86: true + # build-type: "Release" + + # - compiler: "msvc" + # version: "14.34" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # runs-on: "windows-2022" + # b2-toolset: "msvc-14.3" + # generator: "Visual Studio 17 2022" + # is-latest: true + # name: "MSVC 14.34: C++17-20 (shared)" + # shared: true + # build-type: "Release" + # build-cmake: true + + # - compiler: "msvc" + # version: "14.29" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # runs-on: "windows-2019" + # b2-toolset: "msvc-14.2" + # generator: "Visual Studio 16 2019" + # is-earliest: true + # name: "MSVC 14.29: C++14-17" + # build-type: "Release" + + # - compiler: "clang-cl" + # version: "*" + # cxx: "clang++-cl" + # cc: "clang-cl" + # runs-on: "windows-2022" + # b2-toolset: "clang-win" + # generator-toolset: "ClangCL" + # is-latest: true + # is-earliest: true + # name: "Windows-Clang" + # build-type: "Release" + # build-cmake: true - compiler: "mingw" version: "*" @@ -148,563 +148,563 @@ jobs: build-type: "Release" build-cmake: true - # OSX compilers - # - - - compiler: "apple-clang" - version: "*" - cxx: "clang++" - cc: "clang" - runs-on: "macos-11" - b2-toolset: "clang" - is-latest: true - is-earliest: true - name: "Apple-Clang" - build-type: "Release" - build-cmake: true - - - compiler: "apple-clang" - version: "*" - cxx: "clang++" - cc: "clang" - runs-on: "macos-11" - b2-toolset: "clang" - is-latest: true - name: "Apple-Clang (ubsan)" - build-type: "RelWithDebInfo" - ubsan: true - - - compiler: "apple-clang" - version: "*" - cxx: "clang++" - cc: "clang" - runs-on: "macos-11" - b2-toolset: "clang" - is-latest: true - name: "Apple-Clang (asan)" - build-type: "RelWithDebInfo" - asan: true - - # Linux compilers - # - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20" - build-type: "Release" - install: "cmake zlib1g-dev" - build-cmake: true - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (x86)" - x86: true - build-type: "Release" - install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (coverage)" - coverage: true - build-type: "Debug" - cxxflags: "--coverage -fprofile-arcs -ftest-coverage" - ccflags: "--coverage -fprofile-arcs -ftest-coverage" - install: "cmake lcov zlib1g-dev wget unzip" - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (shared)" - shared: true - build-type: "Release" - install: "cmake zlib1g-dev" - build-cmake: true - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (shared, x86)" - shared: true - x86: true - build-type: "Release" - install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - build-cmake: true - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (asan)" - asan: true - build-type: "RelWithDebInfo" - install: "cmake zlib1g-dev" - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (asan, x86)" - asan: true - x86: true - build-type: "RelWithDebInfo" - install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (ubsan)" - ubsan: true - build-type: "RelWithDebInfo" - install: "cmake zlib1g-dev" - - - compiler: "gcc" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-13" - cc: "gcc-13" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - b2-toolset: "gcc" - is-latest: true - name: "GCC 13: C++17-20 (ubsan, x86)" - ubsan: true - x86: true - build-type: "RelWithDebInfo" - install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "gcc" - version: "12" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-12" - cc: "gcc-12" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "gcc" - name: "GCC 12: C++17-20" - build-type: "Release" - - - compiler: "gcc" - version: "11" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "g++-11" - cc: "gcc-11" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "gcc" - name: "GCC 11: C++17-20" - build-type: "Release" - - - compiler: "gcc" - version: "10" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "g++-10" - cc: "gcc-10" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "gcc" - name: "GCC 10: C++14-17" - build-type: "Release" - - - compiler: "gcc" - version: "9" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "g++-9" - cc: "gcc-9" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "gcc" - name: "GCC 9: C++14-17" - build-type: "Release" - - - compiler: "gcc" - version: "8" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "g++-8" - cc: "gcc-8" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "gcc" - name: "GCC 8: C++14-17" - build-type: "Release" - - - compiler: "gcc" - version: "7" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "g++-7" - cc: "gcc-7" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "gcc" - name: "GCC 7: C++14-17" - build-type: "Release" - - - compiler: "gcc" - version: "6" - cxxstd: "11,14" - latest-cxxstd: "14" - cxx: "g++-6" - cc: "gcc-6" - runs-on: "ubuntu-latest" - container: "ubuntu:18.04" - b2-toolset: "gcc" - name: "GCC 6: C++11-14" - build-type: "Release" - - - compiler: "gcc" - version: "5" - cxxstd: "11" - latest-cxxstd: "11" - cxx: "g++-5" - cc: "gcc-5" - runs-on: "ubuntu-latest" - container: "ubuntu:18.04" - b2-toolset: "gcc" - is-earliest: true - name: "GCC 5: C++11" - build-type: "Release" - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20" - build-type: "Release" - install: "zlib1g-dev cmake" - build-cmake: true - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20 (x86)" - x86: true - build-type: "Release" - install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "clang" - version: "17" - cxxstd: "20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++20 (time-trace)" - time-trace: true - build-type: "Release" - cxxflags: "-ftime-trace" - ccflags: "-ftime-trace" - install: "cmake zlib1g-dev wget unzip" - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20 (asan)" - asan: true - build-type: "RelWithDebInfo" - install: "cmake zlib1g-dev" - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20 (asan, x86)" - asan: true - x86: true - build-type: "RelWithDebInfo" - install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20 (ubsan)" - ubsan: true - build-type: "RelWithDebInfo" - install: "cmake zlib1g-dev" - - - compiler: "clang" - version: "17" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-17" - cc: "clang-17" - runs-on: "ubuntu-latest" - container: "ubuntu:23.10" - b2-toolset: "clang" - is-latest: true - name: "Clang 17: C++17-20 (ubsan, x86)" - ubsan: true - x86: true - build-type: "RelWithDebInfo" - install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" - - - compiler: "clang" - version: "16" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-16" - cc: "clang-16" - runs-on: "ubuntu-latest" - container: "ubuntu:23.04" - install: "cmake" - b2-toolset: "clang" - name: "Clang 16: C++17-20" - build-type: "Release" - - - compiler: "clang" - version: "15" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-15" - cc: "clang-15" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "clang" - name: "Clang 15: C++17-20" - build-type: "Release" - - - compiler: "clang" - version: "14" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-14" - cc: "clang-14" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "clang" - name: "Clang 14: C++17-20" - build-type: "Release" - - - compiler: "clang" - version: "13" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-13" - cc: "clang-13" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "clang" - name: "Clang 13: C++17-20" - build-type: "Release" - - - compiler: "clang" - version: "12" - cxxstd: "17,20" - latest-cxxstd: "20" - cxx: "clang++-12" - cc: "clang-12" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "clang" - name: "Clang 12: C++17-20" - build-type: "Release" - - - compiler: "clang" - version: "11" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-11" - cc: "clang-11" - runs-on: "ubuntu-latest" - container: "ubuntu:22.04" - b2-toolset: "clang" - name: "Clang 11: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "10" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-10" - cc: "clang-10" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "clang" - name: "Clang 10: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "9" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-9" - cc: "clang-9" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "clang" - name: "Clang 9: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "8" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-8" - cc: "clang-8" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "clang" - name: "Clang 8: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "7" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-7" - cc: "clang-7" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "clang" - name: "Clang 7: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "6" - cxxstd: "14,17" - latest-cxxstd: "17" - cxx: "clang++-6.0" - cc: "clang-6.0" - runs-on: "ubuntu-latest" - container: "ubuntu:20.04" - b2-toolset: "clang" - name: "Clang 6: C++14-17" - build-type: "Release" - - - compiler: "clang" - version: "5" - cxxstd: "11,14" - latest-cxxstd: "14" - cxx: "clang++-5.0" - cc: "clang-5.0" - runs-on: "ubuntu-latest" - container: "ubuntu:18.04" - b2-toolset: "clang" - name: "Clang 5: C++11-14" - build-type: "Release" - - - compiler: "clang" - version: "4" - cxxstd: "11,14" - latest-cxxstd: "14" - cxx: "clang++-4.0" - cc: "clang-4.0" - runs-on: "ubuntu-latest" - container: "ubuntu:18.04" - b2-toolset: "clang" - name: "Clang 4: C++11-14" - build-type: "Release" - - - compiler: "clang" - version: "^3.8" - cxxstd: "11" - latest-cxxstd: "11" - cxx: "clang++-3.8" - cc: "clang-3.8" - runs-on: "ubuntu-latest" - container: "ubuntu:16.04" - b2-toolset: "clang" - is-earliest: true - name: "Clang ^3.8: C++11" - build-type: "Release" + # # OSX compilers + # # + + # - compiler: "apple-clang" + # version: "*" + # cxx: "clang++" + # cc: "clang" + # runs-on: "macos-11" + # b2-toolset: "clang" + # is-latest: true + # is-earliest: true + # name: "Apple-Clang" + # build-type: "Release" + # build-cmake: true + + # - compiler: "apple-clang" + # version: "*" + # cxx: "clang++" + # cc: "clang" + # runs-on: "macos-11" + # b2-toolset: "clang" + # is-latest: true + # name: "Apple-Clang (ubsan)" + # build-type: "RelWithDebInfo" + # ubsan: true + + # - compiler: "apple-clang" + # version: "*" + # cxx: "clang++" + # cc: "clang" + # runs-on: "macos-11" + # b2-toolset: "clang" + # is-latest: true + # name: "Apple-Clang (asan)" + # build-type: "RelWithDebInfo" + # asan: true + + # # Linux compilers + # # + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20" + # build-type: "Release" + # install: "cmake zlib1g-dev" + # build-cmake: true + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (x86)" + # x86: true + # build-type: "Release" + # install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (coverage)" + # coverage: true + # build-type: "Debug" + # cxxflags: "--coverage -fprofile-arcs -ftest-coverage" + # ccflags: "--coverage -fprofile-arcs -ftest-coverage" + # install: "cmake lcov zlib1g-dev wget unzip" + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (shared)" + # shared: true + # build-type: "Release" + # install: "cmake zlib1g-dev" + # build-cmake: true + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (shared, x86)" + # shared: true + # x86: true + # build-type: "Release" + # install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + # build-cmake: true + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (asan)" + # asan: true + # build-type: "RelWithDebInfo" + # install: "cmake zlib1g-dev" + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (asan, x86)" + # asan: true + # x86: true + # build-type: "RelWithDebInfo" + # install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (ubsan)" + # ubsan: true + # build-type: "RelWithDebInfo" + # install: "cmake zlib1g-dev" + + # - compiler: "gcc" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-13" + # cc: "gcc-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # b2-toolset: "gcc" + # is-latest: true + # name: "GCC 13: C++17-20 (ubsan, x86)" + # ubsan: true + # x86: true + # build-type: "RelWithDebInfo" + # install: "cmake gcc-13-multilib g++-13-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "gcc" + # version: "12" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-12" + # cc: "gcc-12" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "gcc" + # name: "GCC 12: C++17-20" + # build-type: "Release" + + # - compiler: "gcc" + # version: "11" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "g++-11" + # cc: "gcc-11" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "gcc" + # name: "GCC 11: C++17-20" + # build-type: "Release" + + # - compiler: "gcc" + # version: "10" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "g++-10" + # cc: "gcc-10" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "gcc" + # name: "GCC 10: C++14-17" + # build-type: "Release" + + # - compiler: "gcc" + # version: "9" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "g++-9" + # cc: "gcc-9" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "gcc" + # name: "GCC 9: C++14-17" + # build-type: "Release" + + # - compiler: "gcc" + # version: "8" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "g++-8" + # cc: "gcc-8" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "gcc" + # name: "GCC 8: C++14-17" + # build-type: "Release" + + # - compiler: "gcc" + # version: "7" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "g++-7" + # cc: "gcc-7" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "gcc" + # name: "GCC 7: C++14-17" + # build-type: "Release" + + # - compiler: "gcc" + # version: "6" + # cxxstd: "11,14" + # latest-cxxstd: "14" + # cxx: "g++-6" + # cc: "gcc-6" + # runs-on: "ubuntu-latest" + # container: "ubuntu:18.04" + # b2-toolset: "gcc" + # name: "GCC 6: C++11-14" + # build-type: "Release" + + # - compiler: "gcc" + # version: "5" + # cxxstd: "11" + # latest-cxxstd: "11" + # cxx: "g++-5" + # cc: "gcc-5" + # runs-on: "ubuntu-latest" + # container: "ubuntu:18.04" + # b2-toolset: "gcc" + # is-earliest: true + # name: "GCC 5: C++11" + # build-type: "Release" + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20" + # build-type: "Release" + # install: "zlib1g-dev cmake" + # build-cmake: true + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20 (x86)" + # x86: true + # build-type: "Release" + # install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "clang" + # version: "17" + # cxxstd: "20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++20 (time-trace)" + # time-trace: true + # build-type: "Release" + # cxxflags: "-ftime-trace" + # ccflags: "-ftime-trace" + # install: "cmake zlib1g-dev wget unzip" + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20 (asan)" + # asan: true + # build-type: "RelWithDebInfo" + # install: "cmake zlib1g-dev" + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20 (asan, x86)" + # asan: true + # x86: true + # build-type: "RelWithDebInfo" + # install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20 (ubsan)" + # ubsan: true + # build-type: "RelWithDebInfo" + # install: "cmake zlib1g-dev" + + # - compiler: "clang" + # version: "17" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-17" + # cc: "clang-17" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.10" + # b2-toolset: "clang" + # is-latest: true + # name: "Clang 17: C++17-20 (ubsan, x86)" + # ubsan: true + # x86: true + # build-type: "RelWithDebInfo" + # install: "cmake gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386 libssl-dev:i386" + + # - compiler: "clang" + # version: "16" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-16" + # cc: "clang-16" + # runs-on: "ubuntu-latest" + # container: "ubuntu:23.04" + # install: "cmake" + # b2-toolset: "clang" + # name: "Clang 16: C++17-20" + # build-type: "Release" + + # - compiler: "clang" + # version: "15" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-15" + # cc: "clang-15" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "clang" + # name: "Clang 15: C++17-20" + # build-type: "Release" + + # - compiler: "clang" + # version: "14" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-14" + # cc: "clang-14" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "clang" + # name: "Clang 14: C++17-20" + # build-type: "Release" + + # - compiler: "clang" + # version: "13" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-13" + # cc: "clang-13" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "clang" + # name: "Clang 13: C++17-20" + # build-type: "Release" + + # - compiler: "clang" + # version: "12" + # cxxstd: "17,20" + # latest-cxxstd: "20" + # cxx: "clang++-12" + # cc: "clang-12" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "clang" + # name: "Clang 12: C++17-20" + # build-type: "Release" + + # - compiler: "clang" + # version: "11" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-11" + # cc: "clang-11" + # runs-on: "ubuntu-latest" + # container: "ubuntu:22.04" + # b2-toolset: "clang" + # name: "Clang 11: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "10" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-10" + # cc: "clang-10" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "clang" + # name: "Clang 10: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "9" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-9" + # cc: "clang-9" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "clang" + # name: "Clang 9: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "8" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-8" + # cc: "clang-8" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "clang" + # name: "Clang 8: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "7" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-7" + # cc: "clang-7" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "clang" + # name: "Clang 7: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "6" + # cxxstd: "14,17" + # latest-cxxstd: "17" + # cxx: "clang++-6.0" + # cc: "clang-6.0" + # runs-on: "ubuntu-latest" + # container: "ubuntu:20.04" + # b2-toolset: "clang" + # name: "Clang 6: C++14-17" + # build-type: "Release" + + # - compiler: "clang" + # version: "5" + # cxxstd: "11,14" + # latest-cxxstd: "14" + # cxx: "clang++-5.0" + # cc: "clang-5.0" + # runs-on: "ubuntu-latest" + # container: "ubuntu:18.04" + # b2-toolset: "clang" + # name: "Clang 5: C++11-14" + # build-type: "Release" + + # - compiler: "clang" + # version: "4" + # cxxstd: "11,14" + # latest-cxxstd: "14" + # cxx: "clang++-4.0" + # cc: "clang-4.0" + # runs-on: "ubuntu-latest" + # container: "ubuntu:18.04" + # b2-toolset: "clang" + # name: "Clang 4: C++11-14" + # build-type: "Release" + + # - compiler: "clang" + # version: "^3.8" + # cxxstd: "11" + # latest-cxxstd: "11" + # cxx: "clang++-3.8" + # cc: "clang-3.8" + # runs-on: "ubuntu-latest" + # container: "ubuntu:16.04" + # b2-toolset: "clang" + # is-earliest: true + # name: "Clang ^3.8: C++11" + # build-type: "Release" name: ${{ matrix.name }} runs-on: ${{ fromJSON(needs.runner-selection.outputs.labelmatrix)[matrix.runs-on] }} @@ -759,10 +759,10 @@ jobs: scan-modules-dir: http-io-root scan-modules-ignore: http_io - - name: Install zlib (Windows) + - name: Install packages (Windows) uses: alandefreitas/cpp-actions/package-install@v1.8.0 - if: ${{ startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') }} - id: zlib-install + if: ${{ startsWith(matrix.runs-on, 'windows') }} + id: package-install-windows with: vcpkg: "zlib,openssl" vcpkg-dir: vcpkg-root @@ -771,7 +771,7 @@ jobs: - name: Patch user-config.jam (Windows) id: patch-user-config shell: bash - if: ${{ startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') }} + if: ${{ startsWith(matrix.runs-on, 'windows') }} run: | set -xe home=$(pwd) @@ -783,24 +783,24 @@ jobs: ls -lah "${home}/vcpkg-root/installed/${triplet}/lib" touch user-config.jam - echo "using zlib : : \"${home}/vcpkg-root/installed/${triplet}/include\" \"${home}/vcpkg-root/installed/${triplet}/lib\" : ${addrmdl} ;" | sed 's/\/d\//D:\//g' >> user-config.jam + echo "using zlib : : \"${home}/vcpkg-root/installed/${triplet}/include\" \"${home}/vcpkg-root/installed/${triplet}/lib\" zlib : ${addrmdl} ;" | sed 's/\/d\//D:\//g' > user-config.jam echo "using openssl : : \"${home}/vcpkg-root/installed/${triplet}/include\" \"${home}/vcpkg-root/installed/${triplet}/lib\" libssl libcrypto : ${addrmdl} ;" | sed 's/\/d\//D:\//g' >> user-config.jam cat user-config.jam toolchain=$(echo "$GITHUB_WORKSPACE/vcpkg-root/scripts/buildsystems/vcpkg.cmake" | sed 's/\/d\//D:\//g' ) echo "toolchain=${toolchain}" >> $GITHUB_OUTPUT - - name: Patch user-config.jam (Windows [MinGW]) - id: patch-user-config-mingw - shell: bash - if: ${{ startsWith(matrix.runs-on, 'windows') && startsWith(matrix.compiler, 'mingw') }} - run: | - set -xe - home=$(pwd) + # - name: Patch user-config.jam (Windows [MinGW]) + # id: patch-user-config-mingw + # shell: bash + # if: ${{ startsWith(matrix.runs-on, 'windows') && startsWith(matrix.compiler, 'mingw') }} + # run: | + # set -xe + # home=$(pwd) - touch user-config.jam - echo "using openssl : : \"C:/Program Files/OpenSSL/include\" \"C:/Program Files/OpenSSL/lib\" libssl libcrypto : ;" | sed 's/\/d\//D:\//g' >> user-config.jam - cat user-config.jam + # touch user-config.jam + # echo "using openssl : : \"C:/Program Files/OpenSSL/include\" \"C:/Program Files/OpenSSL/lib\" libssl libcrypto : ;" | sed 's/\/d\//D:\//g' >> user-config.jam + # cat user-config.jam - name: Patch Boost id: patch @@ -884,7 +884,7 @@ jobs: package: false package-artifact: false ref-source-dir: boost-root/libs/http_io - toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') && steps.patch-user-config.outputs.toolchain) || '' }} + toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: Set Path if: startsWith(matrix.runs-on, 'windows') && matrix.shared @@ -917,7 +917,7 @@ jobs: -D CMAKE_PREFIX_PATH=${{ steps.patch.outputs.workspace_root }}/.local ref-source-dir: boost-root/libs/http_io trace-commands: true - toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') && steps.patch-user-config.outputs.toolchain) || '' }} + toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: Subdirectory Integration Workflow uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.0 @@ -938,7 +938,7 @@ jobs: cmake-version: '>=3.15' extra-args: -D BOOST_CI_INSTALL_TEST=OFF ref-source-dir: boost-root/libs/http_io/test/cmake_test - toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') && steps.patch-user-config.outputs.toolchain) || '' }} + toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: Root Project CMake Workflow uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.0 @@ -962,7 +962,7 @@ jobs: package: false package-artifact: false ref-source-dir: boost-root - toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && !startsWith(matrix.compiler, 'mingw') && steps.patch-user-config.outputs.toolchain) || '' }} + toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: FlameGraph uses: alandefreitas/cpp-actions/flamegraph@v1.8.0