From 4b6c7ed501b7e352d53898a2a0d2c2c5ddf3c34e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Michal=20Strehovsk=C3=BD?= Date: Fri, 31 Dec 2021 00:34:41 +0900 Subject: [PATCH] Allow using ILCompiler without an IlcPath (#63211) This will allow specifying disjoint paths for the various inputs to ILC. We'll need this if we want to run ILC as part of the build to either build crossgen2 with ILC or selfhost ILC. Separate properties avoid having to lay out things on the file system the way IlcPath expects. --- .../Microsoft.NETCore.Native.Unix.props | 8 +++--- .../Microsoft.NETCore.Native.Windows.props | 6 ++--- .../Microsoft.NETCore.Native.targets | 31 +++++++++++++--------- 3 files changed, 25 insertions(+), 20 deletions(-) diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.props b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.props index e486925..b49f24e 100644 --- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.props +++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Unix.props @@ -40,9 +40,9 @@ The .NET Foundation licenses this file to you under the MIT license. - - - + + + @@ -57,7 +57,7 @@ The .NET Foundation licenses this file to you under the MIT license. - $(IlcPath)/framework/lib%(Identity).a + $(IlcFrameworkPath)lib%(Identity).a diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Windows.props b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Windows.props index 32cb494..6da9fe3 100644 --- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Windows.props +++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.Windows.props @@ -32,8 +32,8 @@ The .NET Foundation licenses this file to you under the MIT license. - - + + @@ -44,7 +44,7 @@ The .NET Foundation licenses this file to you under the MIT license. - $(IlcPath)\sdk\%(Identity).Aot$(LibrarySuffix) + $(IlcSdkPath)%(Identity).Aot$(LibrarySuffix) diff --git a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets index 2d353a4..265040b 100644 --- a/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets +++ b/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets @@ -20,7 +20,10 @@ The .NET Foundation licenses this file to you under the MIT license. $(OutputPath)native\ true $(MSBuildThisFileDirectory)..\tools\netstandard\ILCompiler.Build.Tasks.dll - $(IlcPath) + $(IlcPath)\tools\ + $(IlcPath)\sdk\ + $(IlcPath)\framework\ + $(IlcPath)\mibc\ windows OSX $(OS) @@ -102,13 +105,13 @@ The .NET Foundation licenses this file to you under the MIT license. - <_ExcludedPrivateSdkAssemblies Include="$(IlcPath)\sdk\System.Private.Reflection.Core.dll" Condition="$(IlcDisableReflection) == 'true'" /> - + <_ExcludedPrivateSdkAssemblies Include="$(IlcSdkPath)System.Private.Reflection.Core.dll" Condition="$(IlcDisableReflection) == 'true'" /> + - + - + @@ -134,19 +137,21 @@ The .NET Foundation licenses this file to you under the MIT license. - $(IlcHostPackagePath) - $(RuntimePackagePath) + $(IlcHostPackagePath)\tools\ + $(RuntimePackagePath)\sdk\ + $(RuntimePackagePath)\framework\ + $(RuntimePackagePath)\mibc\ - + - <_ExcludedPrivateSdkAssemblies Include="$(IlcPath)\sdk\System.Private.Reflection.Core.dll" Condition="$(IlcDisableReflection) == 'true'" /> - + <_ExcludedPrivateSdkAssemblies Include="$(IlcSdkPath)System.Private.Reflection.Core.dll" Condition="$(IlcDisableReflection) == 'true'" /> + - + - + @@ -284,7 +289,7 @@ The .NET Foundation licenses this file to you under the MIT license. - + -- 2.7.4