diff --git a/.github/workflows/build_gnulinux.yml b/.github/workflows/build_gnulinux.yml new file mode 100644 index 0000000..bf32728 --- /dev/null +++ b/.github/workflows/build_gnulinux.yml @@ -0,0 +1,45 @@ +name: Build GNU/Linux +on: + workflow_dispatch: + pull_request: + push: + +jobs: + build: + runs-on: ${{ matrix.os }} + + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu-latest + packages: 'gcc-10 g++-10' + env_cc: gcc-10 + env_cxx: g++-10 + - os: ubuntu-latest + packages: 'gcc-14 g++-14' + env_cc: gcc-14 + env_cxx: g++-14 + - os: ubuntu-latest + packages: 'mingw-w64' + env_cc: x86_64-w64-mingw32-gcc-posix + env_cxx: x86_64-w64-mingw32-g++-posix + - os: ubuntu-latest + packages: 'mingw-w64' + env_cc: x86_64-w64-mingw32-gcc-win32 + env_cxx: x86_64-w64-mingw32-g++-win32 + + env: + CC: ${{ matrix.env_cc }} + CXX: ${{ matrix.env_cxx }} + + name: ${{ matrix.os }} - ${{ matrix.packages }} + + steps: + - uses: actions/checkout@v6 + - name: install build dependencies + run: sudo apt install -y meson nasm ${{ matrix.packages }} + - name: cmake + run: mkdir build && cd build && cmake .. + - name: make + run: cd build && make