Skip to content

Allow source files to be found system-wide and don't hardcode /usr prefix on UNIX #621

Allow source files to be found system-wide and don't hardcode /usr prefix on UNIX

Allow source files to be found system-wide and don't hardcode /usr prefix on UNIX #621

Workflow file for this run

name: 'Windows (Clang)'
on:
push:
branches:
- 'master'
pull_request:
types: [ opened, synchronize ]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
Build:
strategy:
fail-fast: false
matrix:
include:
- BuildType: Release
Platform: x86
ArchExts: SSE
Backend: GLFW
- BuildType: Release
Platform: x86
ArchExts: SSE
Backend: SDL2
- BuildType: Release
Platform: x64
ArchExts: SSE2
Backend: GLFW
- BuildType: Release
Platform: x64
ArchExts: SSE2
Backend: SDL2
- BuildType: Release
Platform: x64
ArchExts: AVX2
Backend: GLFW
- BuildType: Release
Platform: x64
ArchExts: AVX2
Backend: SDL2
runs-on: 'windows-latest'
steps:
- name: 'Checkout Repository'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 'Setup MSBuild'
uses: microsoft/[email protected]
- name: 'Download Build Dependencies'
run: |
mkdir Libs
cd Libs
Invoke-WebRequest -uri "https://github.com/Chuyu-Team/VC-LTL5/releases/download/v5.0.9/VC-LTL-5.0.9-Binary.7z" -Method "GET" -Outfile "VC-LTL-Binary.7z"
7z x ".\VC-LTL-Binary.7z" -o"VC-LTL"
- name: 'Configure CMake'
run: |
$archexts = '${{ matrix.ArchExts }}'
switch('${{ matrix.Platform }}') {
'x86' { $arch = 'Win32' }
'x64' {
$arch = 'x64'
if(($archexts -eq 'SSE') -or ($archexts -eq 'SSE2')) {
$archexts = ''
}
}
}
rm -force ".\Content\Translations\*.po"
cmake -B ".\_build\" -D CMAKE_BUILD_TYPE=${{ matrix.BuildType }} -A $arch -D CMAKE_SYSTEM_PROCESSOR=$arch -D NCINE_ARCH_EXTENSIONS=$archexts -D NCINE_PREFERRED_BACKEND=${{ matrix.Backend }} -D NCINE_STRIP_BINARIES=ON -D NCINE_COPY_DEPENDENCIES=ON -T ClangCL
- name: 'Build'
run: |
switch('${{ matrix.Platform }}') {
'x86' { $arch = 'Win32' }
'x64' { $arch = 'x64' }
}
cd .\_build\
msbuild ".\Jazz2.sln" -p:Configuration=${{ matrix.BuildType }} -p:Platform=$arch
- name: 'Create Package'
run: |
mkdir _package
Move-Item -Path ".\_build\Release\Jazz2.exe" -Destination ".\_package\Jazz2.exe"
Move-Item -Path ".\_build\Release\Jazz2.pdb" -Destination ".\_package\Jazz2.pdb"
Move-Item -Path ".\_build\Release\*.dll" -Destination ".\_package\"
Move-Item -Path ".\Content\" -Destination ".\_package\Content\"
Move-Item -Path ".\LICENSE" -Destination ".\_package\LICENSE"
- name: 'Upload Package'
uses: actions/upload-artifact@v4
with:
name: Jazz2_Windows_${{ matrix.Platform }}_${{ matrix.ArchExts }}_${{ matrix.Backend }}_Clang
path: ./_package/