]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
GHA: disable building tests, apps, docs in dependencies
authorViktor Szakats <commit@vsz.me>
Thu, 21 Nov 2024 18:22:43 +0000 (19:22 +0100)
committerViktor Szakats <commit@vsz.me>
Fri, 22 Nov 2024 02:43:57 +0000 (03:43 +0100)
Also:
- for LibreSSL download the official source tarball instead of
  using the tagged Git repo and running the build script which
  merged the OpenBSD libressl repo into it. The latter method
  was also broken at the time of this commit.

Build times:
```
                       before   after
aws-lc:                 1m55s    ~40s
libressl:               1m16s  ~1m20s
openssl-tsan:           5m47s   3m43s
openssl:                6m38s   4m49s
quictls-no-deprecated:  2m28s   1m51s
quictls:               ~6m08s   4m16s
wolfssl-all:            1m36s     52s
wolfssl-master:         1m34s     53s
wolfssl-opensslextra:     50s     32s
```

LibreSSL build options are unchanged, but by using the tarball now
instead of two repos and a generator script, it also should be faster,
and more stable.

Closes #15622

.github/workflows/http3-linux.yml
.github/workflows/linux.yml

index e4301f03e79faab3b8b5a61447fb2a3e6a05a257..da6f25e273eeb72181d03edef77ac378724acc00 100644 (file)
@@ -175,7 +175,7 @@ jobs:
           cd $HOME
           git clone --quiet --depth=1 -b openssl-${{ env.quictls-version }}-quic1 https://github.com/quictls/openssl quictls
           cd quictls
-          ./config no-deprecated --prefix=$PWD/build --libdir=lib
+          ./config no-deprecated --prefix=$PWD/build --libdir=lib no-makedepend no-apps no-docs no-tests
           make
           make -j1 install_sw
         name: 'build quictls'
@@ -206,7 +206,8 @@ jobs:
           git fetch origin --depth=1 ${{ env.wolfssl-version }}
           git checkout ${{ env.wolfssl-version }}
           ./autogen.sh
-          ./configure --disable-dependency-tracking --enable-all --enable-quic --prefix=$PWD/build
+          ./configure --disable-dependency-tracking --enable-all --enable-quic \
+            --disable-benchmark --disable-crypttests --disable-examples --prefix=$PWD/build
           make
           make install
         name: 'build wolfssl'
@@ -413,7 +414,7 @@ jobs:
         run: |
           git clone --quiet --depth=1 -b openssl-${{ env.openssl-version }} https://github.com/openssl/openssl
           cd openssl
-          ./config --prefix=$HOME/openssl/build
+          ./config --prefix=$HOME/openssl/build no-makedepend no-apps no-docs no-tests
           make -j1 install_sw
           cat exporters/openssl.pc
 
index e75536b85d4d4518e35284535adff27500cc9aa6..3eae965a733f3e1890b4d017b3b08f1c519df3d2 100644 (file)
@@ -363,9 +363,9 @@ jobs:
       - name: 'build libressl'
         if: contains(matrix.build.install_steps, 'libressl') && steps.cache-libressl.outputs.cache-hit != 'true'
         run: |
-          git clone --quiet --depth=1 -b v${{ env.libressl-version }} https://github.com/libressl-portable/portable.git libressl-git
-          cd libressl-git
-          ./autogen.sh
+          curl -LOsSf --retry 6 --retry-connrefused --max-time 999 https://github.com/libressl/portable/releases/download/v${{ env.libressl-version }}/libressl-${{ env.libressl-version }}.tar.gz
+          tar -xzf libressl-${{ env.libressl-version }}.tar.gz
+          cd libressl-${{ env.libressl-version }}
           ./configure --disable-dependency-tracking --prefix=$HOME/libressl
           make install
 
@@ -386,7 +386,8 @@ jobs:
           tar -xzf v${{ env.wolfssl-version }}-stable.tar.gz
           cd wolfssl-${{ env.wolfssl-version }}-stable
           ./autogen.sh
-          ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --prefix=$HOME/wolfssl-all --enable-all
+          ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --enable-all \
+            --disable-benchmark --disable-crypttests --disable-examples --prefix=$HOME/wolfssl-all
           make install
 
       - name: 'cache wolfssl (opensslextra)'
@@ -406,7 +407,8 @@ jobs:
           tar -xzf v${{ env.wolfssl-version }}-stable.tar.gz
           cd wolfssl-${{ env.wolfssl-version }}-stable
           ./autogen.sh
-          ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --prefix=$HOME/wolfssl-opensslextra --enable-opensslextra
+          ./configure --disable-dependency-tracking --enable-tls13 --enable-harden --enable-opensslextra \
+            --disable-benchmark --disable-crypttests --disable-examples --prefix=$HOME/wolfssl-opensslextra
           make install
 
       - name: 'cache mbedtls'
@@ -447,7 +449,7 @@ jobs:
         run: |
           git clone --quiet --depth=1 -b openssl-${{ env.openssl-version }} https://github.com/openssl/openssl
           cd openssl
-          CC="clang" CFLAGS="-fsanitize=thread" LDFLAGS="-fsanitize=thread" ./config --prefix=$HOME/openssl --libdir=lib
+          CC="clang" CFLAGS="-fsanitize=thread" LDFLAGS="-fsanitize=thread" ./config --prefix=$HOME/openssl --libdir=lib no-makedepend no-apps no-docs no-tests
           make -j1 install_sw
 
       - name: 'cache quictls'
@@ -465,7 +467,7 @@ jobs:
         run: |
           git clone --quiet --depth=1 -b openssl-${{ env.quictls-version }}-quic1 https://github.com/quictls/openssl
           cd openssl
-          ./config --prefix=$HOME/quictls --libdir=lib
+          ./config --prefix=$HOME/quictls --libdir=lib no-makedepend no-apps no-docs no-tests
           make -j1 install_sw
 
       - name: 'cache msh3'
@@ -505,7 +507,7 @@ jobs:
           tar xzf v${{ env.awslc-version }}.tar.gz
           mkdir aws-lc-${{ env.awslc-version }}-build
           cd aws-lc-${{ env.awslc-version }}-build
-          cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$HOME/awslc ../aws-lc-${{ env.awslc-version }}
+          cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$HOME/awslc ../aws-lc-${{ env.awslc-version }} -DBUILD_TOOL=OFF -DBUILD_TESTING=OFF
           cmake --build .
           cmake --install .