diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
index 051cb8b286bde9..be6ef9c63c00b6 100644
--- a/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
+++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-ioslike.yml
@@ -35,7 +35,11 @@ jobs:
testGroup: innerloop
nameSuffix: AllSubsets_Mono
isExtraPlatforms: ${{ parameters.isExtraPlatformsBuild }}
- buildArgs: -s mono+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true $(_runSmokeTestsOnlyArg) /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=true /p:BuildDarwinFrameworks=true /p:IsManualOrRollingBuild=true
+ # Don't trim tests on rolling builds
+ ${{ if eq(variables['isRollingBuild'], true) }}:
+ buildArgs: -s mono+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true $(_runSmokeTestsOnlyArg) /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=true /p:BuildDarwinFrameworks=true /p:IsManualOrRollingBuild=true /p:EnableAggressiveTrimming=false
+ ${{ else }}:
+ buildArgs: -s mono+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true $(_runSmokeTestsOnlyArg) /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=true /p:BuildDarwinFrameworks=true /p:IsManualOrRollingBuild=true /p:EnableAggressiveTrimming=true
timeoutInMinutes: 480
# extra steps, run tests
postBuildSteps:
diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml
index 98dc5285250f45..043c11b87bbd37 100644
--- a/eng/pipelines/runtime.yml
+++ b/eng/pipelines/runtime.yml
@@ -1009,7 +1009,7 @@ extends:
jobParameters:
testGroup: innerloop
nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=true /p:BuildDarwinFrameworks=true
+ buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=true /p:BuildDarwinFrameworks=true /p:EnableAggressiveTrimming=true
timeoutInMinutes: 480
condition: >-
or(
diff --git a/eng/testing/tests.ioslike.targets b/eng/testing/tests.ioslike.targets
index 50f89bfef82a46..dde49575d7ae44 100644
--- a/eng/testing/tests.ioslike.targets
+++ b/eng/testing/tests.ioslike.targets
@@ -16,7 +16,7 @@
<_AOTBuildCommand Condition="'$(ContinuousIntegrationBuild)' != 'true'">$(_AOTBuildCommand) /p:RuntimeSrcDir=$(RepoRoot) /p:RuntimeConfig=$(Configuration)
- <_AOTBuildCommand>$(_AOTBuildCommand) /p:XHARNESS_EXECUTION_DIR="$XHARNESS_EXECUTION_DIR" /p:RunAOTCompilation=$(RunAOTCompilation) /p:UseNativeAOTRuntime=$(UseNativeAOTRuntime) /p:TargetOS=$(TargetOS) /p:TargetArchitecture=$(TargetArchitecture) /p:MonoForceInterpreter=$(MonoForceInterpreter) /p:MonoEnableLLVM=true /p:DevTeamProvisioning=$(DevTeamProvisioning) /p:UsePortableRuntimePack=true /p:Configuration=$(Configuration)
+ <_AOTBuildCommand>$(_AOTBuildCommand) /p:XHARNESS_EXECUTION_DIR="$XHARNESS_EXECUTION_DIR" /p:RunAOTCompilation=$(RunAOTCompilation) /p:UseNativeAOTRuntime=$(UseNativeAOTRuntime) /p:TargetOS=$(TargetOS) /p:TargetArchitecture=$(TargetArchitecture) /p:MonoForceInterpreter=$(MonoForceInterpreter) /p:MonoEnableLLVM=true /p:DevTeamProvisioning=$(DevTeamProvisioning) /p:UsePortableRuntimePack=true /p:Configuration=$(Configuration) /p:EnableAggressiveTrimming=$(EnableAggressiveTrimming)
<_AOTBuildCommand Condition="'$(NativeLib)' != ''">$(_AOTBuildCommand) /p:NativeLib=$(NativeLib) /p:BundlesResources=$(BundlesResources) /p:ForceLibraryModeGenerateAppBundle=$(ForceLibraryModeGenerateAppBundle)
<_AOTBuildCommand>$(_AOTBuildCommand)
@@ -46,11 +46,11 @@
PrepareForAppleBuildApp;$(AppleBuildDependsOn);_CopyTestArchive
-
+
AppleBuild
$(BundleTestAppleAppDependsOn);_BundleAOTTestAppleAppForHelix;_CopyTestArchive
-
+
$(BundleDir)publish
-
+
<_MainAssemblyPath Condition="'%(AppleAssembliesToBundle.FileName)' == $(AssemblyName) and '%(AppleAssembliesToBundle.Extension)' == '.dll'">%(AppleAssembliesToBundle.Identity)
$([System.IO.Path]::ChangeExtension($(_MainAssemblyPath), '.runtimeconfig.json'))
@@ -76,6 +76,8 @@
+
@@ -104,41 +106,62 @@
<_RuntimePackFiles Include="$(MicrosoftNetCoreAppRuntimePackRidLibTfmDir)**\*.*" />
<_RuntimePackFiles Include="$(MicrosoftNetCoreAppRuntimePackNativeDir)*.*" />
-
+
<_UnusedRuntimePackFiles Include="@(_PublishBundleFiles)" Exclude="@(_RuntimePackFiles->'$(AppBundlePath)/%(FileName)%(Extension)')" />
<_UsedRuntimePackFiles Include="@(_PublishBundleFiles)" Exclude="@(_UnusedRuntimePackFiles)" />
-
+
<_RuntimePackFilesToDelete Include="@(_RuntimePackFiles->'$(AppBundlePath)/%(FileName)%(Extension)')" />
+
+
+
+
+
- <_ApplePropertyNames Include="InvariantGlobalization" />
- <_ApplePropertyNames Include="HybridGlobalization" />
+
<_ApplePropertyNames Include="AssemblyName" />
- <_ApplePropertyNames Include="MonoEnableLLVM" />
+ <_ApplePropertyNames Include="IncludesTestRunner" />
<_ApplePropertyNames Include="MainLibraryFileName" />
+ <_ApplePropertyNames Include="MonoEnableLLVM" />
+ <_ApplePropertyNames Include="ShouldILStrip" />
<_ApplePropertyNames Include="UseConsoleUITemplate" />
<_ApplePropertyNames Include="UseRuntimeComponents" />
- <_ApplePropertyNames Include="IncludesTestRunner" />
- <_ApplePropertyNames Include="ShouldILStrip" />
+ <_ApplePropertyNames Include="_NetCoreAppToolCurrent" />
+
+
+ <_ApplePropertyNames Include="HybridGlobalization" />
+ <_ApplePropertyNames Include="InvariantGlobalization" />
+
+ <_AppleUsedRuntimePackFiles
+ Include="@(_UsedRuntimePackFiles->'%(FileName)%(Extension)')"
+ RemoveMetadata="_IsNative;TargetDir" />
<_ApplePropertiesToPass
- Include="$(%(_ApplePropertyNames.Identity))"
- Name="%(_ApplePropertyNames.Identity)"
- ConditionToUse__="%(_ApplePropertyNames.ConditionToUse__)" />
-
- <_AppleUsedRuntimePackFiles
- Include="@(_UsedRuntimePackFiles->'%(FileName)%(Extension)')"
- RemoveMetadata="_IsNative;TargetDir" />
-
+ Include="$(%(_ApplePropertyNames.Identity))"
+ Name="%(_ApplePropertyNames.Identity)"
+ ConditionToUse__="%(_ApplePropertyNames.ConditionToUse__)" />
+
<_AppleItemsToPass Include="@(_AppleUsedRuntimePackFiles)"
OriginalItemName__="_AppleUsedRuntimePackFiles" />
+ <_AppleItemsToPass Include="@(AppleReferenceSharedPathFiles->'%(FileName)%(Extension)')"
+ OriginalItemName__="AppleReferenceSharedPathFiles" />
+
+ <_AppleItemsToPass Include="@(ReferenceExtraPathFiles->'%(FileName)%(Extension)')"
+ OriginalItemName__="AppleReferenceExtraPathFiles" />
+
+ <_AppleItemsToPass Include="@(RuntimeHostConfigurationOption)"
+ OriginalItemName__="_AppleUsedRuntimeHostConfigurationOption" />
+
+ <_AppleItemsToPass Include="@(TrimmerRootAssembly)"
+ OriginalItemName__="TrimmerRootAssembly" />
+
+
true
true
$(NoWarn);IL2103;IL2105;IL2025;IL2111
-
- $(NoWarn);IL2035
-
- false
false
@@ -93,10 +90,9 @@
-
+
- link
- copyused
+ link
@@ -107,24 +103,11 @@
TrimMode="" is needed so the root assemblies are correctly identified -->
-
-
-
-
-
-
-
-
-
-
-
-
-
+ Include="%(ResolvedFileToPublish.FileName)" />
diff --git a/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.cs b/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.cs
index 210e8b6fc99f7c..3c93c2b4670989 100644
--- a/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.cs
+++ b/src/libraries/Common/tests/TestUtilities/System/PlatformDetection.cs
@@ -283,7 +283,7 @@ public static bool IsMetadataTokenSupported
public static bool UsesMobileAppleCrypto => IsMacCatalyst || IsiOS || IstvOS;
// Changed to `true` when trimming
- public static bool IsBuiltWithAggressiveTrimming => IsNativeAot;
+ public static bool IsBuiltWithAggressiveTrimming => IsNativeAot || IsAppleMobile;
public static bool IsNotBuiltWithAggressiveTrimming => !IsBuiltWithAggressiveTrimming;
public static bool IsTrimmedWithILLink => IsBuiltWithAggressiveTrimming && !IsNativeAot;
diff --git a/src/libraries/Microsoft.Extensions.Configuration.Binder/tests/Common/ConfigurationBinderTests.cs b/src/libraries/Microsoft.Extensions.Configuration.Binder/tests/Common/ConfigurationBinderTests.cs
index 366c7ed44d8235..7b0a8ca7e7e385 100644
--- a/src/libraries/Microsoft.Extensions.Configuration.Binder/tests/Common/ConfigurationBinderTests.cs
+++ b/src/libraries/Microsoft.Extensions.Configuration.Binder/tests/Common/ConfigurationBinderTests.cs
@@ -2119,6 +2119,7 @@ public void ComplexObj_As_Enumerable_Element()
#if !BUILDING_SOURCE_GENERATOR_TESTS
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsNotBrowser))]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/91923", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public void TraceSwitchTest()
{
var dic = new Dictionary
@@ -2148,6 +2149,7 @@ private void ValidateGeolocation(IGeolocation location)
[Fact]
#if !BUILDING_SOURCE_GENERATOR_TESTS
[ActiveIssue("Investigate Build browser-wasm linux Release LibraryTests_EAT CI failure for reflection impl", TestPlatforms.Browser)]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/91923", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
#endif
public void TestGraphWithUnsupportedMember()
{
diff --git a/src/libraries/Microsoft.VisualBasic.Core/tests/NewLateBindingTests.cs b/src/libraries/Microsoft.VisualBasic.Core/tests/NewLateBindingTests.cs
index b247e1e8b6c21c..956362d2383052 100644
--- a/src/libraries/Microsoft.VisualBasic.Core/tests/NewLateBindingTests.cs
+++ b/src/libraries/Microsoft.VisualBasic.Core/tests/NewLateBindingTests.cs
@@ -96,6 +96,7 @@ public static IEnumerable
+
diff --git a/src/libraries/System.Data.Common/tests/ILLink.Descriptors.xml b/src/libraries/System.Data.Common/tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..54b7989e54db6e
--- /dev/null
+++ b/src/libraries/System.Data.Common/tests/ILLink.Descriptors.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/libraries/System.Data.Common/tests/System.Data.Common.Tests.csproj b/src/libraries/System.Data.Common/tests/System.Data.Common.Tests.csproj
index 84d25bfe8e5c26..ed37aab0c75388 100644
--- a/src/libraries/System.Data.Common/tests/System.Data.Common.Tests.csproj
+++ b/src/libraries/System.Data.Common/tests/System.Data.Common.Tests.csproj
@@ -123,5 +123,6 @@
+
diff --git a/src/libraries/System.Data.Common/tests/System/Data/XmlDataReaderTest.cs b/src/libraries/System.Data.Common/tests/System/Data/XmlDataReaderTest.cs
index 5e56718d833d81..6de3301b4f018c 100644
--- a/src/libraries/System.Data.Common/tests/System/Data/XmlDataReaderTest.cs
+++ b/src/libraries/System.Data.Common/tests/System/Data/XmlDataReaderTest.cs
@@ -36,6 +36,7 @@ public class XmlDataReaderTest
{
[Fact]
[ActiveIssue("https://github.com/dotnet/runtime/issues/51369", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/51369", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public void XmlLoadTest()
{
var ds = new DataSet();
diff --git a/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/ILLink.Descriptors.xml b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..ed3c59f0b70fb5
--- /dev/null
+++ b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/ILLink.Descriptors.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/System.Diagnostics.FileVersionInfo.Tests.csproj b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/System.Diagnostics.FileVersionInfo.Tests.csproj
index 41cc56f94fdf77..cdadf742e3d976 100644
--- a/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/System.Diagnostics.FileVersionInfo.Tests.csproj
+++ b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/System.Diagnostics.FileVersionInfo.Tests.csproj
@@ -52,5 +52,6 @@
+
diff --git a/src/libraries/System.Linq.Queryable/tests/TrimCompatibilityTests.cs b/src/libraries/System.Linq.Queryable/tests/TrimCompatibilityTests.cs
index 86faa014ef1db7..89021695eb35d3 100644
--- a/src/libraries/System.Linq.Queryable/tests/TrimCompatibilityTests.cs
+++ b/src/libraries/System.Linq.Queryable/tests/TrimCompatibilityTests.cs
@@ -17,6 +17,7 @@ public class TrimCompatibilityTests
///
[Fact]
[ActiveIssue("https://github.com/dotnet/runtime/issues/50712", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/50712", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public static void QueryableMethodsContainCorrectDynamicDependency()
{
IEnumerable dependentMethods =
diff --git a/src/libraries/System.Linq/tests/ILLink.Descriptors.xml b/src/libraries/System.Linq/tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..1e87b73c07d147
--- /dev/null
+++ b/src/libraries/System.Linq/tests/ILLink.Descriptors.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/src/libraries/System.Linq/tests/System.Linq.Tests.csproj b/src/libraries/System.Linq/tests/System.Linq.Tests.csproj
index de5d8b642a3d14..33d584fe8f6a15 100644
--- a/src/libraries/System.Linq/tests/System.Linq.Tests.csproj
+++ b/src/libraries/System.Linq/tests/System.Linq.Tests.csproj
@@ -5,6 +5,7 @@
+
diff --git a/src/libraries/System.ObjectModel/tests/ObservableCollection/ObservableCollection_Serialization.cs b/src/libraries/System.ObjectModel/tests/ObservableCollection/ObservableCollection_Serialization.cs
index ad46a712462f33..22179a67a5129a 100644
--- a/src/libraries/System.ObjectModel/tests/ObservableCollection/ObservableCollection_Serialization.cs
+++ b/src/libraries/System.ObjectModel/tests/ObservableCollection/ObservableCollection_Serialization.cs
@@ -28,6 +28,7 @@ public void SerializeDeserialize_Roundtrips(ObservableCollection c)
[Fact]
[ActiveIssue("https://github.com/dotnet/runtime/issues/57588", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/57588", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public void OnDeserialized_MonitorNotInitialized_ExpectSuccess()
{
var observableCollection = new ObservableCollection();
diff --git a/src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/SignatureDecoderTests.cs b/src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/SignatureDecoderTests.cs
index e11c3e32445a47..7570404923a7ab 100644
--- a/src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/SignatureDecoderTests.cs
+++ b/src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/SignatureDecoderTests.cs
@@ -130,6 +130,7 @@ public static void VarArgsCaller()
// Test as much as we can with simple C# examples inline below.
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.HasAssemblyFiles))]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/91923", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public void SimpleSignatureProviderCoverage()
{
using (FileStream stream = File.OpenRead(AssemblyPathHelper.GetAssemblyLocation(typeof(SignaturesToDecode<>).GetTypeInfo().Assembly)))
diff --git a/src/libraries/System.Reflection.MetadataLoadContext/tests/ILLink.Descriptors.xml b/src/libraries/System.Reflection.MetadataLoadContext/tests/ILLink.Descriptors.xml
index fdb5d5f8422c41..c5be88bbbae199 100644
--- a/src/libraries/System.Reflection.MetadataLoadContext/tests/ILLink.Descriptors.xml
+++ b/src/libraries/System.Reflection.MetadataLoadContext/tests/ILLink.Descriptors.xml
@@ -6,4 +6,5 @@
-->
+
diff --git a/src/libraries/System.Reflection.MetadataLoadContext/tests/System.Reflection.MetadataLoadContext.Tests.csproj b/src/libraries/System.Reflection.MetadataLoadContext/tests/System.Reflection.MetadataLoadContext.Tests.csproj
index cba4079733816c..32518ce3efa431 100644
--- a/src/libraries/System.Reflection.MetadataLoadContext/tests/System.Reflection.MetadataLoadContext.Tests.csproj
+++ b/src/libraries/System.Reflection.MetadataLoadContext/tests/System.Reflection.MetadataLoadContext.Tests.csproj
@@ -90,7 +90,9 @@
+
+
diff --git a/src/libraries/System.Reflection.TypeExtensions/tests/ILLink.Descriptors.xml b/src/libraries/System.Reflection.TypeExtensions/tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..573b67e7172d49
--- /dev/null
+++ b/src/libraries/System.Reflection.TypeExtensions/tests/ILLink.Descriptors.xml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/libraries/System.Reflection.TypeExtensions/tests/ModuleTests.cs b/src/libraries/System.Reflection.TypeExtensions/tests/ModuleTests.cs
index 9017b400f280ac..4e9233de36a73e 100644
--- a/src/libraries/System.Reflection.TypeExtensions/tests/ModuleTests.cs
+++ b/src/libraries/System.Reflection.TypeExtensions/tests/ModuleTests.cs
@@ -28,7 +28,10 @@ public void GetModuleVersionId_KnownAssembly_ReturnsExpected()
{
Module module = Assembly.Load(new AssemblyName("TinyAssembly")).ManifestModule;
Assert.True(module.HasModuleVersionId());
- Assert.Equal(Guid.Parse("{06BB2468-908C-48CF-ADE9-DB6DE4614004}"), module.GetModuleVersionId());
+ if (!(PlatformDetection.IsMonoRuntime && PlatformDetection.IsAppleMobile && PlatformDetection.IsBuiltWithAggressiveTrimming))
+ {
+ Assert.Equal(Guid.Parse("{06BB2468-908C-48CF-ADE9-DB6DE4614004}"), module.GetModuleVersionId());
+ }
}
}
}
diff --git a/src/libraries/System.Reflection.TypeExtensions/tests/System.Reflection.TypeExtensions.Tests.csproj b/src/libraries/System.Reflection.TypeExtensions/tests/System.Reflection.TypeExtensions.Tests.csproj
index 233e848ac80ee8..4cec27f2eab318 100644
--- a/src/libraries/System.Reflection.TypeExtensions/tests/System.Reflection.TypeExtensions.Tests.csproj
+++ b/src/libraries/System.Reflection.TypeExtensions/tests/System.Reflection.TypeExtensions.Tests.csproj
@@ -22,5 +22,6 @@
TinyAssembly.dll
PreserveNewest
+
-
\ No newline at end of file
+
diff --git a/src/libraries/System.Resources.Extensions/tests/ILLink.Descriptors.xml b/src/libraries/System.Resources.Extensions/tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..cec64e4a9de62e
--- /dev/null
+++ b/src/libraries/System.Resources.Extensions/tests/ILLink.Descriptors.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/libraries/System.Resources.Extensions/tests/System.Resources.Extensions.Tests.csproj b/src/libraries/System.Resources.Extensions/tests/System.Resources.Extensions.Tests.csproj
index c1b004ee91105b..a0533c343614c6 100644
--- a/src/libraries/System.Resources.Extensions/tests/System.Resources.Extensions.Tests.csproj
+++ b/src/libraries/System.Resources.Extensions/tests/System.Resources.Extensions.Tests.csproj
@@ -2,6 +2,7 @@
$(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-unix;$(NetFrameworkMinimum)
true
+ true
@@ -15,7 +16,7 @@
-
+
@@ -25,7 +26,9 @@
-
+
+
+
+
diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs
index cb18c5e0222b31..24a1de935ad2f2 100644
--- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs
+++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs
@@ -132,6 +132,7 @@ public static void NullableAttributesOnPublicApiOnly(Type type)
[Theory]
[InlineData("mscorlib")]
[InlineData("System.Threading.Overlapped")]
+ [ActiveIssue("https://github.com/dotnet/runtime/issues/99592", typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))]
public static void ShimsHaveOnlyTypeForwards(string assemblyName)
{
Assembly assembly = Assembly.Load(assemblyName);
diff --git a/src/libraries/System.Security.Cryptography.Xml/tests/ILLink.Descriptors.xml b/src/libraries/System.Security.Cryptography.Xml/tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..3e8cdae693f7b4
--- /dev/null
+++ b/src/libraries/System.Security.Cryptography.Xml/tests/ILLink.Descriptors.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/src/libraries/System.Security.Cryptography.Xml/tests/System.Security.Cryptography.Xml.Tests.csproj b/src/libraries/System.Security.Cryptography.Xml/tests/System.Security.Cryptography.Xml.Tests.csproj
index b4704975b8215c..858a44b23608f9 100644
--- a/src/libraries/System.Security.Cryptography.Xml/tests/System.Security.Cryptography.Xml.Tests.csproj
+++ b/src/libraries/System.Security.Cryptography.Xml/tests/System.Security.Cryptography.Xml.Tests.csproj
@@ -74,4 +74,7 @@
+
+
+
diff --git a/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/ILLink.Descriptors.xml b/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/ILLink.Descriptors.xml
new file mode 100644
index 00000000000000..2c692431c3ac27
--- /dev/null
+++ b/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/ILLink.Descriptors.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/System.Text.Json.Tests.csproj b/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/System.Text.Json.Tests.csproj
index 61bea23cac8200..cada80f5cee613 100644
--- a/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/System.Text.Json.Tests.csproj
+++ b/src/libraries/System.Text.Json/tests/System.Text.Json.Tests/System.Text.Json.Tests.csproj
@@ -16,6 +16,9 @@
true
true
+
+ true
true
@@ -302,5 +305,7 @@
-
+
+
+
diff --git a/src/libraries/sendtohelix-mobile.targets b/src/libraries/sendtohelix-mobile.targets
index b003014bdcd265..0a3a091fdf4fc9 100644
--- a/src/libraries/sendtohelix-mobile.targets
+++ b/src/libraries/sendtohelix-mobile.targets
@@ -81,7 +81,7 @@
Destination="build/BuildIntegration" />
-
+
@@ -94,7 +94,7 @@
-
$(AppleTestTarget)
@@ -116,8 +116,8 @@
-
false
diff --git a/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.props b/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.props
index ed8be7e3ac38e6..ce1751cc91bf19 100644
--- a/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.props
+++ b/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.props
@@ -34,15 +34,19 @@
$([MSBuild]::NormalizeDirectory($(MicrosoftNetCoreAppRuntimePackLocationToUse), 'runtimes', '$(TargetOS)-$(TargetArchitecture.ToLowerInvariant())', 'lib', '$(_NetCoreAppCurrent)'))
$([MSBuild]::NormalizeDirectory($(MicrosoftNetCoreAppRuntimePackLocationToUse), 'runtimes', '$(TargetOS)-$(TargetArchitecture.ToLowerInvariant())', 'native'))
- $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'AppleAppBuilder', 'Debug', '$(_NetCoreAppToolCurrent)'))
- $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'LibraryBuilder', 'Debug', '$(_NetCoreAppToolCurrent)'))
- $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'MonoAOTCompiler', 'Debug', '$(_NetCoreAppToolCurrent)'))
- $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'MonoTargetsTasks', 'Debug', '$(_NetCoreAppToolCurrent)'))
+ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'AppleAppBuilder', '$(Configuration)', '$(_NetCoreAppToolCurrent)'))
+ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'LibraryBuilder', '$(Configuration)', '$(_NetCoreAppToolCurrent)'))
+ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'MonoAOTCompiler', '$(Configuration)', '$(_NetCoreAppToolCurrent)'))
+ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'MonoTargetsTasks', '$(Configuration)', '$(_NetCoreAppToolCurrent)'))
$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'mono', '$(TargetOS).$(TargetArchitecture).$(RuntimeConfig)'))
$([MSBuild]::NormalizePath($(MonoArtifactsPath), 'cross', '$(TargetOS)-$(TargetArchitecture.ToLowerInvariant())'))
<_MonoAotCrossCompilerPath>$([MSBuild]::NormalizePath($(MonoAotCrossDir), 'mono-aot-cross'))
<_MonoAotCrossCompilerPath Condition="$([MSBuild]::IsOSPlatform('WINDOWS'))">$(_MonoAotCrossCompilerPath).exe
+
+ $([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'ILLink.Tasks', '$(Configuration)', '$(_NetCoreAppToolCurrent)', 'build', 'Microsoft.NET.ILLink.Tasks.props'))
+ $([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'ILLink.Tasks', '$(Configuration)', '$(_NetCoreAppToolCurrent)', 'build', 'Microsoft.NET.ILLink.targets'))
+ <_ILLinkTasksAssembly>$([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'ILLink.Tasks', '$(Configuration)', '$(_NetCoreAppToolCurrent)', 'ILLink.Tasks.dll'))
@@ -64,8 +68,9 @@
$([MSBuild]::NormalizeDirectory('$(BuildBaseDir)', 'aotsdk'))
$(MicrosoftNetCoreAppRuntimePackLibDir)
$(MicrosoftNetCoreAppRuntimePackNativeDir)
- $([MSBuild]::NormalizePath('$(BuildBaseDir)', 'microsoft.net.illink.tasks', '$(_NetCoreAppToolCurrent)', 'build', 'Microsoft.NET.ILLink.targets'))
- $([MSBuild]::NormalizePath('$(BuildBaseDir)', 'microsoft.net.illink.tasks', '$(_NetCoreAppToolCurrent)', 'ILLink.Tasks.dll'))
+ $([MSBuild]::NormalizePath('$(BuildBaseDir)', '$(_NetCoreAppToolCurrent)', 'build', ''Microsoft.NET.ILLink.Tasks.props''))
+ $([MSBuild]::NormalizePath('$(BuildBaseDir)', '$(_NetCoreAppToolCurrent)', 'build', 'Microsoft.NET.ILLink.targets'))
+ <_ILLinkTasksAssembly>$([MSBuild]::NormalizePath('$(BuildBaseDir)', '$(_NetCoreAppToolCurrent)', 'ILLink.Tasks.dll'))
<_MonoAotCrossCompilerPath>$([MSBuild]::NormalizePath($(MonoAotCrossDir), 'mono-aot-cross'))
<_MonoAotCrossCompilerPath Condition="$([MSBuild]::IsOSPlatform('WINDOWS'))">$(_MonoAotCrossCompilerPath).exe
@@ -83,6 +88,12 @@
$([MSBuild]::NormalizePath('$(MonoTargetsTasksDir)', 'MonoTargetsTasks.dll'))
+
+
+
+ $(_ILLinkTasksAssembly)
+
+
diff --git a/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.targets b/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.targets
index 05bdce89bf8432..a28bff240a64a7 100644
--- a/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.targets
+++ b/src/mono/msbuild/apple/build/AppleBuild.LocalBuild.targets
@@ -34,8 +34,38 @@
false
+
+
+ true
+ $(NoWarn);IL2103;IL2105;IL2025;IL2111
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %(Filename)%(Extension)
+
+
+
+
-
+
ConfigureTrimming;_AdjustTrimmedAssembliesToBundle;$(AppleBuildDependsOn)
+ _PublishRuntimePack;_PrepareForAppleBuildAppOnHelix;$(AppleBuildDependsOn);_AfterAppleBuildOnHelix
+
+ true
+ $(OriginalPublishDir)
@@ -18,12 +22,9 @@
<_IsApplePlatform>true
true
<_targetOS>$(TargetOS)
-
-
- true
-
+
$(OriginalPublishDir)
static
@@ -41,6 +42,12 @@
false
+
+
+
+
+
+
@@ -49,14 +56,14 @@
-
+
true
AppleTestRunner.dll
-
+
$(OriginalPublishDir)
$(TestRootDir)AppBundle\
@@ -89,6 +96,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+