aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/asio/.github
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-10-24 19:32:01 +0200
committerGitHub Enterprise <[email protected]>2025-10-24 19:32:01 +0200
commit4cba4eb3f122c7a1a49b629b1c0656d7f817f001 (patch)
treee184821073167f6e81a75193efca91013d7b359b /thirdparty/asio/.github
parentfixed progress bar when scanning changed local files (#608) (diff)
downloadzen-4cba4eb3f122c7a1a49b629b1c0656d7f817f001.tar.xz
zen-4cba4eb3f122c7a1a49b629b1c0656d7f817f001.zip
move cpr in-tree (#605)
* added cpr 1.10.5 in-tree to allow updates to vcpkg without breaking the build * added asio 1.29.0 in-tree to remove one more vcpkg dependency * bumped vcpkg to 2024.06.15 to address failure to build due to use of deprecated binaries in vcpkg (404 error: `https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.1.0-1-any.pkg.tar.zst` during build)
Diffstat (limited to 'thirdparty/asio/.github')
-rw-r--r--thirdparty/asio/.github/workflows/ci.yml372
1 files changed, 372 insertions, 0 deletions
diff --git a/thirdparty/asio/.github/workflows/ci.yml b/thirdparty/asio/.github/workflows/ci.yml
new file mode 100644
index 000000000..9637558b0
--- /dev/null
+++ b/thirdparty/asio/.github/workflows/ci.yml
@@ -0,0 +1,372 @@
+name: asio CI
+
+on:
+ push:
+ branches: [ master, citest-* ]
+
+jobs:
+ build:
+ strategy:
+ fail-fast: false
+ matrix:
+ build-type: ['sanity']
+ runs-on: [ubuntu-20.04, ubuntu-22.04, macos-latest]
+ compiler: [g++-7, g++-8, g++-9, g++-10, g++-11, g++-12, clang++-10, clang++-14, g++]
+ cxx-std: ['c++11', 'c++14', 'c++17', 'c++2a', 'c++20']
+ separate-compilation: ['', '--enable-separate-compilation']
+ optim-level: ['-O0']
+ no-deprecated: ['']
+ select-reactor: ['', '-DASIO_DISABLE_EPOLL', '-DASIO_DISABLE_KQUEUE']
+ handler-tracking: ['']
+ boost: ['']
+ boost-url: ['']
+ exclude:
+ # New compilers don't run on ubuntu 20.04
+ - runs-on: ubuntu-20.04
+ compiler: g++-12
+ - runs-on: ubuntu-20.04
+ compiler: clang++-14
+ # Older compilers don't run on ubuntu 22.04
+ - runs-on: ubuntu-22.04
+ compiler: g++-7
+ - runs-on: ubuntu-22.04
+ compiler: g++-8
+ - runs-on: ubuntu-22.04
+ compiler: clang++-10
+ # Unversioned g++ doesn't run on ubuntu
+ - runs-on: ubuntu-20.04
+ compiler: g++
+ - runs-on: ubuntu-22.04
+ compiler: g++
+ # Versioned g++ and clang++ don't run on macOS
+ - runs-on: macos-latest
+ compiler: g++-7
+ - runs-on: macos-latest
+ compiler: g++-8
+ - runs-on: macos-latest
+ compiler: g++-9
+ - runs-on: macos-latest
+ compiler: g++-10
+ - runs-on: macos-latest
+ compiler: g++-11
+ - runs-on: macos-latest
+ compiler: g++-12
+ - runs-on: macos-latest
+ compiler: clang++-10
+ - runs-on: macos-latest
+ compiler: clang++-14
+ # Older compilers don't support newer std variants
+ - compiler: g++-7
+ cxx-std: c++2a
+ - compiler: g++-7
+ cxx-std: c++20
+ - compiler: g++-8
+ cxx-std: c++20
+ - compiler: g++-9
+ cxx-std: c++20
+ - compiler: g++-10
+ cxx-std: c++2a
+ - compiler: g++-11
+ cxx-std: c++2a
+ - compiler: g++-12
+ cxx-std: c++2a
+ - compiler: clang++-10
+ cxx-std: c++20
+ - compiler: clang++-14
+ cxx-std: c++20
+ - compiler: clang++-14
+ cxx-std: c++2a
+ - runs-on: macos-latest
+ cxx-std: c++20
+ # Specifying the select reactor is OS-specific
+ - runs-on: ubuntu-20.04
+ select-reactor: -DASIO_DISABLE_KQUEUE
+ - runs-on: ubuntu-22.04
+ select-reactor: -DASIO_DISABLE_KQUEUE
+ - runs-on: macos-latest
+ select-reactor: -DASIO_DISABLE_EPOLL
+ # Trim builds that use separate compilation
+ - compiler: g++-7
+ separate-compilation: --enable-separate-compilation
+ - compiler: g++-8
+ separate-compilation: --enable-separate-compilation
+ - compiler: g++-9
+ separate-compilation: --enable-separate-compilation
+ - compiler: g++-10
+ separate-compilation: --enable-separate-compilation
+ - compiler: g++-11
+ separate-compilation: --enable-separate-compilation
+ - runs-on: macos-latest
+ cxx-std: c++14
+ separate-compilation: --enable-separate-compilation
+ - runs-on: macos-latest
+ cxx-std: c++17
+ separate-compilation: --enable-separate-compilation
+ # Trim builds that use select reactor
+ - compiler: g++-7
+ select-reactor: -DASIO_DISABLE_EPOLL
+ - compiler: g++-8
+ select-reactor: -DASIO_DISABLE_EPOLL
+ - compiler: g++-9
+ select-reactor: -DASIO_DISABLE_EPOLL
+ - compiler: g++-10
+ select-reactor: -DASIO_DISABLE_EPOLL
+ - compiler: g++-11
+ select-reactor: -DASIO_DISABLE_EPOLL
+ include:
+ #
+ # Linux / g++-12 -std=c++20 -fcoroutines / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: g++-12
+ cxx-std: c++20 -fcoroutines
+ optim-level: -O2
+ #
+ # Linux / g++-12 -std=c++17 / -O2 / boost 1.76
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: g++-12
+ cxx-std: c++17
+ optim-level: -O2
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_76_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2
+ #
+ # Linux / g++-11 -std=c++14 / -O0 / standalone / separate compilation
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: g++-11
+ cxx-std: c++14
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ #
+ # Linux / g++-10 / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ optim-level: -O2
+ #
+ # Linux / g++-10 / -O0 / standalone / handler tracking
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ optim-level: -O0
+ handler-tracking: -DASIO_ENABLE_HANDLER_TRACKING
+ #
+ # Linux / g++-10 / -O0 / standalone / epoll disabled
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ optim-level: -O0
+ select-reactor: -DASIO_DISABLE_EPOLL
+ #
+ # Linux / g++-10 / -O0 / standalone / separate compilation / handler tracking
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ handler-tracking: -DASIO_ENABLE_HANDLER_TRACKING
+ #
+ # Linux / g++-10 / -O0 / standalone / separate compilation / epoll disabled
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ select-reactor: -DASIO_DISABLE_EPOLL
+ #
+ # Linux / g++-10 / -O2 / boost 1.83
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ optim-level: -O2
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ #
+ # Linux / g++-10 / -O0 / boost 1.83 / epoll disabled
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ optim-level: -O0
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ select-reactor: -DASIO_DISABLE_EPOLL
+ #
+ # Linux / g++-10 / -O0 / boost 1.83 / separate compilation
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-10
+ cxx-std: c++14
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ #
+ # Linux / g++-7 / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-7
+ cxx-std: c++11
+ optim-level: -O2
+ #
+ # Linux / g++-7 / -O0 / standalone / separate compilation
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-7
+ cxx-std: c++11
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ #
+ # Linux / g++-7 -std=c++11 / -O2 / boost 1.83
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: g++-7
+ cxx-std: c++11
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O2
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ #
+ # Linux / clang++-14 -std=c++2a / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: clang++-14
+ cxx-std: c++2a
+ cxx-stdlib: -stdlib=libc++
+ optim-level: -O2
+ #
+ # Linux / clang++-14 -std=c++11 / -O0 / standalone / separate compilation
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: clang++-14
+ cxx-std: c++11
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ #
+ # Linux / clang++-14 -std=c++20 / -O2 / standalone / separate compilation
+ #
+ - build-type: full
+ runs-on: ubuntu-22.04
+ compiler: clang++-14
+ cxx-std: c++20
+ cxx-stdlib: -stdlib=libc++
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O2
+ #
+ # Linux / clang++-10 -std=c++11 / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: ubuntu-20.04
+ compiler: clang++-10
+ cxx-std: c++11
+ optim-level: -O2
+ #
+ # macOS / c++2a -fcoroutines-ts / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++2a -fcoroutines-ts
+ optim-level: -O2
+ #
+ # macOS / c++11 / -O2 / standalone
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++11
+ optim-level: -O2
+ #
+ # macOS / c++11 / -O0 / standalone / kqueue disabled
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++11
+ optim-level: -O0
+ select-reactor: -DASIO_DISABLE_KQUEUE
+ #
+ # macOS / c++11 / -O0 / standalone / separate compilation
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++11
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ #
+ # macOS / c++11 / -O2 / boost 1.83
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++11
+ optim-level: -O2
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ #
+ # macOS / c++11 / -O2 / boost 1.83 / separate compilation
+ #
+ - build-type: full
+ runs-on: macos-latest
+ compiler: g++
+ cxx-std: c++11
+ separate-compilation: --enable-separate-compilation
+ optim-level: -O0
+ with-boost: --with-boost=$GITHUB_WORKSPACE/boost_1_83_0
+ boost-url: https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.tar.bz2
+ runs-on: ${{ matrix.runs-on }}
+ env:
+ CXX: ${{ matrix.compiler }}
+ CXXFLAGS: -std=${{ matrix.cxx-std }} ${{ matrix.cxx-stdlib }} ${{ matrix.optim-level }} -Wall -Wextra ${{ matrix.no-deprecated }} ${{ matrix.select-reactor }} ${{ matrix.handler-tracking }}
+ steps:
+ - uses: actions/checkout@v2
+ - name: Install autotools
+ if: startsWith(matrix.runs-on, 'macos')
+ run: brew install automake
+ - name: Install compiler
+ if: startsWith(matrix.runs-on, 'ubuntu')
+ run: sudo apt-get install -y ${{ matrix.compiler }}
+ - name: Install boost
+ if: startsWith(matrix.with-boost, '--with-boost=$GITHUB_WORKSPACE')
+ run: |
+ wget --quiet -O - ${{ matrix.boost-url }} | tar -xj
+ - name: Configure
+ working-directory: asio
+ run: |
+ ./autogen.sh
+ ./configure ${{ matrix.separate-compilation }} ${{ matrix.with-boost }}
+ - name: Line length check
+ working-directory: asio
+ run: perl ./boostify.pl --includes-only
+ - name: Sanity check
+ if: startsWith(matrix.build-type, 'sanity')
+ working-directory: asio/src/tests
+ run: make unit/io_context.log unit/ip/tcp.log unit/ts/net.log
+ - name: Build
+ if: startsWith(matrix.build-type, 'full')
+ working-directory: asio
+ run: make && make check