--- name: 'Build & Test' on: push: branches: - master - '[0-9]+.[0-9]+' # This will match branches like 3.17, 3.18, 4.0, etc. pull_request: branches: - master - '[0-9]+.[0-9]+' permissions: contents: read jobs: build: runs-on: '${{ matrix.os }}' strategy: matrix: os: # 18.04 does not work because of ‘no_sanitize’ attribute # cc1: all warnings being treated as errors # - ubuntu-18.04 - ubuntu-latest steps: - name: Install dependencies (Ubuntu) if: runner.os == 'Linux' run: | sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install -y clang doxygen gcc gcc-10 gcc-9 valgrind \ gcc-multilib g++-multilib libc6-dev-i386 \ libpcap0.8-dev:i386 libudev-dev:i386 pkg-config:i386 - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-python@v5 with: python-version: '3.12' - run: pip install -r requirements.txt - run: test/ci-build.sh