From c781d3633eeed207c9ff4eaeb393fbe5f6b6089f Mon Sep 17 00:00:00 2001 From: Anipik Date: Wed, 28 Oct 2020 11:57:43 -0700 Subject: [PATCH 1/6] Use targetPlatformMoniker for net5.0 and newer tfms --- eng/BeforeTargetFrameworkInference.targets | 11 ++++++----- eng/resolveContract.targets | 2 +- eng/targetframeworksuffix.props | 7 +++++++ src/libraries/Directory.Build.props | 2 ++ 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/eng/BeforeTargetFrameworkInference.targets b/eng/BeforeTargetFrameworkInference.targets index abef4c8981a28..aa8be03f7fc66 100644 --- a/eng/BeforeTargetFrameworkInference.targets +++ b/eng/BeforeTargetFrameworkInference.targets @@ -3,17 +3,18 @@ <_OriginalTargetFramework>$(TargetFramework) $(TargetFramework.SubString($([MSBuild]::Add($(TargetFramework.IndexOf('-')), 1)))) - $(TargetFramework.SubString(0, $(TargetFramework.IndexOf('-')))) + + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '$(TargetFrameworkPattern)', '${v1}')) - $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(TargetFrameworkSuffix)-$(Configuration)')) - $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)', '$(TargetFramework)-$(TargetFrameworkSuffix)-$(Configuration)')) - $([MSBuild]::NormalizeDirectory('$(BaseOutputPath)', '$(TargetFramework)-$(TargetFrameworkSuffix)-$(Configuration)')) - $([MSBuild]::NormalizeDirectory('$(BaseOutputPath)', '$(TargetFramework)-$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BaseOutputPath)', '$(TargetFramework)-$(Configuration)')) + $([MSBuild]::NormalizeDirectory('$(BaseOutputPath)', '$(TargetFramework)-$(TargetFrameworkSuffix)-$(Configuration)')) diff --git a/eng/resolveContract.targets b/eng/resolveContract.targets index 6f4bb0e253ee3..7f95e48907cb8 100644 --- a/eng/resolveContract.targets +++ b/eng/resolveContract.targets @@ -12,7 +12,7 @@ $(NetCoreAppCurrentRefPath)$(TargetFileName) - $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(TargetFramework)-$(Configuration)', '$(TargetFileName)')) + $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(TargetFramework)-$(Configuration)', '$(TargetFileName)')) false diff --git a/eng/targetframeworksuffix.props b/eng/targetframeworksuffix.props index 80443a1646871..3ad2d155156ba 100644 --- a/eng/targetframeworksuffix.props +++ b/eng/targetframeworksuffix.props @@ -1,4 +1,11 @@ + + + $(TargetFrameworkSuffix) + 99.0 + $(TargetFrameworkSuffix),Version=$(TargetPlatformVersion) + + diff --git a/src/libraries/Directory.Build.props b/src/libraries/Directory.Build.props index 9e05e6870a2b9..912b36d94e67b 100644 --- a/src/libraries/Directory.Build.props +++ b/src/libraries/Directory.Build.props @@ -26,6 +26,8 @@ + true + true $([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant) arm arm64 From b16a29a95aa062e15b69d6cb920797066c4d1086 Mon Sep 17 00:00:00 2001 From: Anipik Date: Tue, 3 Nov 2020 12:51:58 -0800 Subject: [PATCH 2/6] disabling analyzer, update version to 0.0, and use new format. --- eng/BeforeTargetFrameworkInference.targets | 2 +- eng/targetframeworksuffix.props | 2 +- src/libraries/System.Console/src/System.Console.csproj | 1 + .../src/System.DirectoryServices.Protocols.csproj | 1 + src/libraries/System.Net.Http/src/System.Net.Http.csproj | 1 + .../src/System.Security.Cryptography.Algorithms.csproj | 1 + 6 files changed, 6 insertions(+), 2 deletions(-) diff --git a/eng/BeforeTargetFrameworkInference.targets b/eng/BeforeTargetFrameworkInference.targets index aa8be03f7fc66..93609381fb4b1 100644 --- a/eng/BeforeTargetFrameworkInference.targets +++ b/eng/BeforeTargetFrameworkInference.targets @@ -4,7 +4,7 @@ <_OriginalTargetFramework>$(TargetFramework) $(TargetFramework.SubString($([MSBuild]::Add($(TargetFramework.IndexOf('-')), 1)))) - $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '$(TargetFrameworkPattern)', '${v1}')) + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '$(TargetFrameworkPattern)', '${1}')) diff --git a/eng/targetframeworksuffix.props b/eng/targetframeworksuffix.props index 3ad2d155156ba..df5ac38219fb3 100644 --- a/eng/targetframeworksuffix.props +++ b/eng/targetframeworksuffix.props @@ -2,7 +2,7 @@ $(TargetFrameworkSuffix) - 99.0 + 0.0 $(TargetFrameworkSuffix),Version=$(TargetPlatformVersion) diff --git a/src/libraries/System.Console/src/System.Console.csproj b/src/libraries/System.Console/src/System.Console.csproj index b4b5eb0bcb247..19a35791ab5d9 100644 --- a/src/libraries/System.Console/src/System.Console.csproj +++ b/src/libraries/System.Console/src/System.Console.csproj @@ -3,6 +3,7 @@ true $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Android;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser enable + $(NoWarn);CA1416 diff --git a/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj b/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj index 5d448bcccd8ba..53b09aa6beaa0 100644 --- a/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj +++ b/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj @@ -4,6 +4,7 @@ true $(NetCoreAppCurrent)-windows;netcoreapp2.0-windows;$(NetCoreAppCurrent)-OSX;netcoreapp2.0-OSX;$(NetCoreAppCurrent)-Linux;netcoreapp2.0-Linux;netstandard2.0 true + $(NoWarn);CA1416 diff --git a/src/libraries/System.Net.Http/src/System.Net.Http.csproj b/src/libraries/System.Net.Http/src/System.Net.Http.csproj index febae717a7fe9..551c244691786 100644 --- a/src/libraries/System.Net.Http/src/System.Net.Http.csproj +++ b/src/libraries/System.Net.Http/src/System.Net.Http.csproj @@ -4,6 +4,7 @@ true $(DefineConstants);HTTP_DLL $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Linux;$(NetCoreAppCurrent)-OSX;$(NetCoreAppCurrent)-FreeBSD;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser + $(NoWarn);CA1416 enable diff --git a/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj b/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj index 2c53e1d740319..80ede877cc0cb 100644 --- a/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj +++ b/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj @@ -4,6 +4,7 @@ $(DefineConstants);INTERNAL_ASYMMETRIC_IMPLEMENTATIONS $(NoWarn);CA5350;CA5351;CA5379;CA5384 $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Android;$(NetCoreAppCurrent)-OSX;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser + $(NoWarn);CA1416 enable From 80977737188b3c9207cbe0401f66246a14d55e39 Mon Sep 17 00:00:00 2001 From: Anipik Date: Wed, 4 Nov 2020 09:21:35 -0800 Subject: [PATCH 3/6] update the targetFramework.sdk --- global.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/global.json b/global.json index 712486f620a0e..e74fc180a0a41 100644 --- a/global.json +++ b/global.json @@ -12,7 +12,7 @@ "python3": "3.7.1" }, "msbuild-sdks": { - "Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk": "6.0.0-beta.20529.1", + "Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk": "6.0.0-beta.20554.1", "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.20529.1", "Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk": "6.0.0-beta.20529.1", "Microsoft.DotNet.Helix.Sdk": "6.0.0-beta.20529.1", From c224ae697d5ac3a32c62ebf34706d63f54fb9dc3 Mon Sep 17 00:00:00 2001 From: Anipik Date: Wed, 4 Nov 2020 12:13:31 -0800 Subject: [PATCH 4/6] removing supportedOS assembly level attribute --- eng/versioning.targets | 14 ++++++++++++++ .../System.Console/src/System.Console.csproj | 1 - .../src/System.DirectoryServices.Protocols.csproj | 1 - .../System.Net.Http/src/System.Net.Http.csproj | 1 - .../System.Security.Cryptography.Algorithms.csproj | 1 - 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/eng/versioning.targets b/eng/versioning.targets index 61789747403d7..11dbf10a0ed88 100644 --- a/eng/versioning.targets +++ b/eng/versioning.targets @@ -155,4 +155,18 @@ WriteOnlyWhenDifferent="true" /> + + + $(PrepareForBuildDependsOn);RemoveSupportedPlatformAssemblyLevelAttribute + + + + + + + + + + diff --git a/src/libraries/System.Console/src/System.Console.csproj b/src/libraries/System.Console/src/System.Console.csproj index 19a35791ab5d9..b4b5eb0bcb247 100644 --- a/src/libraries/System.Console/src/System.Console.csproj +++ b/src/libraries/System.Console/src/System.Console.csproj @@ -3,7 +3,6 @@ true $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Android;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser enable - $(NoWarn);CA1416 diff --git a/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj b/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj index 53b09aa6beaa0..5d448bcccd8ba 100644 --- a/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj +++ b/src/libraries/System.DirectoryServices.Protocols/src/System.DirectoryServices.Protocols.csproj @@ -4,7 +4,6 @@ true $(NetCoreAppCurrent)-windows;netcoreapp2.0-windows;$(NetCoreAppCurrent)-OSX;netcoreapp2.0-OSX;$(NetCoreAppCurrent)-Linux;netcoreapp2.0-Linux;netstandard2.0 true - $(NoWarn);CA1416 diff --git a/src/libraries/System.Net.Http/src/System.Net.Http.csproj b/src/libraries/System.Net.Http/src/System.Net.Http.csproj index 551c244691786..febae717a7fe9 100644 --- a/src/libraries/System.Net.Http/src/System.Net.Http.csproj +++ b/src/libraries/System.Net.Http/src/System.Net.Http.csproj @@ -4,7 +4,6 @@ true $(DefineConstants);HTTP_DLL $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Linux;$(NetCoreAppCurrent)-OSX;$(NetCoreAppCurrent)-FreeBSD;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser - $(NoWarn);CA1416 enable diff --git a/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj b/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj index 80ede877cc0cb..2c53e1d740319 100644 --- a/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj +++ b/src/libraries/System.Security.Cryptography.Algorithms/src/System.Security.Cryptography.Algorithms.csproj @@ -4,7 +4,6 @@ $(DefineConstants);INTERNAL_ASYMMETRIC_IMPLEMENTATIONS $(NoWarn);CA5350;CA5351;CA5379;CA5384 $(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Android;$(NetCoreAppCurrent)-OSX;$(NetCoreAppCurrent)-iOS;$(NetCoreAppCurrent)-tvOS;$(NetCoreAppCurrent)-Browser - $(NoWarn);CA1416 enable From 0781146b103ac559686fe49ff0e1ead79379e254 Mon Sep 17 00:00:00 2001 From: Anipik Date: Thu, 5 Nov 2020 11:31:20 -0800 Subject: [PATCH 5/6] fix linker errors and addressing feedback --- eng/resolveContract.targets | 4 ++-- eng/targetframeworksuffix.props | 5 +++++ eng/versioning.targets | 6 +----- src/libraries/Directory.Build.props | 4 +--- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/eng/resolveContract.targets b/eng/resolveContract.targets index 7f95e48907cb8..376541ecee46e 100644 --- a/eng/resolveContract.targets +++ b/eng/resolveContract.targets @@ -12,8 +12,8 @@ $(NetCoreAppCurrentRefPath)$(TargetFileName) - $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(TargetFramework)-$(Configuration)', '$(TargetFileName)')) - + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '(-[^;]+)', '')) + $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(TargetFrameworkWithoutPlatform)-$(Configuration)', '$(TargetFileName)')) false diff --git a/eng/targetframeworksuffix.props b/eng/targetframeworksuffix.props index df5ac38219fb3..2525ce954a355 100644 --- a/eng/targetframeworksuffix.props +++ b/eng/targetframeworksuffix.props @@ -1,5 +1,10 @@ + + true + true + + $(TargetFrameworkSuffix) 0.0 diff --git a/eng/versioning.targets b/eng/versioning.targets index 11dbf10a0ed88..3177b48b0ba6d 100644 --- a/eng/versioning.targets +++ b/eng/versioning.targets @@ -156,13 +156,9 @@ - - $(PrepareForBuildDependsOn);RemoveSupportedPlatformAssemblyLevelAttribute - - + AfterTargets="GetAssemblyAttributes"> diff --git a/src/libraries/Directory.Build.props b/src/libraries/Directory.Build.props index 912b36d94e67b..b48551a1fba5b 100644 --- a/src/libraries/Directory.Build.props +++ b/src/libraries/Directory.Build.props @@ -26,8 +26,6 @@ - true - true $([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant) arm arm64 @@ -41,7 +39,7 @@ Debug - $(TargetFramework) + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '(-[^;]+)', '')) net45;net451;net452;net46;net461;net462;net47;net471;net472 $(AdditionalBuildTargetFrameworks);netstandard2.0 From 6dd5a5c22d66a9d06a079ae0928d2e82a7481b60 Mon Sep 17 00:00:00 2001 From: Anipik Date: Thu, 5 Nov 2020 12:17:34 -0800 Subject: [PATCH 6/6] making _TargetFrameworkWithoutPlatform as private --- eng/resolveContract.targets | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/resolveContract.targets b/eng/resolveContract.targets index 376541ecee46e..06084755937f4 100644 --- a/eng/resolveContract.targets +++ b/eng/resolveContract.targets @@ -12,8 +12,8 @@ $(NetCoreAppCurrentRefPath)$(TargetFileName) - $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '(-[^;]+)', '')) - $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(TargetFrameworkWithoutPlatform)-$(Configuration)', '$(TargetFileName)')) + <_TargetFrameworkWithoutPlatform>$([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '(-[^;]+)', '')) + $([MSBuild]::NormalizePath('$(BaseOutputPath)', 'ref', '$(_TargetFrameworkWithoutPlatform)-$(Configuration)', '$(TargetFileName)')) false @@ -59,4 +59,4 @@ ReferenceAssembly="" /> - \ No newline at end of file +