From 6eee8688c2b21570313ec8b86f10c46fb29fa933 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Wed, 3 Sep 2025 19:03:51 -0700 Subject: [PATCH] Add Windows ARM64 builds to NuGet packages for nightly and release pipelines (#7847) * Initial plan * Add Windows ARM64 builds to NuGet packages for nightly and release pipelines Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> --- scripts/mk_nuget_task.py | 3 ++- scripts/nightly.yaml | 5 +++++ scripts/release.yml | 5 +++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/scripts/mk_nuget_task.py b/scripts/mk_nuget_task.py index e1b900cfd..b6c865237 100644 --- a/scripts/mk_nuget_task.py +++ b/scripts/mk_nuget_task.py @@ -27,6 +27,7 @@ os_info = { 'x64-ubuntu-latest' : ('so', 'linux-x64'), 'x64-glibc-2.35' : ('so', 'linux-x64'), 'x64-win' : ('dll', 'win-x64'), 'x86-win' : ('dll', 'win-x86'), + 'arm64-win' : ('dll', 'win-arm64'), 'x64-osx' : ('dylib', 'osx-x64'), 'arm64-glibc' : ('so', 'linux-arm64'), 'arm64-osx' : ('dylib', 'osx-arm64'), @@ -67,7 +68,7 @@ def unpack(packages, symbols, arch): zip_ref.extract(f"{package_dir}/bin/libz3.{ext}", f"{tmp}") mk_dir(f"out/runtimes/{dst}/native") replace(f"{tmp}/{package_dir}/bin/libz3.{ext}", f"out/runtimes/{dst}/native/libz3.{ext}") - if "x64-win" in f or "x86-win" in f: + if "x64-win" in f or "x86-win" in f or "arm64-win" in f: mk_dir("out/lib/netstandard2.0/") if symbols: zip_ref.extract(f"{package_dir}/bin/libz3.pdb", f"{tmp}") diff --git a/scripts/nightly.yaml b/scripts/nightly.yaml index a3418e865..6618a301c 100644 --- a/scripts/nightly.yaml +++ b/scripts/nightly.yaml @@ -233,6 +233,11 @@ stages: inputs: artifact: 'WindowsBuild-x64' path: $(Agent.TempDirectory)\package + - task: DownloadPipelineArtifact@2 + displayName: 'Download Win ARM64 Build' + inputs: + artifact: 'WindowsBuild-arm64' + path: $(Agent.TempDirectory)\package - task: DownloadPipelineArtifact@2 displayName: 'Download Ubuntu Build' inputs: diff --git a/scripts/release.yml b/scripts/release.yml index b26539c35..506295525 100644 --- a/scripts/release.yml +++ b/scripts/release.yml @@ -240,6 +240,11 @@ stages: inputs: artifact: 'WindowsBuild-x64' path: $(Agent.TempDirectory)\package + - task: DownloadPipelineArtifact@2 + displayName: 'Download Win ARM64 Build' + inputs: + artifact: 'WindowsBuild-arm64' + path: $(Agent.TempDirectory)\package - task: DownloadPipelineArtifact@2 displayName: 'Download Ubuntu Build' inputs: