From 7c899a7774bd93ba93e8830178d1c0d83f50456e Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Sat, 7 Feb 2026 13:34:24 +0000 Subject: [PATCH 1/3] try arm64 --- .github/workflows/main.yml | 2 +- buildscripts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 68036de..cc2e77e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,7 +9,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [windows-latest, macos-latest, ubuntu-22.04] + os: [windows-latest, macos-latest, ubuntu-22.04, ubuntu-22.04-arm] fail-fast: false steps: - name: Expose GitHub Runtime diff --git a/buildscripts b/buildscripts index 5cd1ee3..43f13de 160000 --- a/buildscripts +++ b/buildscripts @@ -1 +1 @@ -Subproject commit 5cd1ee39dfa0e570b125260d4d19753232c1c29e +Subproject commit 43f13de8d1dd568f35eb9fe665fe4824e90a437d From 401482207aa626aad4959cf9cb4fb5fa92b11dcf Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Sat, 7 Feb 2026 13:39:26 +0000 Subject: [PATCH 2/3] Try windows arm64 --- build/BuildWindowsTask.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/build/BuildWindowsTask.cs b/build/BuildWindowsTask.cs index 0d4e028..aa263eb 100644 --- a/build/BuildWindowsTask.cs +++ b/build/BuildWindowsTask.cs @@ -10,18 +10,26 @@ public sealed class BuildWindowsTask : FrostingTask public override bool ShouldRun(BuildContext context) => context.IsRunningOnWindows(); public override void Run(BuildContext context) + { + // Ensure statically linked + context.ReplaceTextInFiles("freetype/builds/windows/vc2010/freetype.vcxproj", "MultiThreadedDLL", "MultiThreaded"); + + BuildForArchitecture(context, PlatformTarget.x64, "win-x64"); + BuildForArchitecture(context, PlatformTarget.ARM64, "win-arm64"); + } + + private void BuildForArchitecture(BuildContext context, PlatformTarget platform, string rid) { MSBuildSettings buildSettings = new() { Verbosity = Verbosity.Normal, Configuration = "Release", - PlatformTarget = PlatformTarget.x64 + PlatformTarget = platform }; - // Ensure statically linked - context.ReplaceTextInFiles("freetype/builds/windows/vc2010/freetype.vcxproj", "MultiThreadedDLL", "MultiThreaded"); - context.MSBuild("freetype/builds/windows/vc2010/freetype.vcxproj", buildSettings); - context.CopyFile("freetype-demos/bin/freetype.dll", $"{context.ArtifactsDir}/freetype.dll"); + + context.CreateDirectory($"{context.ArtifactsDir}/{rid}"); + context.CopyFile($"freetype-demos/bin/{platform}/freetype.dll", $"{context.ArtifactsDir}/{rid}/freetype.dll"); } } From 8805c718baecb9d10177e3cf7f7a19b6f25faa1e Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Sat, 7 Feb 2026 13:51:30 +0000 Subject: [PATCH 3/3] fix build error --- build/BuildWindowsTask.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/BuildWindowsTask.cs b/build/BuildWindowsTask.cs index aa263eb..9544a93 100644 --- a/build/BuildWindowsTask.cs +++ b/build/BuildWindowsTask.cs @@ -30,6 +30,6 @@ private void BuildForArchitecture(BuildContext context, PlatformTarget platform, context.MSBuild("freetype/builds/windows/vc2010/freetype.vcxproj", buildSettings); context.CreateDirectory($"{context.ArtifactsDir}/{rid}"); - context.CopyFile($"freetype-demos/bin/{platform}/freetype.dll", $"{context.ArtifactsDir}/{rid}/freetype.dll"); + context.CopyFile($"freetype-demos/bin/freetype.dll", $"{context.ArtifactsDir}/{rid}/freetype.dll"); } }