Skip to content
This repository was archived by the owner on Jan 17, 2026. It is now read-only.

Build Linux Arm64

Build Linux Arm64 #2

name: Build Linux Arm64
on:
workflow_dispatch
jobs:
build-linux-arm64:
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.x
- name: Restore dependencies
run: dotnet restore
- name: ExtractSdlVersion
run: dotnet fsi ./Scripts/ExtractSdlVersion.fsx
- name: Install Packages
run: sudo apt update && sudo apt install build-essential pkg-config ninja-build gnome-desktop-testing libasound2-dev libpulse-dev libaudio-dev libjack-dev libsndio-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libxtst-dev libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev libpipewire-0.3-dev libwayland-dev libdecor-0-dev liburing-dev
- name: Setup Clang
uses: egor-tensin/setup-clang@v1
- name: Cmake Setup
run: cmake --preset Main
- name: Cmake Build
run: cmake --build --target SDL3-shared --config Release --preset Release
- uses: actions/upload-artifact@v4
with:
name: 'native-linux-arm64'
path: ./build/SDL/Release/libSDL3.so
overwrite: true
- name: Build Package
run: dotnet build --no-restore -c Release ./Packages/Coplt.Sdl3.Native.Linux.Arm64/Coplt.Sdl3.Native.Linux.Arm64.csproj
- uses: actions/upload-artifact@v4
with:
name: 'native-linux-arm64.nupkg'
path: ./Packages/Coplt.Sdl3.Native.Linux.Arm64/bin/Release/*.nupkg
overwrite: true