From: Dan Fandrich Date: Fri, 23 Jun 2023 19:51:41 +0000 (-0700) Subject: CI: enable parallel make in more builds X-Git-Tag: curl-8_2_0~45 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb802b521af997230b65174a559f5c419520e142;p=thirdparty%2Fcurl.git CI: enable parallel make in more builds 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. --- diff --git a/.circleci/config.yml b/.circleci/config.yml index 207611626e..51dc39a40c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -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: diff --git a/.cirrus.yml b/.cirrus.yml index 3b164288bf..0738c4573e 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -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 diff --git a/.github/workflows/awslc.yml b/.github/workflows/awslc.yml index 260f0c6d6b..f9bc563982 100644 --- a/.github/workflows/awslc.yml +++ b/.github/workflows/awslc.yml @@ -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 diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index f8ef60089f..65cc28dc69 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -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') }} diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 037348c676..088852ac26 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -41,6 +41,7 @@ permissions: {} env: DEVELOPER_DIR: /Applications/Xcode_14.0.1.app/Contents/Developer + MAKEFLAGS: -j 5 jobs: autotools: diff --git a/.github/workflows/ngtcp2-gnutls.yml b/.github/workflows/ngtcp2-gnutls.yml index 4477fac413..fed6d64710 100644 --- a/.github/workflows/ngtcp2-gnutls.yml +++ b/.github/workflows/ngtcp2-gnutls.yml @@ -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: | diff --git a/.github/workflows/ngtcp2-quictls.yml b/.github/workflows/ngtcp2-quictls.yml index d81c56ecd2..85cf2f0e95 100644 --- a/.github/workflows/ngtcp2-quictls.yml +++ b/.github/workflows/ngtcp2-quictls.yml @@ -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: | diff --git a/.github/workflows/ngtcp2-wolfssl.yml b/.github/workflows/ngtcp2-wolfssl.yml index 304d6cbe4a..1ac997df70 100644 --- a/.github/workflows/ngtcp2-wolfssl.yml +++ b/.github/workflows/ngtcp2-wolfssl.yml @@ -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: | diff --git a/.github/workflows/torture.yml b/.github/workflows/torture.yml index 8e089a0b17..cb639a5e38 100644 --- a/.github/workflows/torture.yml +++ b/.github/workflows/torture.yml @@ -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 }} diff --git a/.github/workflows/wolfssl.yml b/.github/workflows/wolfssl.yml index 904933712a..3ca65b1417 100644 --- a/.github/workflows/wolfssl.yml +++ b/.github/workflows/wolfssl.yml @@ -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 }}