tflags: -t --shallow=20 FTP
torture: true
+ - name: openssl i686
+ install_packages: gcc-14-i686-linux-gnu libssl-dev:i386 librtmp-dev:i386 libssh2-1-dev:i386 libidn2-0-dev:i386 libc-ares-dev:i386 zlib1g-dev:i386
+ configure: >-
+ PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig
+ CC=i686-linux-gnu-gcc-14
+ CPPFLAGS=-I/usr/include/i386-linux-gnu
+ LDFLAGS=-L/usr/lib/i386-linux-gnu
+ --host=i686-linux-gnu
+ --with-openssl --with-librtmp --with-libssh2 --with-libidn2 --enable-ares --enable-debug
+
- name: '!ssl !http !smtp !imap'
configure: --without-ssl --enable-debug --disable-http --disable-smtp --disable-imap --disable-unity
container: 'alpine:3.18'
steps:
- - if: matrix.build.container == null
+ - if: matrix.build.container == null && !contains(matrix.build.name, 'i686')
+ run: |
+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
+ sudo apt-get update -y
+ sudo apt-get install -y \
+ libtool autoconf automake pkgconf ninja-build stunnel4 \
+ libpsl-dev libbrotli-dev libzstd-dev \
+ ${{ matrix.build.install_packages }}
+ name: 'install prereqs'
+
+ - if: contains(matrix.build.name, 'i686')
run: |
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
+ sudo dpkg --add-architecture i386
sudo apt-get update -y
- sudo apt-get install libtool autoconf automake ninja-build pkgconf stunnel4 libpsl-dev libbrotli-dev libzstd-dev \
+ sudo apt-get install -y --no-install-suggests --no-install-recommends \
+ libtool autoconf automake pkgconf stunnel4 \
+ libpsl-dev:i386 libbrotli-dev:i386 libzstd-dev:i386 \
${{ matrix.build.install_packages }}
name: 'install prereqs'
fi
- name: 'install test prereqs'
- if: ${{ matrix.build.install_steps != 'skipall' && !startsWith(matrix.build.container, 'alpine') && matrix.build.container == null }}
+ if: ${{ matrix.build.install_steps != 'skipall' && matrix.build.container == null }}
run: |
sudo python3 -m pip install --break-system-packages -r tests/requirements.txt
+++ /dev/null
-# Copyright (C) Dan Fandrich
-#
-# SPDX-License-Identifier: curl
-
-name: Linux 32-bit
-
-'on':
- push:
- branches:
- - master
- - '*/ci'
- paths-ignore:
- - '**/*.md'
- - '**/CMakeLists.txt'
- - '.circleci/**'
- - 'appveyor.*'
- - 'CMake/**'
- - 'packages/**'
- - 'plan9/**'
- - 'projects/**'
- - 'winbuild/**'
- pull_request:
- branches:
- - master
- paths-ignore:
- - '**/*.md'
- - '**/CMakeLists.txt'
- - '.circleci/**'
- - 'appveyor.*'
- - 'CMake/**'
- - 'packages/**'
- - 'plan9/**'
- - 'projects/**'
- - 'winbuild/**'
-
-concurrency:
- group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
- cancel-in-progress: true
-
-permissions: {}
-
-env:
- MAKEFLAGS: -j 5
-
-jobs:
- linux-i686:
- name: ${{ matrix.build.name }}
- runs-on: 'ubuntu-24.04'
- timeout-minutes: 90
- strategy:
- fail-fast: false
- matrix:
- build:
- - name: Linux i686
- install_packages: gcc-14-i686-linux-gnu libssl-dev:i386 librtmp-dev:i386 libssh2-1-dev:i386 libidn2-0-dev:i386 libc-ares-dev:i386 zlib1g-dev:i386 libpsl-dev:i386 libbrotli-dev:i386 libzstd-dev:i386
- configure: --enable-debug --with-openssl --with-librtmp --with-libssh2 --with-libidn2 --enable-ares --host=i686-linux-gnu CC=i686-linux-gnu-gcc-14 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig CPPFLAGS=-I/usr/include/i386-linux-gnu LDFLAGS=-L/usr/lib/i386-linux-gnu
-
- steps:
- - run: |
- sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
- sudo dpkg --add-architecture i386
- sudo apt-get update -y
- sudo apt-get install -y --no-install-suggests --no-install-recommends libtool autoconf automake pkgconf stunnel4 ${{ matrix.build.install_packages }}
- name: 'install prereqs'
-
- - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4
-
- - run: autoreconf -fi
- name: 'autoreconf'
-
- - run: |
- ./configure --disable-dependency-tracking --enable-unity --enable-test-bundles --enable-warnings --enable-werror \
- ${{ matrix.build.configure }}
- name: 'configure'
-
- - name: 'curl_config.h'
- run: |
- echo '::group::raw'; cat lib/curl_config.h || true; echo '::endgroup::'
- grep -F '#define' lib/curl_config.h | sort || true
-
- - run: make V=1
- name: 'make'
-
- - run: ./src/curl -V
- name: 'check curl -V output'
-
- - run: make V=1 -C tests
- name: 'make tests'
-
- - name: 'install test prereqs'
- run: |
- sudo python3 -m pip install --break-system-packages -r tests/requirements.txt
-
- - run: make V=1 test-ci
- name: 'run tests'
- env:
- TFLAGS: "${{ matrix.build.tflags }}"
-
- - run: make V=1 examples
- name: 'make examples'