]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
CI: enable parallel make in more builds
authorDan Fandrich <dan@coneharvesters.com>
Fri, 23 Jun 2023 19:51:41 +0000 (12:51 -0700)
committerDan Fandrich <dan@coneharvesters.com>
Sat, 24 Jun 2023 21:40:39 +0000 (14:40 -0700)
Most CI services provide at least two cores, so enable parallel make
jobs to take advantage of that for builds. Some dependencies aren't safe
to build in parallel so leave those as-is.  Also, rename a few
workflows to eliminate duplicate names and provide a better idea what
they're about.

.circleci/config.yml
.cirrus.yml
.github/workflows/awslc.yml
.github/workflows/linux.yml
.github/workflows/macos.yml
.github/workflows/ngtcp2-gnutls.yml
.github/workflows/ngtcp2-quictls.yml
.github/workflows/ngtcp2-wolfssl.yml
.github/workflows/torture.yml
.github/workflows/wolfssl.yml

index 207611626e8e1f5e493fad0009455c7e915c5191..51dc39a40c472180c8139cabb1c68d07e1b51866 100644 (file)
@@ -122,12 +122,12 @@ commands:
 
   build:
     steps:
-      - run: make V=1
-      - run: make V=1 examples
+      - run: make -j3 V=1
+      - run: make -j3 V=1 examples
 
   test:
     steps:
-      - run: make V=1 test-ci
+      - run: make -j3 V=1 test-ci
 
 executors:
   ubuntu:
index 3b164288bf3a324b56e5f5073c9b25a5ad84950f..0738c4573e385da5f9931e75b451d1c83ad8c523 100644 (file)
@@ -53,7 +53,7 @@ freebsd_task:
   env:
     CIRRUS_CLONE_DEPTH: 10
     CRYPTOGRAPHY_DONT_BUILD_RUST: 1
-    MAKE_FLAGS: -j 2
+    MAKE_FLAGS: -j 3
 
   pkginstall_script:
     - pkg update -f
@@ -145,7 +145,7 @@ windows_task:
   env:
     CIRRUS_CLONE_DEPTH: 10
     MSYS2_PATH_TYPE: inherit
-    MAKEFLAGS: -j 2
+    MAKEFLAGS: -j 3
 
   prepare_script: |
     %container_cmd% -l -c "cd $(echo '%cd%') && %prepare%"
@@ -241,7 +241,7 @@ macos_task:
 
   env:
     CIRRUS_CLONE_DEPTH: 10
-    MAKE_FLAGS: -j 4
+    MAKE_FLAGS: -j 12
 
   pkginstall_script:
     - echo libtool autoconf automake pkg-config ${install_packages} | xargs -Ix -n1 echo brew '"x"' > /tmp/Brewfile
@@ -278,7 +278,7 @@ linux_musl_task:
 
   env:
     CIRRUS_CLONE_DEPTH: 10
-    MAKEFLAGS: -j 2
+    MAKEFLAGS: -j 3
 
   pkginstall_script:
     - apk add --no-cache build-base autoconf automake libtool perl openssl-dev libssh2-dev zlib-dev brotli-dev zstd-dev libidn2-dev openldap-dev heimdal-dev libpsl-dev py3-impacket py3-asn1 py3-six py3-pycryptodomex perl-time-hires openssh stunnel sudo
index 260f0c6d6b89f64840106717a5dd26ea8a5956b3..f9bc56398203062fc3e063f5c3bf1e3e4809021a 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: Linux
+name: Linux AWS-LC
 
 on:
   push:
@@ -40,6 +40,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autoconf:
     name: awslc (autoconf)
@@ -77,13 +80,13 @@ jobs:
         cd ..
       name: 'configure out-of-tree'
 
-    - run: make -C build -j 2 V=1
+    - run: make -C build V=1
       name: 'make'
 
-    - run: make -C build -j 2 V=1 examples
+    - run: make -C build V=1 examples
       name: 'make examples'
 
-    - run: make -C build -j 2 V=1 -C tests
+    - run: make -C build V=1 -C tests
       name: 'make tests'
 
     - run: make -C build V=1 test-ci
index f8ef60089fde0bc9d966d756c49a980b93c9ffdc..65cc28dc69a65e52a9896c656d580919d5781975 100644 (file)
@@ -39,6 +39,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}
@@ -231,7 +234,7 @@ jobs:
         git clone --quiet --depth=1 https://github.com/openssl/openssl
         cd openssl
         ./config enable-tls1_3 --prefix=$HOME/openssl3
-        make install_sw
+        make -j1 install_sw
       name: 'install openssl'
 
     - if: ${{ contains(matrix.build.install_steps, 'quictls') }}
@@ -239,7 +242,7 @@ jobs:
         git clone --quiet --depth=1 -b OpenSSL_1_1_1t+quic https://github.com/quictls/openssl
         cd openssl
         ./config enable-tls1_3 --prefix=$HOME/quictls
-        make install_sw
+        make -j1 install_sw
       name: 'install quictls'
 
     - if: ${{ contains(matrix.build.install_steps, 'msh3') }}
index 037348c6766c746b021016c9e747bbc010f5219f..088852ac26a290ec1ee02c3befa451d9b80dda25 100644 (file)
@@ -41,6 +41,7 @@ permissions: {}
 
 env:
   DEVELOPER_DIR: /Applications/Xcode_14.0.1.app/Contents/Developer
+  MAKEFLAGS: -j 5
 
 jobs:
   autotools:
index 4477fac413a68a2934582e483d42101d85220e6b..fed6d64710fbd1e5c7f50060d58927ac312e7f2c 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: ngtcp2
+name: ngtcp2 GnuTLS
 
 on:
   push:
@@ -44,6 +44,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}
@@ -81,7 +84,7 @@ jobs:
         git clone --quiet --depth=1 -b openssl-3.0.9+quic https://github.com/quictls/openssl
         cd openssl
         ./config --prefix=$HOME/all --libdir=$HOME/all/lib
-        make install_sw
+        make -j1 install_sw
       name: 'install quictls'
 
     - run: |
index d81c56ecd283ec62ff9c9f9937e75350992c42ba..85cf2f0e95f799b59af3ed755554eddbaf97d20d 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: ngtcp2
+name: ngtcp2 quictls
 
 on:
   push:
@@ -44,6 +44,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}
@@ -74,7 +77,7 @@ jobs:
         git clone --quiet --depth=1 -b openssl-3.0.9+quic https://github.com/quictls/openssl
         cd openssl
         ./config --prefix=$HOME/all --libdir=$HOME/all/lib
-        make install_sw
+        make -j1 install_sw
       name: 'install quictls'
 
     - run: |
index 304d6cbe4aa207be501c0b3bc349684aa1d8c9e2..1ac997df709c8cf666a6d2ef655149b63a4cacb4 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: ngtcp2
+name: ngtcp2 wolfSSL
 
 on:
   push:
@@ -44,6 +44,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}
@@ -84,7 +87,7 @@ jobs:
         git clone --quiet --depth=1 -b openssl-3.0.9+quic https://github.com/quictls/openssl
         cd openssl
         ./config --prefix=$HOME/all --libdir=$HOME/all/lib
-        make install_sw
+        make -j1 install_sw
       name: 'install quictls'
 
     - run: |
index 8e089a0b17ae3b354472b11f7dab6ace24dd87a8..cb639a5e3841803be14d4762aa1106f06a2039e4 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: Linux
+name: Linux torture
 
 on:
   push:
@@ -44,6 +44,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}
index 904933712ab6ee2984e5a23b2afe47edab971569..3ca65b14172a50d459a28515fec6f61eb08f6bd8 100644 (file)
@@ -2,7 +2,7 @@
 #
 # SPDX-License-Identifier: curl
 
-name: Linux
+name: Linux wolfSSL
 
 on:
   push:
@@ -44,6 +44,9 @@ concurrency:
 
 permissions: {}
 
+env:
+  MAKEFLAGS: -j 3
+
 jobs:
   autotools:
     name: ${{ matrix.build.name }}