From ceebfa3bb492515248208a8781f9cc0e2bd4ccde Mon Sep 17 00:00:00 2001 From: Larry Ewing Date: Mon, 5 Oct 2026 13:17:07 +0200 Subject: [PATCH] [wasm][coreclr] Ship Crossgen2Tasks shim in the CoreCLR wasm perf artifact Stage artifacts/bin/Crossgen2Tasks// into staging/Crossgen2Tasks/ so dotnet/performance's composite R2R lane can use the wasm-aware ReadyToRun task shim until dotnet/sdk#56395 reaches global.json (dotnet/runtime#135023). Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: a287cfc0-a881-4272-9024-bdaf9d9db4ef --- .../templates/perf-wasm-prepare-artifacts-steps.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml b/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml index 83b8572645e1bc..8586133d270b72 100644 --- a/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml +++ b/eng/pipelines/performance/templates/perf-wasm-prepare-artifacts-steps.yml @@ -102,6 +102,19 @@ steps: 'Microsoft.NETCore.App.Crossgen2.*.nupkg' \ 'Microsoft.NET.ILLink.Tasks.*.nupkg' displayName: "Stage CoreCLR toolchain packs" + # Wasm-aware ReadyToRun task shim consumed by dotnet/performance's composite R2R lane until + # dotnet/sdk#56395 reaches the global.json SDK. TODO: remove with dotnet/runtime#135023. + - script: | + set -euo pipefail + + src_dir="$(Build.SourcesDirectory)/artifacts/bin/Crossgen2Tasks/${{ parameters.configForBuild }}" + dst_dir="$(Build.SourcesDirectory)/artifacts/staging/Crossgen2Tasks" + for f in Crossgen2Tasks.dll Microsoft.NET.CrossGen.props Microsoft.NET.CrossGen.targets; do + [ -f "$src_dir/$f" ] || { echo "Missing $src_dir/$f" >&2; exit 1; } + done + mkdir -p "$dst_dir" + cp -R "$src_dir/." "$dst_dir/" + displayName: "Stage Crossgen2Tasks shim" # Publish the CoreCLR-only wasm-tools packages so the Mono build job can stage them into its # local feed before installing the workload.