name: linux-x86-gcc on: push: paths: - ".gitea/workflows/linux-x86-gcc.yml" - "toolchains/host.gcc-m32.toolchain.cmake" - "cmake/**" - "third_party/**" - "tile/**" - "!tile/fiber/detail/asm/*" - "tile/fiber/detail/asm/ucontext_x86.*" - "CMakeLists.txt" pull_request: paths: - ".gitea/workflows/linux-x86-gcc.yml" - "toolchains/host.gcc-m32.toolchain.cmake" - "cmake/**" - "third_party/**" - "tile/**" - "!tile/fiber/detail/asm/*" - "tile/fiber/detail/asm/ucontext_x86.*" - "CMakeLists.txt" concurrency: group: linux-x86-gcc-${{ github.ref }} cancel-in-progress: true jobs: linux-gcc: runs-on: ubuntu-20.04 strategy: matrix: build_type: ["Debug", "Release"] steps: - uses: actions/checkout@v4 with: submodules: recursive - name: install-tools run: | sudo apt-get update -y sudo apt-get install -y cmake make gcc-multilib g++-multilib - name: configure run: | mkdir build && cd build cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/host.gcc-m32.toolchain.cmake -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DTILE_BUILD_BENCHMARKS=ON -DTILE_BUILD_TESTS=ON .. - name: build run: | cmake --build build -j $(nproc) - name: test run: | cd build ctest --output-on-failure -j $(nproc) - name: benchmark run: | ./build/bin/tile_bm_all