summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2023-01-05 18:47:38 +0100
committerDaniel Stenberg <daniel@haxx.se>2023-01-09 11:09:33 +0100
commit0978b2ef251891acecd636d7b355fefacc0e30fa (patch)
tree94303490e4c2d4e862c1ee0a54d20b68641caa64
parent5cb63da771abfbf4776a8207053de8bfd71b2e7a (diff)
downloadcurl-0978b2ef251891acecd636d7b355fefacc0e30fa.tar.gz
.github/workflows/linux.yml: add a quiche CI job
Move over from zuul Closes #10241
-rw-r--r--.github/workflows/linux.yml30
-rw-r--r--zuul.d/jobs.yaml19
2 files changed, 28 insertions, 21 deletions
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
index 4505c6692..b3a9daca6 100644
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -32,6 +32,11 @@ jobs:
fail-fast: false
matrix:
build:
+ - name: quiche
+ install_packages: zlib1g-dev
+ install_steps: quiche
+ configure: LDFLAGS="-Wl,-rpath,/home/runner/work/curl/curl/quiche/target/release" --with-openssl=/home/runner/work/curl/curl/quiche/quiche/deps/boringssl/src --enable-debug --with-quiche=/home/runner/work/curl/curl/quiche/target/release
+
- name: bearssl
install_packages: zlib1g-dev
install_steps: bearssl
@@ -116,6 +121,8 @@ jobs:
sudo python3 -m pip install impacket
name: 'install prereqs and impacket'
+ - uses: actions/checkout@v3
+
- if: ${{ contains(matrix.build.install_steps, 'gcc-11') }}
run: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa
@@ -146,6 +153,27 @@ jobs:
make install
name: 'install libressl'
+ - if: ${{ contains(matrix.build.install_steps, 'quiche') }}
+ run: |
+ git clone --depth=1 --recursive https://github.com/cloudflare/quiche.git
+ cd quiche
+ #### Work-around https://github.com/curl/curl/issues/7927 #######
+ #### See https://github.com/alexcrichton/cmake-rs/issues/131 ####
+ sed -i -e 's/cmake = "0.1"/cmake = "=0.1.45"/' quiche/Cargo.toml
+
+ # /home/runner/work/curl/curl/boringssl
+
+ cargo build -v --package quiche --release --features ffi,pkg-config-meta,qlog --verbose
+ mkdir -v quiche/deps/boringssl/src/lib
+ ln -vnf $(find target/release -name libcrypto.a -o -name libssl.a) quiche/deps/boringssl/src/lib/
+
+ # include dir
+ # /home/runner/work/curl/curl/quiche/quiche/deps/boringssl/src/include
+ # lib dir
+ # /home/runner/work/curl/curl/quiche/quiche/deps/boringssl/src/lib
+
+ name: 'build quiche and boringssl'
+
- if: ${{ contains(matrix.build.install_steps, 'mbedtls') }}
run: |
git clone --depth=1 -b v3.3.0 https://github.com/ARMmbed/mbedtls
@@ -212,8 +240,6 @@ jobs:
printenv >> $GITHUB_ENV
name: 'install Intel compilers'
- - uses: actions/checkout@v3
-
- run: autoreconf -fi
name: 'autoreconf'
diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml
index 0e0e63f50..25d2b5e3b 100644
--- a/zuul.d/jobs.yaml
+++ b/zuul.d/jobs.yaml
@@ -70,24 +70,6 @@
LD_LIBRARY_PATH: "{{ ansible_user_dir }}/boringssl/lib:/usr/local/lib"
- job:
- name: curl-novalgrind-boringssl-with-openssl-quiche
- parent: curl-base
- vars:
- curl_apt_packages:
- - libpsl-dev
- - libbrotli-dev
- - libzstd-dev
- curl_env:
- CC: gcc-8
- CXX: g++-8
- T: novalgrind
- QUICHE: "yes"
- C: >-
- --with-openssl={{ ansible_user_dir }}/quiche/quiche/deps/boringssl/src
- --with-quiche={{ ansible_user_dir }}/quiche/target/release
- LD_LIBRARY_PATH: "{{ ansible_user_dir }}/quiche/target/release:/usr/local/lib"
-
-- job:
name: curl-novalgrind-ngtcp2-with-openssl
parent: curl-base
vars:
@@ -218,7 +200,6 @@
jobs:
- curl-normal-with-openssl-gssapi-libssh2-checksrc
- curl-novalgrind-boringssl-with-openssl
- - curl-novalgrind-boringssl-with-openssl-quiche
- curl-novalgrind-ngtcp2-with-openssl
- curl-debug-clang-disable-alt-svc-with-openssl
- curl-debug-clang-with-gnutls