From a474cc3ccc7e88da3181095544fe645fd6755fbe Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Thu, 14 May 2020 16:19:19 +0200 Subject: [PATCH] Make depproj intermediate output paths unique again Fixes https://github.com/dotnet/runtime/issues/36255 Depprojs depend on IntermediateOutputPath being set in a props file early enough as restore is happening per configuration. Even though it isn't recommended that the TargetFramework property is read before the project is loaded, we currently encode the TargetFramework in the IntermediateOutputPath for depproj files. The long-term fix is to get rid of per configuration restores by getting rid of our depproj files. --- src/libraries/restore/Directory.Build.props | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/libraries/restore/Directory.Build.props b/src/libraries/restore/Directory.Build.props index 059f4b48d8ca2..359dfd63da6af 100644 --- a/src/libraries/restore/Directory.Build.props +++ b/src/libraries/restore/Directory.Build.props @@ -2,10 +2,13 @@ - + + $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(TargetFrameworkSuffix)-$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(Configuration)')) $(IntermediateOutputPath) $(RestoreOutputPath)/project.assets.json $(IntermediateOutputPath) + true false netstandard2.0 @@ -18,4 +21,4 @@ Build - \ No newline at end of file +