Files
re3/.github/workflows/re3_msvc_x86.yml
T
2026-07-19 22:12:08 +03:00

81 lines
2.4 KiB
YAML

name: re3 premake x86 build
on:
workflow_dispatch:
env:
GLFW_VER: "3.3.2"
GLFW_BASE: "glfw-3.3.2.bin.WIN32"
GLFW_FILE: "glfw-3.3.2.bin.WIN32.zip"
GLFW_URL: "https://github.com/glfw/glfw/releases/download/3.3.2/glfw-3.3.2.bin.WIN32.zip"
jobs:
build:
runs-on: windows-2022
strategy:
matrix:
platform:
- win-x86-librw_d3d9-mss
- win-x86-librw_gl3_glfw-mss
- win-x86-librw_d3d9-oal
- win-x86-librw_gl3_glfw-oal
buildtype: [Debug, Release, Vanilla]
fail-fast: false
steps:
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v1.0.2
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Download GLFW
if: contains(matrix.platform, 'librw_gl3_glfw')
uses: carlosperate/download-file-action@v1.0.3
with:
file-url: ${{ env.GLFW_URL }}
file-name: ${{ env.GLFW_FILE }}
- name: Extract GLFW
if: contains(matrix.platform, 'librw_gl3_glfw')
shell: pwsh
run: |
Expand-Archive -Path "${{ env.GLFW_FILE }}" -DestinationPath "${{ env.GLFW_BASE }}"
- name: Configure build
shell: cmd
run: |
premake5 vs2019 --with-librw --no-full-paths --glfwdir32="${{ env.GLFW_BASE }}"
- name: Build
shell: cmd
run: |
msbuild -m -p:Configuration=${{ matrix.buildtype }} -p:Platform=${{ matrix.platform }} build/re3.sln
- name: Stage gamefiles (vanilla resources) + binaries
shell: pwsh
run: |
New-Item -ItemType Directory -Path "dist" -Force
Copy-Item -Path "gamefiles/vanilla/*" -Destination "dist/" -Recurse -Force
- name: Copy binaries
shell: pwsh
run: |
Move-Item -Path "bin/${{ matrix.platform }}/${{ matrix.buildtype }}/re3.exe" -Destination "dist/" -Force
Move-Item -Path "bin/${{ matrix.platform }}/${{ matrix.buildtype }}/re3.pdb" -Destination "dist/" -Force
- name: Copy OAL dependencies
if: contains(matrix.platform, 'oal')
shell: pwsh
run: |
Move-Item -Path "vendor/mpg123/dist/Win32/libmpg123-0.dll" -Destination "dist/" -Force
Move-Item -Path "vendor/openal-soft/dist/Win32/OpenAL32.dll" -Destination "dist/" -Force
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: re3_${{ matrix.buildtype }}_${{ matrix.platform }}
path: dist/*