From abc04f274797ef4388caf080ff9566483653c14c Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Wed, 4 Jan 2023 08:08:10 +0100 Subject: [PATCH] Clean-up ILLink targets and avoid binplacing (#80102) Clean-up illink.targets file, remove outdated logic that doesn't work and isn't used anymore. Avoid binplacing and instead use the P2P protocol to communicate a projects illink settings. Such information is then available in consuming projects like sfx.proj and oob.proj and avoids IO operations (binplacing). --- eng/illink.targets | 162 ++++++++++++++--------------------------- src/libraries/oob.proj | 15 ++-- src/libraries/sfx.proj | 21 +++--- 3 files changed, 70 insertions(+), 128 deletions(-) diff --git a/eng/illink.targets b/eng/illink.targets index 0f300e1a02d3a..3636c029fc901 100644 --- a/eng/illink.targets +++ b/eng/illink.targets @@ -1,20 +1,10 @@ + true _EmbedILLinkXmls;$(PrepareResourcesDependsOn) $(TargetsTriggeredByCompilation);ILLinkTrimAssembly - - - - - - $(IsTrimmable) - - - - $(MSBuildProjectDirectory)\ILLink\ $(IntermediateOutputPath)$(TargetName)$(TargetExt) $(IntermediateOutputPath)$(TargetName).pdb @@ -40,82 +30,64 @@ true - - - - - - - - $(NetCoreAppCurrent)-$(TargetOS)-$(Configuration)-$(TargetArchitecture) - $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'ILLinkTrimAssembly', '$(NetCoreAppCurrentBuildSettings)')) - $(ILLinkTrimAssemblyArtifactsRootDir)suppressions-xmls\ - $(ILLinkTrimAssemblyArtifactsRootDir)oob-suppressions-xmls\ - $(ILLinkTrimAssemblyRuntimePackSuppressionsXmlsDir) - $(ILLinkTrimAssemblyOOBSuppressionsXmlsDir) + $(IntermediateOutputPath)ILLink.Resources.Substitutions.xml + true - - - - $(ILLinkTrimAssemblyArtifactsRootDir)trimmed - TrimmedItem - - - $(ILLinkTrimAssemblyArtifactsRootDir)reports - TrimmingReport - - - $(ILLinkTrimAssemblyArtifactsRootDir)pretrimmed - PreTrimmedItem - - - - - - - + + + + - - $(ILLinkTrimAssemblySuppressionsXmlsDir) - ILLinkSuppressionsXmls - - - $(ILLinkTrimAssemblySuppressionsXmlsDir) - ILLinkSuppressionsXmls - + + + - + + + + $(IsTrimmable) + + - - - ILLink.Descriptors.xml - + + + + + - - - ILLink.Substitutions.xml - - + + + - - - ILLink.LinkAttributes.xml - - + + + @@ -135,15 +107,6 @@ - - $(IntermediateOutputPath)ILLink.Resources.Substitutions.xml - true - - - - - - @@ -218,10 +181,8 @@ - + $(ILLinkArgs) --disable-opt ipconstprop - - + DestinationFolder="$(ILLinkTrimInputPath)"> + + + Condition="'$(ILLinkRewritePDBs)' == 'true' and Exists('$(ILLinkTrimAssemblySymbols)')"> + + <_DependencyDirectoriesTemp Include="@(ReferencePathWithRefAssemblies->'%(RootDir)%(Directory)')" /> @@ -333,21 +294,4 @@ - - - - - - - - - - - - - - diff --git a/src/libraries/oob.proj b/src/libraries/oob.proj index 792670cb803ba..c66085039e231 100644 --- a/src/libraries/oob.proj +++ b/src/libraries/oob.proj @@ -37,13 +37,12 @@ - $([MSBuild]::NormalizeDirectory('$(ILLinkTrimAssemblyArtifactsRootDir)', 'trimmed-oobs')) - $(IntermediateOutputPath)linker-$(TargetArchitecture)-marker.txt + $([MSBuild]::NormalizeDirectory('$(IntermediateOutputPath)', 'illink-$(TargetArchitecture)')) + $(OOBAssembliesTrimDir)marker.txt - - + + Outputs="$(OOBAssembliesTrimMarkerFile)"> @@ -66,17 +65,17 @@ $(OOBILLinkArgs) --link-attributes "@(OOBLibrarySuppressionsXml->'%(FullPath)', '" --link-attributes "')" + - - diff --git a/src/libraries/sfx.proj b/src/libraries/sfx.proj index e5a4e31c7dd0c..e759e2e2c7462 100644 --- a/src/libraries/sfx.proj +++ b/src/libraries/sfx.proj @@ -24,17 +24,16 @@ - + - $(IntermediateOutputPath)linker-$(TargetArchitecture)-marker.txt + $([MSBuild]::NormalizeDirectory('$(IntermediateOutputPath)', 'illink-$(TargetArchitecture)')) + $(SharedFrameworkAssembliesTrimDir)linker-marker.txt - - - + - @@ -43,30 +42,30 @@ DependsOnTargets="ResolveProjectReferences;GetTrimSharedFrameworkAssembliesInputs;PrepareForAssembliesTrim" Condition="'$(RefOnly)' != 'true'" Inputs="@(SharedFrameworkAssembly);@(SharedFrameworkSuppressionsXml);$(ILLinkTasksAssembly)" - Outputs="$(SharedFrameworkAssembliesMarkerFile)"> + Outputs="$(SharedFrameworkAssembliesTrimMarkerFile)"> $(ILLinkArgs) $(SharedFrameworkILLinkArgs) -b true - $(SharedFrameworkILLinkArgs) --link-attributes "@(SharedFrameworkSuppressionsXml->'%(FullPath)', '" --link-attributes "')" + $(SharedFrameworkILLinkArgs) --link-attributes "@(SharedFrameworkSuppressionsXml, '" --link-attributes "')" + - -