From bf594226d66dc2bbf62a18f3dea1ceabe5b26dcf Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Sun, 16 Aug 2026 01:57:00 +0200 Subject: [PATCH] GHA/non-native: BSD build improvements - show binary sizes and file types in 'curl -V' step, like rest of workflows. - make `build tests` step verbose. - disable typecheck on emulated CPUs. It results in 3-4x speed-up for riscv64, and ~2x for ARM64 when building tests (in particular the libtests binary.) Ref: 9e6f1c5efb7a70e1f33e467a738f3e3f652f3174 #19637 - enable building tests in an ARM64 job. - move examples build test from ARM64 to riscv64 (to spread job times). Closes #22601 --- .github/workflows/non-native.yml | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/.github/workflows/non-native.yml b/.github/workflows/non-native.yml index f40e3bfb8e..7ae7b1e4d1 100644 --- a/.github/workflows/non-native.yml +++ b/.github/workflows/non-native.yml @@ -73,17 +73,17 @@ jobs: install: 'cmake-core ninja perl5 krb5-devel openldap26-client libidn2', options: '-DCURL_USE_GSSAPI=ON -DCMAKE_UNITY_BUILD=OFF' } - - { os: 'freebsd' , version: '15.1', build: 'cmake' , arch: 'riscv64', cc: 'clang', desc: 'openssl skipall !examples', - install: 'cmake-core ninja', - options: '-D_CURL_PREFILL=ON -DBUILD_LIBCURL_DOCS=OFF -DBUILD_MISC_DOCS=OFF -DENABLE_CURL_MANUAL=OFF -DCURL_DISABLE_HTTPSIG=OFF' } + - { os: 'freebsd' , version: '15.1', build: 'cmake' , arch: 'riscv64', cc: 'clang', desc: 'openssl skipall', + install: 'cmake-core ninja perl5', + options: '-D_CURL_PREFILL=ON -DBUILD_LIBCURL_DOCS=OFF -DBUILD_MISC_DOCS=OFF -DENABLE_CURL_MANUAL=OFF -DCURL_DISABLE_HTTPSIG=OFF -DCURL_DISABLE_TYPECHECK=ON' } - { os: 'freebsd' , version: '14.3', build: 'autotools', arch: 'arm64' , cc: 'clang', desc: 'openssl skipall !examples', install: 'autoconf automake libtool krb5-devel openldap26-client libidn2 stunnel', - options: '--with-openssl --with-gssapi --enable-ldap --enable-ldaps --with-libidn2' } + options: '--with-openssl --with-gssapi --enable-ldap --enable-ldaps --with-libidn2 --disable-typecheck' } - - { os: 'freebsd' , version: '14.3', build: 'cmake' , arch: 'arm64' , cc: 'clang', desc: 'openssl skipall', + - { os: 'freebsd' , version: '14.3', build: 'cmake' , arch: 'arm64' , cc: 'clang', desc: 'openssl skiprun !examples', install: 'cmake-core ninja perl5 krb5-devel openldap26-client libidn2 stunnel', - options: '-DCURL_USE_GSSAPI=ON' } + options: '-DCURL_USE_GSSAPI=ON -DCURL_DISABLE_TYPECHECK=ON' } # https://app.midnightbsd.org/ # https://man.midnightbsd.org/cgi-bin/man.cgi/mport @@ -206,7 +206,10 @@ jobs: fi - name: 'curl -V' - run: bld/src/curl --disable --version + run: | + find . -type f \( -name curl -o -name '*.so.*' -o -name '*.a' \) -print0 | xargs -0 file -- + find . -type f \( -name curl -o -name '*.so.*' -o -name '*.a' \) -print0 | xargs -0 stat -f '%10z bytes: %N' -- + bld/src/curl --disable --version - name: 'curl install' run: | @@ -220,9 +223,9 @@ jobs: if: ${{ !contains(matrix.desc, 'skipall') }} # Slow on emulated CPU run: | if [ "${MATRIX_BUILD}" = 'cmake' ]; then - cmake --build bld --target testdeps + cmake --build bld --verbose --target testdeps else - make -C bld -C tests + make -C bld V=1 -C tests fi - name: 'run tests'