diff --git a/.drone.star b/.drone.star index 77e832a..cae42f5 100644 --- a/.drone.star +++ b/.drone.star @@ -15,7 +15,7 @@ def main(ctx): # Compilers [ 'gcc >=5.0', - 'clang >=3.8', + 'clang >=3.9', 'msvc >=14.1', 'arm64-gcc latest', 's390x-gcc latest', @@ -23,11 +23,12 @@ def main(ctx): 'apple-clang *', 'arm64-clang latest', 's390x-clang latest', - # 'x86-msvc latest' + 'freebsd-clang latest', + 'x86-msvc latest' ], # Standards '>=11', - packages=['zlib1g', 'zlib1g-dev']) + packages=['zlib1g', 'zlib1g-dev', 'libbrotli-dev']) # from https://github.com/cppalliance/ci-automation load("@ci_automation//ci/drone/:functions.star", "linux_cxx", "windows_cxx", "osx_cxx", "freebsd_cxx", "generate") diff --git a/.drone/drone.bat b/.drone/drone.bat index c726bd8..bf68936 100644 --- a/.drone/drone.bat +++ b/.drone/drone.bat @@ -43,6 +43,9 @@ echo using zlib : : : ^off ^; >> !BOOST_ROOT!\project-config.jam REM Customizations cd pushd !BOOST_ROOT!\libs +git clone https://github.com/cppalliance/rts -b !BOOST_BRANCH! --depth 1 +popd +pushd !BOOST_ROOT!\libs git clone https://github.com/cppalliance/buffers -b !BOOST_BRANCH! --depth 1 popd pushd !BOOST_ROOT!\libs @@ -53,6 +56,7 @@ git clone https://github.com/cppalliance/ws_proto -b !BOOST_BRANCH! --depth 1 popd pushd !BOOST_ROOT! +python tools/boostdep/depinst/depinst.py rts python tools/boostdep/depinst/depinst.py buffers python tools/boostdep/depinst/depinst.py http_proto python tools/boostdep/depinst/depinst.py ws_proto diff --git a/.drone/drone.sh b/.drone/drone.sh index 211c33a..50d1420 100644 --- a/.drone/drone.sh +++ b/.drone/drone.sh @@ -35,6 +35,12 @@ common_install () { . ./ci/common_install.sh + if [ ! -d "$BOOST_ROOT/libs/rts" ]; then + pushd $BOOST_ROOT/libs + git clone https://github.com/cppalliance/rts -b $BOOST_BRANCH --depth 1 + popd + fi + if [ ! -d "$BOOST_ROOT/libs/buffers" ]; then pushd $BOOST_ROOT/libs git clone https://github.com/cppalliance/buffers -b $BOOST_BRANCH --depth 1 @@ -134,6 +140,12 @@ cp -r $DRONE_BUILD_DIR/* libs/$SELF git submodule update --init --recursive # Customizations +if [ ! -d "$BOOST_ROOT/libs/rts" ]; then + pushd $BOOST_ROOT/libs + git clone https://github.com/cppalliance/rts -b $BOOST_BRANCH --depth 1 + popd +fi + if [ ! -d "$BOOST_ROOT/libs/buffers" ]; then pushd $BOOST_ROOT/libs git clone https://github.com/cppalliance/buffers -b $BOOST_BRANCH --depth 1 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 57fa028..7aeff86 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,14 +61,15 @@ jobs: # - compiler: "msvc" - version: "14.34" + version: "14.42" cxxstd: "17,20" latest-cxxstd: "20" runs-on: "windows-2022" - b2-toolset: "msvc-14.3" + b2-toolset: "msvc-14.4" generator: "Visual Studio 17 2022" is-latest: true - name: "MSVC 14.34: C++17-20" + name: "MSVC 14.42: C++17-20" + shared: false build-type: "Release" build-cmake: true @@ -80,10 +81,10 @@ jobs: b2-toolset: "msvc-14.3" generator: "Visual Studio 17 2022" is-latest: true - name: "MSVC 14.34: C++17-20 (no zlib)" + name: "MSVC 14.34: C++17-20" + shared: true build-type: "Release" build-cmake: true - skip-zlib: true - compiler: "msvc" version: "14.34" @@ -94,6 +95,7 @@ jobs: generator: "Visual Studio 17 2022" is-latest: true name: "MSVC 14.34: C++17-20 (x86)" + shared: false x86: true build-type: "Release" @@ -105,22 +107,11 @@ jobs: b2-toolset: "msvc-14.3" generator: "Visual Studio 17 2022" is-latest: true - name: "MSVC 14.34: C++17-20 (shared)" + name: "MSVC 14.34: C++17-20" 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" @@ -131,6 +122,7 @@ jobs: is-latest: true is-earliest: true name: "Windows-Clang" + shared: false build-type: "Release" build-cmake: true @@ -141,9 +133,10 @@ jobs: runs-on: "windows-2022" b2-toolset: "gcc" generator: "MinGW Makefiles" - is-latest: true + is-latest: false is-earliest: true name: "MinGW" + shared: true build-type: "Release" build-cmake: true @@ -154,10 +147,10 @@ jobs: runs-on: "windows-2022" b2-toolset: "gcc" generator: "MinGW Makefiles" - is-latest: true + is-latest: false is-earliest: true - name: "MinGW (shared)" - shared: true + name: "MinGW" + shared: false build-type: "Release" build-cmake: true @@ -172,6 +165,7 @@ jobs: b2-toolset: "clang" is-latest: true name: "Apple-Clang (macOS 15)" + shared: true build-type: "Release" build-cmake: true @@ -183,6 +177,7 @@ jobs: b2-toolset: "clang" is-latest: true name: "Apple-Clang (macOS 15, ubsan)" + shared: false build-type: "RelWithDebInfo" ubsan: true @@ -194,6 +189,7 @@ jobs: b2-toolset: "clang" is-latest: true name: "Apple-Clang (macOS 15, asan)" + shared: true build-type: "RelWithDebInfo" asan: true @@ -204,6 +200,7 @@ jobs: runs-on: "macos-14" b2-toolset: "clang" name: "Apple-Clang (macOS 14)" + shared: false build-type: "Release" build-cmake: true @@ -214,6 +211,7 @@ jobs: runs-on: "macos-13" b2-toolset: "clang" name: "Apple-Clang (macOS 13)" + shared: true build-type: "Release" build-cmake: true @@ -231,8 +229,8 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20" + shared: false build-type: "Release" - install: "zlib1g-dev" build-cmake: true - compiler: "gcc" @@ -246,6 +244,7 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (no zlib)" + shared: true build-type: "Release" build-cmake: true @@ -260,9 +259,10 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (x86)" + shared: false x86: true build-type: "Release" - install: "gcc-14-multilib g++-14-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-14-multilib g++-14-multilib" - compiler: "gcc" version: "14" @@ -274,10 +274,9 @@ jobs: container: "ubuntu:24.04" b2-toolset: "gcc" is-latest: true - name: "GCC 14: C++17-20 (shared)" + name: "GCC 14: C++17-20" shared: true build-type: "Release" - install: "zlib1g-dev" build-cmake: true - compiler: "gcc" @@ -290,11 +289,11 @@ jobs: container: "ubuntu:24.04" b2-toolset: "gcc" is-latest: true - name: "GCC 14: C++17-20 (shared, x86)" - shared: true + name: "GCC 14: C++17-20 (x86)" + shared: false x86: true build-type: "Release" - install: "gcc-14-multilib g++-14-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-14-multilib g++-14-multilib" build-cmake: true - compiler: "gcc" @@ -308,9 +307,9 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (asan)" + shared: true asan: true build-type: "RelWithDebInfo" - install: "zlib1g-dev" - compiler: "gcc" version: "14" @@ -323,10 +322,11 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (asan, x86)" + shared: false asan: true x86: true build-type: "RelWithDebInfo" - install: "gcc-14-multilib g++-14-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-14-multilib g++-14-multilib" - compiler: "gcc" version: "14" @@ -339,9 +339,9 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (ubsan)" + shared: true ubsan: true build-type: "RelWithDebInfo" - install: "zlib1g-dev" - compiler: "gcc" version: "14" @@ -354,10 +354,11 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 14: C++17-20 (ubsan, x86)" + shared: false ubsan: true x86: true build-type: "RelWithDebInfo" - install: "gcc-14-multilib g++-14-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-14-multilib g++-14-multilib" - compiler: "gcc" version: "13" @@ -368,8 +369,8 @@ jobs: runs-on: "ubuntu-24.04" b2-toolset: "gcc" name: "GCC 13: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "13" @@ -381,11 +382,12 @@ jobs: b2-toolset: "gcc" is-latest: true name: "GCC 13: C++17-20 (coverage)" + shared: false coverage: true build-type: "Debug" cxxflags: "--coverage -fprofile-arcs -ftest-coverage" ccflags: "--coverage -fprofile-arcs -ftest-coverage" - install: "lcov zlib1g-dev wget unzip" + install: "lcov wget unzip" - compiler: "gcc" version: "12" @@ -397,8 +399,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "gcc" name: "GCC 12: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "11" @@ -410,8 +412,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "gcc" name: "GCC 11: C++17-20" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "10" @@ -423,8 +425,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "gcc" name: "GCC 10: C++14-17" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "9" @@ -436,8 +438,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "gcc" name: "GCC 9: C++14-17" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "8" @@ -449,8 +451,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "gcc" name: "GCC 8: C++14-17" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "7" @@ -462,8 +464,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "gcc" name: "GCC 7: C++14-17" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "6" @@ -475,8 +477,8 @@ jobs: container: "ubuntu:18.04" b2-toolset: "gcc" name: "GCC 6: C++11-14" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "gcc" version: "5" @@ -489,8 +491,8 @@ jobs: b2-toolset: "gcc" is-earliest: true name: "GCC 5: C++11" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "18" @@ -503,8 +505,8 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" build-cmake: true - compiler: "clang" @@ -518,9 +520,10 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20 (x86)" + shared: false x86: true build-type: "Release" - install: "gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-multilib g++-multilib" - compiler: "clang" version: "18" @@ -533,11 +536,12 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++20 (time-trace)" + shared: true time-trace: true build-type: "Release" cxxflags: "-ftime-trace" ccflags: "-ftime-trace" - install: "zlib1g-dev wget unzip" + install: " wget unzip" - compiler: "clang" version: "18" @@ -550,9 +554,9 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20 (asan)" + shared: false asan: true build-type: "RelWithDebInfo" - install: "zlib1g-dev" - compiler: "clang" version: "18" @@ -565,10 +569,11 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20 (asan, x86)" + shared: true asan: true x86: true build-type: "RelWithDebInfo" - install: "gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-multilib g++-multilib" - compiler: "clang" version: "18" @@ -581,9 +586,9 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20 (ubsan)" + shared: false ubsan: true build-type: "RelWithDebInfo" - install: "zlib1g-dev" - compiler: "clang" version: "18" @@ -596,10 +601,11 @@ jobs: b2-toolset: "clang" is-latest: true name: "Clang 18: C++17-20 (ubsan, x86)" + shared: true ubsan: true x86: true build-type: "RelWithDebInfo" - install: "gcc-multilib g++-multilib zlib1g-dev zlib1g-dev:i386" + install: "gcc-multilib g++-multilib" - compiler: "clang" version: "17" @@ -610,8 +616,8 @@ jobs: runs-on: "ubuntu-24.04" b2-toolset: "clang" name: "Clang 17: C++17-20" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "16" @@ -622,8 +628,8 @@ jobs: runs-on: "ubuntu-24.04" b2-toolset: "clang" name: "Clang 16: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "15" @@ -635,8 +641,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "clang" name: "Clang 15: C++17-20" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "14" @@ -648,8 +654,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "clang" name: "Clang 14: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "13" @@ -661,8 +667,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "clang" name: "Clang 13: C++17-20" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "12" @@ -674,8 +680,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "clang" name: "Clang 12: C++17-20" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "11" @@ -687,8 +693,8 @@ jobs: container: "ubuntu:22.04" b2-toolset: "clang" name: "Clang 11: C++14-17" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "10" @@ -700,8 +706,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "clang" name: "Clang 10: C++14-17" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "9" @@ -713,8 +719,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "clang" name: "Clang 9: C++14-17" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "8" @@ -726,8 +732,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "clang" name: "Clang 8: C++14-17" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "7" @@ -739,8 +745,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "clang" name: "Clang 7: C++14-17" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "6" @@ -752,8 +758,8 @@ jobs: container: "ubuntu:20.04" b2-toolset: "clang" name: "Clang 6: C++14-17" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "5" @@ -765,8 +771,8 @@ jobs: container: "ubuntu:18.04" b2-toolset: "clang" name: "Clang 5: C++11-14" + shared: false build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "4" @@ -778,8 +784,8 @@ jobs: container: "ubuntu:18.04" b2-toolset: "clang" name: "Clang 4: C++11-14" + shared: true build-type: "Release" - install: "zlib1g-dev" - compiler: "clang" version: "3.9" @@ -792,8 +798,8 @@ jobs: b2-toolset: "clang" is-earliest: true name: "Clang 3.9: C++11" + shared: false build-type: "Release" - install: "zlib1g-dev" name: ${{ matrix.name }} @@ -842,8 +848,15 @@ jobs: repository: cppalliance/buffers ref: develop + - name: Clone Boost.RunTimeServices + uses: actions/checkout@v3 + with: + path: rts-root + repository: cppalliance/rts + ref: develop + - name: Setup C++ - uses: alandefreitas/cpp-actions/setup-cpp@v1.8.8 + uses: alandefreitas/cpp-actions/setup-cpp@v1.8.10 id: setup-cpp with: compiler: ${{ matrix.compiler }} @@ -852,17 +865,17 @@ jobs: trace-commands: true - name: Install packages - uses: alandefreitas/cpp-actions/package-install@v1.8.8 + uses: alandefreitas/cpp-actions/package-install@v1.8.10 id: package-install with: - apt-get-add-architecture: 'i386' + apt-get-add-architecture: ${{ matrix.x86 && 'i386' || '' }} apt-get: >- ${{ matrix.install }} - libssl-dev - build-essential + build-essential libssl-dev zlib1g-dev + ${{ matrix.x86 && 'zlib1g-dev:i386' || '' }} - name: Clone Boost - uses: alandefreitas/cpp-actions/boost-clone@v1.8.8 + uses: alandefreitas/cpp-actions/boost-clone@v1.8.10 id: boost-clone with: branch: ${{ (github.ref_name == 'master' && github.ref_name) || 'develop' }} @@ -874,18 +887,20 @@ jobs: ws-proto-root http-proto-root buffers-root + rts-root scan-modules-ignore: | ws_io ws_proto http_proto buffers + rts - name: Install packages (Windows) - uses: alandefreitas/cpp-actions/package-install@v1.8.8 + uses: alandefreitas/cpp-actions/package-install@v1.8.10 if: ${{ startsWith(matrix.runs-on, 'windows') }} id: package-install-windows with: - vcpkg: "zlib,openssl" + vcpkg: zlib openssl vcpkg-dir: vcpkg-root vcpkg-triplet: ${{ matrix.x86 && 'x86-windows' || 'x64-windows' }} @@ -900,6 +915,9 @@ jobs: triplet=${{ matrix.x86 && 'x86-windows' || 'x64-windows' }} addrmdl=${{ matrix.x86 && '32' || '64' }} + # This is temporary until we move rts/build/brotli.jam to boost/tools/build + echo "import-search ${home}/boost-root/libs/rts/build ;" | 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 @@ -944,12 +962,13 @@ jobs: # Patch boost-root with workspace module cp -r "$workspace_root"/ws-io-root "libs/$module" + cp -r "$workspace_root"/rts-root libs/rts cp -r "$workspace_root"/buffers-root libs/buffers cp -r "$workspace_root"/http-proto-root libs/http_proto cp -r "$workspace_root"/ws-proto-root libs/ws_proto - name: Boost B2 Workflow - uses: alandefreitas/cpp-actions/b2-workflow@v1.8.8 + uses: alandefreitas/cpp-actions/b2-workflow@v1.8.10 if: ${{ !matrix.coverage && !matrix.time-trace }} env: ASAN_OPTIONS: ${{ (startsWith(matrix.compiler, 'apple-clang') && 'detect_invalid_pointer_pairs=0') || 'detect_invalid_pointer_pairs=2' }} @@ -970,7 +989,7 @@ jobs: stop-on-error: true - name: Boost CMake Workflow - uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.8 + uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 if: ${{ matrix.coverage || matrix.time-trace || matrix.build-cmake || matrix.is-earliest }} with: source-dir: boost-root @@ -1007,7 +1026,7 @@ jobs: echo "LD_LIBRARY_PATH=$GITHUB_WORKSPACE/.local/lib:$LD_LIBRARY_PATH" >> "$GITHUB_ENV" - name: Find Package Integration Workflow - uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.8 + uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 if: ${{ matrix.build-cmake || matrix.is-earliest }} with: source-dir: boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test @@ -1031,7 +1050,7 @@ jobs: toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: Subdirectory Integration Workflow - uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.8 + uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 if: ${{ matrix.build-cmake || matrix.is-earliest }} with: source-dir: boost-root/libs/${{ steps.patch.outputs.module }}/test/cmake_test @@ -1052,7 +1071,7 @@ jobs: 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.8 + uses: alandefreitas/cpp-actions/cmake-workflow@v1.8.10 if: ${{ matrix.build-cmake || matrix.is-earliest }} with: source-dir: boost-root/libs/${{ steps.patch.outputs.module }} @@ -1076,7 +1095,7 @@ jobs: toolchain: ${{ (startsWith(matrix.runs-on, 'windows') && steps.patch-user-config.outputs.toolchain) || '' }} - name: FlameGraph - uses: alandefreitas/cpp-actions/flamegraph@v1.8.8 + uses: alandefreitas/cpp-actions/flamegraph@v1.8.10 if: matrix.time-trace with: source-dir: boost-root/libs/ws_io @@ -1129,7 +1148,7 @@ jobs: fetch-depth: 100 - name: Changelog - uses: alandefreitas/cpp-actions/create-changelog@v1.8.8 + uses: alandefreitas/cpp-actions/create-changelog@v1.8.10 with: thank-non-regular: ${{ startsWith(github.ref, 'refs/tags/') }} github-token: ${{ secrets.GITHUB_TOKEN }} @@ -1181,8 +1200,15 @@ jobs: repository: cppalliance/buffers ref: develop + - name: Clone Boost.RunTimeServices + uses: actions/checkout@v3 + with: + path: rts-root + repository: cppalliance/rts + ref: develop + - name: Clone Boost - uses: alandefreitas/cpp-actions/boost-clone@v1.8.8 + uses: alandefreitas/cpp-actions/boost-clone@v1.8.10 id: boost-clone with: branch: ${{ (github.ref_name == 'master' && github.ref_name) || 'develop' }} @@ -1194,11 +1220,13 @@ jobs: ws-proto-root http-proto-root buffers-root + rts-root scan-modules-ignore: | ws_io ws_proto http_proto buffers + rts - name: Patch Boost id: patch @@ -1231,6 +1259,7 @@ jobs: # Patch boost-root with workspace module cp -r "$workspace_root"/ws-io-root "libs/$module" + cp -r "$workspace_root"/rts-root libs/rts cp -r "$workspace_root"/buffers-root libs/buffers cp -r "$workspace_root"/http-proto-root libs/http_proto cp -r "$workspace_root"/ws-proto-root libs/ws_proto diff --git a/cmake/toolchains/common.cmake b/cmake/toolchains/common.cmake index 0b7727a..04ec0bd 100644 --- a/cmake/toolchains/common.cmake +++ b/cmake/toolchains/common.cmake @@ -14,11 +14,3 @@ set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELWITHDEBINFO ON CACHE STRING "") if(WIN32) add_definitions(-D_WIN32_WINNT=0x0601 -D_CRT_SECURE_NO_WARNINGS) endif() - -# Project options. -set(BOOST_JSON_BUILD_BENCHMARKS ON CACHE STRING "") - -# Detect Boost tree. -if(NOT DEFINED BOOST_JSON_IN_BOOST_TREE AND EXISTS "${CMAKE_CURRENT_LIST_DIR}/../../../../Jamroot") - set(BOOST_JSON_IN_BOOST_TREE ON CACHE STRING "") -endif() diff --git a/doc/local-playbook.yml b/doc/local-playbook.yml index e48e9fd..c4971e8 100644 --- a/doc/local-playbook.yml +++ b/doc/local-playbook.yml @@ -14,7 +14,7 @@ content: ui: bundle: - url: https://github.com/boostorg/website-v2-docs/releases/download/ui-master/ui-bundle.zip + url: https://github.com/boostorg/website-v2-docs/releases/download/ui-develop/ui-bundle.zip snapshot: true antora: diff --git a/test/cmake_test/CMakeLists.txt b/test/cmake_test/CMakeLists.txt index e68018d..6c4f0fd 100644 --- a/test/cmake_test/CMakeLists.txt +++ b/test/cmake_test/CMakeLists.txt @@ -29,6 +29,7 @@ else() config http_proto system + rts throw_exception url ws_proto diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index d323ee0..2f4a303 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -8,8 +8,9 @@ # set(EXTRAFILES - ../../../url/extra/test_main.cpp - ../../../url/extra/test_suite.hpp + ../../../url/extra/test_suite/test_main.cpp + ../../../url/extra/test_suite/test_suite.cpp + ../../../url/extra/test_suite/test_suite.hpp ) file(GLOB_RECURSE PFILES CONFIGURE_DEPENDS *.cpp *.hpp) @@ -22,12 +23,16 @@ find_package(OpenSSL REQUIRED) source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "" FILES ${PFILES}) source_group("_extra" FILES ${EXTRAFILES}) add_executable(boost_ws_io_tests ${PFILES} ${EXTRAFILES}) -target_include_directories(boost_ws_io_tests PRIVATE . ../../../url/extra) +target_include_directories(boost_ws_io_tests PRIVATE . ../../../url/extra/test_suite) target_link_libraries(boost_ws_io_tests PRIVATE OpenSSL::SSL boost_beast boost_ws_io ) +if (TARGET boost_rts_zlib) + target_link_libraries(boost_ws_io_tests PRIVATE boost_rts_zlib) +endif () + add_test(NAME boost_ws_io_tests COMMAND boost_ws_io_tests) add_dependencies(tests boost_ws_io_tests) diff --git a/test/unit/Jamfile b/test/unit/Jamfile index 823c354..7deea89 100644 --- a/test/unit/Jamfile +++ b/test/unit/Jamfile @@ -19,11 +19,11 @@ project /boost/ws_io//boost_ws_io /boost/beast//boost_beast/off [ ac.check-library /openssl//ssl : /openssl//ssl ] - [ ac.check-library /zlib//zlib : /zlib//zlib : ] - [ ac.check-library /boost/ws_proto//boost_ws_proto_zlib : /boost/ws_proto//boost_ws_proto_zlib : ] - ../../../url/extra/test_main.cpp + [ ac.check-library /boost/rts//boost_rts_zlib : /boost/rts//boost_rts_zlib : ] + ../../../url/extra/test_suite/test_main.cpp + ../../../url/extra/test_suite/test_suite.cpp . - ../../../url/extra + ../../../url/extra/test_suite extra on darwin,norecover:static