From 530f442db809a772b5763b2050188474ff45e97e Mon Sep 17 00:00:00 2001 From: Steve Pfister Date: Wed, 7 Feb 2024 12:04:00 -0500 Subject: [PATCH 1/2] Use new MacOS arm64 pool for official builds This pool is only available internally for now, so let's use it! --- eng/pipelines/common/xplat-setup.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/eng/pipelines/common/xplat-setup.yml b/eng/pipelines/common/xplat-setup.yml index c66fec22bead58..dfb8952b423e41 100644 --- a/eng/pipelines/common/xplat-setup.yml +++ b/eng/pipelines/common/xplat-setup.yml @@ -171,9 +171,13 @@ jobs: demands: ImageOverride -equals Build.Ubuntu.2204.Amd64 # OSX Build Pool (we don't have on-prem OSX BuildPool). - ${{ if in(parameters.osGroup, 'osx', 'maccatalyst', 'ios', 'iossimulator', 'tvos', 'tvossimulator') }}: + ${{ if and(in(parameters.osGroup, 'osx', 'maccatalyst', 'ios', 'iossimulator', 'tvos', 'tvossimulator'), eq(variables['System.TeamProject'], 'public')) }}: vmImage: 'macos-12' + # Official build OSX pool + ${{ if and(in(parameters.osGroup, 'osx', 'maccatalyst', 'ios', 'iossimulator', 'tvos', 'tvossimulator'), ne(variables['System.TeamProject'], 'public')) }}: + vmImage: 'macos-13-arm64' + # Official Build Windows Pool ${{ if and(or(eq(parameters.osGroup, 'windows'), eq(parameters.jobParameters.hostedOs, 'windows')), ne(variables['System.TeamProject'], 'public')) }}: name: $(DncEngInternalBuildPool) From 432eb1f91aaf5fe3b29cc1606269d7088a265b0f Mon Sep 17 00:00:00 2001 From: Steve Pfister Date: Mon, 12 Feb 2024 10:52:38 -0500 Subject: [PATCH 2/2] Add workaround from https://github.com/dotnet/runtime/pull/97856 to use classic linker on macos --- .../Microsoft.NETCore.Native.Unix.targets | 13 +++++++++++++ src/coreclr/tools/aot/ILCompiler/ILCompiler.csproj | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets index 523205d0f09a14..07f5bc5d23e2d8 100644 --- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets +++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.targets @@ -230,6 +230,19 @@ The .NET Foundation licenses this file to you under the MIT license. + + + + + + + <_XcodeVersion>$([System.Text.RegularExpressions.Regex]::Match($(_XcodeVersionString), '[1-9]\d*')) + + + + + + <_CommandProbe>command -v <_CommandProbe Condition="$([MSBuild]::IsOSPlatform('Windows'))">where /Q diff --git a/src/coreclr/tools/aot/ILCompiler/ILCompiler.csproj b/src/coreclr/tools/aot/ILCompiler/ILCompiler.csproj index e601d1c14cf2d0..5e041b5c0ebf02 100644 --- a/src/coreclr/tools/aot/ILCompiler/ILCompiler.csproj +++ b/src/coreclr/tools/aot/ILCompiler/ILCompiler.csproj @@ -72,6 +72,19 @@ + + + + + + + <_XcodeVersion>$([System.Text.RegularExpressions.Regex]::Match($(_XcodeVersionString), '[1-9]\d*')) + + + + + + $(_CC_LDFLAGS.SubString(0, $(_CC_LDFLAGS.IndexOf(';')))) <_LDFLAGS>$(_CC_LDFLAGS.SubString($([MSBuild]::Add($(_CC_LDFLAGS.IndexOf(';')), 1))))