1# Copyright (C) Dan Fandrich 2# 3# SPDX-License-Identifier: curl 4 5name: Linux 32-bit 6 7on: 8 push: 9 branches: 10 - master 11 - '*/ci' 12 paths-ignore: 13 - '**/*.md' 14 - '**/CMakeLists.txt' 15 - '.azure-pipelines.yml' 16 - '.circleci/**' 17 - '.cirrus.yml' 18 - 'appveyor.*' 19 - 'CMake/**' 20 - 'packages/**' 21 - 'plan9/**' 22 - 'projects/**' 23 - 'winbuild/**' 24 pull_request: 25 branches: 26 - master 27 paths-ignore: 28 - '**/*.md' 29 - '**/CMakeLists.txt' 30 - '.azure-pipelines.yml' 31 - '.circleci/**' 32 - '.cirrus.yml' 33 - 'appveyor.*' 34 - 'CMake/**' 35 - 'packages/**' 36 - 'plan9/**' 37 - 'projects/**' 38 - 'winbuild/**' 39 40concurrency: 41 group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} 42 cancel-in-progress: true 43 44permissions: {} 45 46env: 47 MAKEFLAGS: -j 3 48 49jobs: 50 linux-i686: 51 name: ${{ matrix.build.name }} 52 runs-on: 'ubuntu-22.04' 53 timeout-minutes: 90 54 strategy: 55 fail-fast: false 56 matrix: 57 build: 58 - name: Linux i686 59 install_packages: gcc-11-i686-linux-gnu libssl-dev:i386 zlib1g-dev:i386 libpsl-dev:i386 libbrotli-dev:i386 libzstd-dev:i386 60 configure: --enable-debug --enable-websockets --with-openssl --host=i686-linux-gnu CC=i686-linux-gnu-gcc-11 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig CPPFLAGS=-I/usr/include/i386-linux-gnu LDFLAGS=-L/usr/lib/i386-linux-gnu 61 62 steps: 63 - run: | 64 sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list 65 sudo dpkg --add-architecture i386 66 sudo apt-get update -y 67 sudo apt-get install -y --no-install-suggests --no-install-recommends libtool autoconf automake pkg-config stunnel4 ${{ matrix.build.install_packages }} 68 sudo python3 -m pip install impacket 69 name: 'install prereqs' 70 71 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4 72 73 - run: autoreconf -fi 74 name: 'autoreconf' 75 76 - run: ./configure --enable-warnings --enable-werror ${{ matrix.build.configure }} 77 name: 'configure' 78 79 - run: make V=1 80 name: 'make' 81 82 - run: ./src/curl -V 83 name: 'check curl -V output' 84 85 - run: make V=1 examples 86 name: 'make examples' 87 88 - run: make V=1 -C tests 89 name: 'make tests' 90 91 - run: make V=1 test-ci 92 name: 'run tests' 93 env: 94 TFLAGS: "${{ matrix.build.tflags }}" 95