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