mirror of
https://github.com/SFML/CSFML.git
synced 2026-10-27 21:36:13 +01:00
Add support for Windows ARM64 architecture
This commit is contained in:
1 parent
973c742602
commit
46b72141d1
3 files changed
+52
-3
No files matched your search
@@ -37,10 +37,16 @@ jobs:
|
|||||||
cd CSFML/tools/nuget
|
cd CSFML/tools/nuget
|
||||||
./build.win.ps1 "win-x64"
|
./build.win.ps1 "win-x64"
|
||||||
|
|
||||||
|
- name: Build ARM64
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
cd CSFML/tools/nuget
|
||||||
|
./build.win.ps1 "win-arm64"
|
||||||
|
|
||||||
- name: Upload Artifact
|
- name: Upload Artifact
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: CSFML-win-x86-x64
|
name: CSFML-win-x86-x64-arm64
|
||||||
path: CSFML/tools/nuget/CSFML/runtimes
|
path: CSFML/tools/nuget/CSFML/runtimes
|
||||||
|
|
||||||
linux-x64:
|
linux-x64:
|
||||||
@@ -213,7 +219,7 @@ jobs:
|
|||||||
|
|
||||||
package:
|
package:
|
||||||
name: Package Builds
|
name: Package Builds
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-24.04
|
||||||
needs:
|
needs:
|
||||||
- windows
|
- windows
|
||||||
- linux-x64
|
- linux-x64
|
||||||
|
|||||||
@@ -191,6 +191,45 @@ jobs:
|
|||||||
name: CSFML-windows-64-bit
|
name: CSFML-windows-64-bit
|
||||||
path: install/CSFML
|
path: install/CSFML
|
||||||
|
|
||||||
|
windows-arm64:
|
||||||
|
name: Windows ARM64
|
||||||
|
runs-on: windows-2025
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout SFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: SFML/SFML
|
||||||
|
ref: ${{ env.SFML_VERSION }}
|
||||||
|
path: SFML
|
||||||
|
|
||||||
|
- name: Checkout CSFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
path: CSFML
|
||||||
|
|
||||||
|
- name: Build SFML
|
||||||
|
run: |
|
||||||
|
cmake -S SFML -B SFML-build -A ARM64 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/SFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build SFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Build CSFML
|
||||||
|
run: |
|
||||||
|
cmake -S CSFML -B CSFML-build -A ARM64 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCSFML_LINK_SFML_STATICALLY=OFF -DCMAKE_BUILD_TYPE=Release -DSFML_ROOT=${{ github.workspace }}/SFML-install -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/CSFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build CSFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Move Files
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
New-Item -ItemType "directory" -PATH "install\CSFML"
|
||||||
|
Move-Item -Path "CSFML-install\*" -Destination "install\CSFML"
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: CSFML-windows-arm64
|
||||||
|
path: install/CSFML
|
||||||
|
|
||||||
macos-x64:
|
macos-x64:
|
||||||
name: macOS x64
|
name: macOS x64
|
||||||
runs-on: macos-13
|
runs-on: macos-13
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ if (-not $RID) {
|
|||||||
|
|
||||||
$Generator = 'Visual Studio 17 2022'
|
$Generator = 'Visual Studio 17 2022'
|
||||||
|
|
||||||
|
# See also: https://learn.microsoft.com/en-us/dotnet/core/rid-catalog#known-rids
|
||||||
switch ($RID) {
|
switch ($RID) {
|
||||||
'win-x86' {
|
'win-x86' {
|
||||||
$Architecture = 'Win32'
|
$Architecture = 'Win32'
|
||||||
@@ -25,6 +26,9 @@ switch ($RID) {
|
|||||||
'win-x64' {
|
'win-x64' {
|
||||||
$Architecture = 'x64'
|
$Architecture = 'x64'
|
||||||
}
|
}
|
||||||
|
'win-arm64' {
|
||||||
|
$Architecture = 'ARM64'
|
||||||
|
}
|
||||||
Default {
|
Default {
|
||||||
Write-Error "Unknown RID '$RID'"
|
Write-Error "Unknown RID '$RID'"
|
||||||
exit
|
exit
|
||||||
@@ -83,7 +87,7 @@ Push-Location "SFML"
|
|||||||
|
|
||||||
$SFMLDir = (Get-Item .).FullName
|
$SFMLDir = (Get-Item .).FullName
|
||||||
|
|
||||||
IF ($RID -ne 'win-x86' -and $RID -ne 'win-x64') {
|
IF ($RID -ne 'win-x86' -and $RID -ne 'win-x64' -and $RID -ne 'win-arm64') {
|
||||||
Write-Error "Unknown RID '$RID'"
|
Write-Error "Unknown RID '$RID'"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user