vphysics_jolt/.github/workflows/artifacts.yml

94 lines
2.8 KiB
YAML

name: Build Artifacts
on: [push, pull_request, workflow_dispatch]
jobs:
windows:
strategy:
fail-fast: false
matrix:
source_branch: [sdk2013-sp, sdk2013-mp, asw, gmod]
runs-on: windows-2022
steps:
- name: Checkout Mini Source SDK
uses: actions/checkout@v3
with:
repository: Joshua-Ashton/mini-source-sdk
- name: Checkout VPhysics Jolt
uses: actions/checkout@v3
with:
path: ${{ matrix.source_branch }}/src/vphysics_jolt
submodules: recursive
- name: Find Visual Studio
run: |
$installationPath = Get-VSSetupInstance `
| Select-VSSetupInstance -Require Microsoft.VisualStudio.Workload.NativeDesktop -Latest `
| Select-Object -ExpandProperty InstallationPath
Write-Output "VSDEVCMD=${installationPath}\Common7\Tools\VsDevCmd.bat" `
| Out-File -FilePath "${Env:GITHUB_ENV}" -Append
- name: Build MSVC x86
working-directory: ${{ matrix.source_branch }}/src
run: |
& "${Env:COMSPEC}" /s /c "`"${Env:VSDEVCMD}`" -arch=x86 -host_arch=x64 -no_logo && set" `
| % { , ($_ -Split '=', 2) } `
| % { [System.Environment]::SetEnvironmentVariable($_[0], $_[1]) }
.\fix_registry.bat
.\createjoltprojects.bat
devenv jolt.sln /upgrade
msbuild jolt.sln /nodeReuse:false /t:Rebuild /p:Configuration=Release /p:Platform=x86 /m /v:minimal
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: vphysics_jolt_${{ matrix.source_branch }}_win32
path: ${{ matrix.source_branch }}/game
if-no-files-found: error
linux:
strategy:
fail-fast: false
matrix:
source_branch: [sdk2013-sp, sdk2013-mp, gmod]
runs-on: ubuntu-latest
container: debian:bullseye
steps:
- name: Install Dependencies
run: |
dpkg --add-architecture i386
apt update
apt install -y build-essential git libstdc++6:i386 gcc-multilib g++-multilib
- name: Checkout Mini Source SDK
uses: actions/checkout@v3
with:
repository: Joshua-Ashton/mini-source-sdk
- name: Checkout VPhysics Jolt
uses: actions/checkout@v3
with:
path: ${{ matrix.source_branch }}/src/vphysics_jolt
submodules: recursive
- name: Build GCC x86
working-directory: ${{ matrix.source_branch }}/src
run: |
chmod +x createjoltprojects.sh
chmod +x devtools/bin/vpc_linux
chmod +x devtools/bin/vpc
chmod +x devtools/gendbg.sh
./createjoltprojects.sh
make -f jolt.mak -j $(nproc)
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: vphysics_jolt_${{ matrix.source_branch }}_linux32
path: ${{ matrix.source_branch }}/game
if-no-files-found: error