name: Linux Build on: push: branches: - master pull_request: jobs: linux: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: name: [linux-clang, linux-gcc] include: - name: linux-clang os: ubuntu-22.04 compiler: clang cflags: '' - name: linux-gcc os: ubuntu-22.04 compiler: gcc cflags: '-Wnonnull' steps: - name: Clone repository uses: actions/checkout@v3 with: submodules: true - name: Install packages run: | sudo apt-get update -qq sudo apt-get install -y \ automake \ autoconf \ bison \ flex \ gdb \ python3 \ valgrind - name: Build env: CC: ${{ matrix.compiler }} MAKEVARS: ${{ matrix.makevars }} run: | autoreconf -fi rm src/lexer.c src/lexer.h rm src/parser.c src/parser.h ./configure --disable-valgrind --with-oniguruma=builtin YACC="$(which bison) -y" $COVERAGE make -j4 make dist - name: Test env: CC: ${{ matrix.compiler }} MAKEVARS: ${{ matrix.makevars }} run: | ulimit -c unlimited make -j4 check - name: Upload Test Logs if: ${{ failure() }} uses: actions/upload-artifact@v3 with: name: test-logs path: | test-suite.log tests/*.log - name: Upload Artifacts uses: actions/upload-artifact@v3 with: name: jq-${{ matrix.name }} path: | jq