GHA/linux: build and enable nghttp2 for Fil-C job
No binary (build failed)
—
(log yok)
| @@ -55,6 +55,8 @@ env: | |
| RUSTLS_VERSION: 0.15.0 | |
| # handled in renovate.json | |
| OPENLDAP_VERSION: 2.6.10 | |
| + | # renovate: datasource=github-tags depName=nghttp2/nghttp2 versioning=semver registryUrl=https://github.com |
| + | NGHTTP2_VERSION: 1.68.0 |
| # renovate: datasource=github-tags depName=pizlonator/fil-c versioning=semver-partial registryUrl=https://github.com | |
| FIL_C_VERSION: 0.674 | |
| @@ -216,14 +218,15 @@ jobs: | |
| configure: --without-ssl --enable-debug --disable-http --disable-smtp --disable-imap --disable-unity | |
| - name: 'libressl Fil-C' | |
| - | install_steps: filc libressl-filc pytest |
| + | install_steps: filc libressl-filc nghttp2-filc pytest |
| tflags: '!776' # adds 1-9 minutes to the test run step, and fails consistently | |
| CC: /home/runner/filc/build/bin/filcc | |
| + | PKG_CONFIG_PATH: /home/runner/nghttp2/lib/pkgconfig |
| generate: >- | |
| -DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_UNITY_BUILD=OFF | |
| -DOPENSSL_ROOT_DIR=/home/runner/libressl -DCURL_USE_LIBPSL=OFF | |
| -DCURL_ZLIB=OFF -DCURL_BROTLI=OFF -DCURL_ZSTD=OFF | |
| - | -DUSE_NGHTTP2=OFF -DCURL_DISABLE_LDAP=ON -DUSE_LIBIDN2=OFF -DCURL_USE_LIBSSH2=OFF |
| + | -DCURL_DISABLE_LDAP=ON -DUSE_LIBIDN2=OFF -DCURL_USE_LIBSSH2=OFF |
| - name: 'clang-tidy' | |
| install_packages: clang-tidy libssl-dev libidn2-dev libssh2-1-dev libnghttp2-dev libldap-dev libkrb5-dev librtmp-dev libgnutls28-dev | |
| @@ -435,6 +438,27 @@ jobs: | |
| cmake --build . | |
| cmake --install . | |
| + | - name: 'cache nghttp2 (filc)' |
| + | uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 |
| + | id: cache-nghttp2-filc |
| + | env: |
| + | cache-name: cache-nghttp2-filc |
| + | with: |
| + | path: ~/nghttp2 |
| + | key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.NGHTTP2_VERSION }}-${{ env.FIL_C_VERSION }} |
| + | |
| + | - name: 'build nghttp2 (filc)' |
| + | if: ${{ contains(matrix.build.install_steps, 'nghttp2-filc') && steps.cache-nghttp2-filc.outputs.cache-hit != 'true' }} |
| + | run: | |
| + | curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \ |
| + | --location "https://github.com/nghttp2/nghttp2/releases/download/v${NGHTTP2_VERSION}/nghttp2-${NGHTTP2_VERSION}.tar.xz" | tar -xJ |
| + | cd "nghttp2-${NGHTTP2_VERSION}" |
| + | cmake -B . -G Ninja -DENABLE_LIB_ONLY=ON -DBUILD_TESTING=OFF -DENABLE_DOC=OFF -DCMAKE_INSTALL_PREFIX=/home/runner/nghttp2 \ |
| + | -DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF \ |
| + | -DCMAKE_C_COMPILER=/home/runner/filc/build/bin/filcc |
| + | cmake --build . |
| + | cmake --install . |
| + | |
| - name: 'cache wolfssl (all)' | |
| if: ${{ contains(matrix.build.install_steps, 'wolfssl-all') }} | |
| uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |