Files
itgmania212121/.github/workflows/ci.yml
T
sukibaby 93a9db10b7 ci.yml: Don't cache windows build
Attempt to fix the failing CI for the short term.

The existing workflow file still works on my personal fork, but for some reason doesn't on the main project.
2024-09-03 21:02:52 -07:00

123 lines
3.8 KiB
YAML

on:
push:
pull_request:
paths-ignore:
- '**.md'
name: Continuous integration
jobs:
ubuntu-build:
name: Ubuntu
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Checkout submodules
run: git submodule update --init --recursive
- name: Cache CMake build directory
uses: actions/cache@v4
with:
path: |
build
key: ${{ runner.os }}-cmake-build-${{ github.sha }}
restore-keys: |
${{ runner.os }}-cmake-build-
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install -y
libasound2-dev
libgl-dev
libglu1-mesa-dev
libgtk-3-dev
libjack-dev
libmad0-dev
libpulse-dev
libudev-dev
libusb-dev
libxinerama-dev
libx11-dev
libxrandr-dev
libxtst-dev
nasm
- name: Configure
run: cmake -B build -DWITH_FFMPEG_JOBS="$(nproc)"
- name: Build
run: cmake --build build --parallel "$(nproc)"
macos-build-arm64:
name: macOS (M1)
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Checkout submodules
run: git submodule update --init --recursive
- name: Cache CMake build directory
uses: actions/cache@v4
with:
path: |
build
key: ${{ runner.os }}-${{ runner.arch }}-cmake-build-${{ github.sha }}
restore-keys: |
${{ runner.os }}-${{ runner.arch }}-cmake-build-
- name: Install dependencies
run: brew install
nasm
- name: Configure
run: cmake -B build -DCMAKE_OSX_ARCHITECTURES=arm64 -DWITH_FFMPEG_JOBS="$(sysctl -n hw.logicalcpu)"
- name: Build
run: cmake --build build --parallel "$(sysctl -n hw.logicalcpu)"
macos-build-x86_64:
name: macOS (Intel)
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- name: Checkout submodules
run: git submodule update --init --recursive
- name: Cache CMake build directory
uses: actions/cache@v4
with:
path: |
build
key: ${{ runner.os }}-${{ runner.arch }}-cmake-build-${{ github.sha }}
restore-keys: |
${{ runner.os }}-${{ runner.arch }}-cmake-build-
- name: Install dependencies
run: brew install
nasm
- name: Configure
run: cmake -B build -DCMAKE_OSX_ARCHITECTURES=x86_64 -DWITH_FFMPEG_JOBS="$(sysctl -n hw.logicalcpu)"
- name: Build
run: cmake --build build --parallel "$(sysctl -n hw.logicalcpu)"
windows-build:
name: Windows
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Checkout submodules
run: git submodule update --init --recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Set up Visual Studio environment
run: |
$vsPath = &"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath
&"$vsPath\VC\Auxiliary\Build\vcvarsall.bat" x64
shell: pwsh
- name: Configure
run: cmake -B build -DWITH_FFMPEG_JOBS="$env:NUMBER_OF_PROCESSORS"
- name: Build
run: cmake --build build --parallel "$env:NUMBER_OF_PROCESSORS"
validate-xml-docs:
name: Validate Lua.xml, LuaDocumentation.xml
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install -y
libxml2-utils
- name: Validate Lua.xml
run: xmllint --noout Docs/Luadoc/Lua.xml
- name: Validate LuaDocumentation.xml
run: xmllint --noout Docs/Luadoc/LuaDocumentation.xml