mirror of
https://github.com/ran-j/PS2Recomp.git
synced 2026-09-26 16:59:35 -04:00
8772aab5cc
* ci: add Linux GCC/Clang workflow Add a Linux job that builds with GCC and Clang using Ninja and runs tests * ci: install OpenGL headers on Linux Fix raylib configure by installing libgl-dev in the Linux GCC/Clang job * ci: enable SSE4.1 for Linux builds Pass -msse4.1 to GCC/Clang in the Linux workflow to satisfy runtime intrinsics
81 lines
1.9 KiB
YAML
81 lines
1.9 KiB
YAML
name: build
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
linux-gcc-clang:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
|
|
name: linux-${{ matrix.compiler }}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y ninja-build libgl-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev
|
|
|
|
- name: Configure
|
|
run: |
|
|
if [ "${{ matrix.compiler }}" = "gcc" ]; then
|
|
export CC=gcc
|
|
export CXX=g++
|
|
else
|
|
export CC=clang
|
|
export CXX=clang++
|
|
fi
|
|
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-msse4.1 -DCMAKE_CXX_FLAGS=-msse4.1
|
|
|
|
- name: Build
|
|
run: cmake --build build --config Release
|
|
|
|
- name: Tests
|
|
run: ./build/ps2xTest/ps2x_tests
|
|
|
|
windows-msvc:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- os: windows-latest
|
|
arch: x64
|
|
target_arch: x86_64
|
|
|
|
name: windows-msvc-${{ matrix.target_arch }}
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
submodules: recursive
|
|
|
|
- uses: lukka/get-cmake@latest
|
|
|
|
- uses: TheMrMilchmann/setup-msvc-dev@v4
|
|
with:
|
|
arch: ${{ matrix.arch }}
|
|
|
|
- name: Build
|
|
shell: cmd
|
|
run: |
|
|
cmake -B build
|
|
cmake --build build --config Release
|
|
|
|
- name: Tests
|
|
shell: cmd
|
|
run: |
|
|
.\build\ps2xTest\Release\ps2x_tests.exe
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v6
|
|
with:
|
|
name: PS2Recomp - Windows
|
|
path: |
|
|
build/ps2xAnalyzer/Release/*.exe
|
|
build/ps2xRecomp/Release/*.exe
|
|
build/ps2xTest/Release/*.exe
|