diff --git a/Directory.Build.targets b/Directory.Build.targets
index 88c4fb80d3c..7e26eef0a49 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -12,6 +12,7 @@
+
@@ -115,26 +116,6 @@
-
-
- <_analyzerPath>analyzers/dotnet
- <_analyzerPath Condition="'$(AnalyzerRoslynVersion)' != ''">$(_analyzerPath)/roslyn$(AnalyzerRoslynVersion)
- <_analyzerPath Condition="'$(AnalyzerLanguage)' != ''">$(_analyzerPath)/$(AnalyzerLanguage)
-
-
-
-
- <_AnalyzerPackFile Include="@(_BuildOutputInPackage->WithMetadataValue('TargetFramework', 'netstandard2.0'))" IsSymbol="false" />
- <_AnalyzerPackFile Include="@(_TargetPathsToSymbols->WithMetadataValue('TargetFramework', 'netstandard2.0'))" IsSymbol="true" />
- <_AnalyzerPackFile PackagePath="$(_analyzerPath)/%(TargetPath)" />
-
-
-
-
-
+
+
+ <_targetingPackAnalyzerReferenceWithProjectName Include="@(Analyzer->WithMetadataValue('ExternallyResolved', 'true')->Metadata('Filename'))"
+ OriginalIdentity="%(Identity)" />
+ <_targetingPackIncludedAnalyzerReferenceWithProjectName Include="@(_targetingPackAnalyzerReferenceWithProjectName)"
+ Exclude="@(_targetingPackReferenceExclusion)" />
+ <_targetingPackExcludedAnalyzerReferenceWithProjectName Include="@(_targetingPackAnalyzerReferenceWithProjectName)"
+ Exclude="@(_targetingPackIncludedAnalyzerReferenceWithProjectName)" />
+
+
+
+ <_AnalyzerPackFile Include="@(_BuildOutputInPackage->WithMetadataValue('TargetFramework', 'netstandard2.0'))" IsSymbol="false" />
+ <_AnalyzerPackFile Include="@(_TargetPathsToSymbols->WithMetadataValue('TargetFramework', 'netstandard2.0'))" IsSymbol="true" />
+ <_AnalyzerPackFile PackagePath="$(_analyzerPath)/%(TargetPath)" />
+
+
+
+
+
+
\ No newline at end of file
diff --git a/eng/generators.targets b/eng/generators.targets
index 64aa5d6c95c..365c8ad14dd 100644
--- a/eng/generators.targets
+++ b/eng/generators.targets
@@ -1,4 +1,5 @@
+
true
@@ -13,7 +14,7 @@
AnyHaveMetadataValue('Identity', 'System.Runtime.InteropServices'))
- ) or
- (
- '@(ProjectReference)' != '' and
- @(ProjectReference->AnyHaveMetadataValue('Identity', '$(CoreLibProject)'))
+ '$(DisableImplicitFrameworkReferences)' == 'true' and
+ (
+ '@(Reference->AnyHaveMetadataValue('Identity', 'System.Runtime.InteropServices'))' == 'true' or
+ '@(ProjectReference->AnyHaveMetadataValue('Identity', '$(CoreLibProject)'))' == 'true'
+ )
)
)" />
@@ -61,18 +60,14 @@
-
-
-
-
+ OutputItemType="Analyzer"
+ Condition="@(EnabledGenerators->AnyHaveMetadataValue('Identity', 'LibraryImportGenerator'))" />
+ OutputItemType="Analyzer"
+ Condition="@(EnabledGenerators->AnyHaveMetadataValue('Identity', 'ComInterfaceGenerator'))" />
true
-
-
-
+
diff --git a/eng/targetingpacks.targets b/eng/targetingpacks.targets
index 14ceef19b70..b3ad8560d63 100644
--- a/eng/targetingpacks.targets
+++ b/eng/targetingpacks.targets
@@ -129,12 +129,14 @@
+
+
+ Condition="'%(ResolvedTargetingPack.RuntimeFrameworkName)' == '$(LocalFrameworkOverrideName)'" />
diff --git a/src/libraries/Directory.Build.targets b/src/libraries/Directory.Build.targets
index 8e000b5f4d7..a97fa3de8c6 100644
--- a/src/libraries/Directory.Build.targets
+++ b/src/libraries/Directory.Build.targets
@@ -90,7 +90,7 @@
-
diff --git a/src/libraries/Microsoft.NET.WebAssembly.Webcil/src/Microsoft.NET.WebAssembly.Webcil.csproj b/src/libraries/Microsoft.NET.WebAssembly.Webcil/src/Microsoft.NET.WebAssembly.Webcil.csproj
index 6c66737e553..dee9811870c 100644
--- a/src/libraries/Microsoft.NET.WebAssembly.Webcil/src/Microsoft.NET.WebAssembly.Webcil.csproj
+++ b/src/libraries/Microsoft.NET.WebAssembly.Webcil/src/Microsoft.NET.WebAssembly.Webcil.csproj
@@ -6,6 +6,8 @@
true
true
false
+
+ false
diff --git a/src/libraries/System.Data.Odbc/src/System.Data.Odbc.csproj b/src/libraries/System.Data.Odbc/src/System.Data.Odbc.csproj
index 56bcf649fcd..179d48f4b97 100644
--- a/src/libraries/System.Data.Odbc/src/System.Data.Odbc.csproj
+++ b/src/libraries/System.Data.Odbc/src/System.Data.Odbc.csproj
@@ -138,13 +138,6 @@ System.Data.Odbc.OdbcTransaction
Link="Common\System\Runtime\InteropServices\HandleRefMarshaller.cs" />
-
-
-
-
diff --git a/src/libraries/System.Data.OleDb/src/System.Data.OleDb.csproj b/src/libraries/System.Data.OleDb/src/System.Data.OleDb.csproj
index 18323cfaa0d..bb549009216 100644
--- a/src/libraries/System.Data.OleDb/src/System.Data.OleDb.csproj
+++ b/src/libraries/System.Data.OleDb/src/System.Data.OleDb.csproj
@@ -153,10 +153,4 @@ System.Data.OleDb.OleDbTransaction
-
-
-
diff --git a/src/libraries/System.Memory.Data/tests/System.Memory.Data.Tests.csproj b/src/libraries/System.Memory.Data/tests/System.Memory.Data.Tests.csproj
index a2eb4ed1d56..b491d2539a0 100644
--- a/src/libraries/System.Memory.Data/tests/System.Memory.Data.Tests.csproj
+++ b/src/libraries/System.Memory.Data/tests/System.Memory.Data.Tests.csproj
@@ -12,7 +12,7 @@
-
+
diff --git a/src/libraries/System.Net.Http.Json/tests/FunctionalTests/System.Net.Http.Json.Functional.Tests.csproj b/src/libraries/System.Net.Http.Json/tests/FunctionalTests/System.Net.Http.Json.Functional.Tests.csproj
index 20aff79b1d8..fdc00db7ae3 100644
--- a/src/libraries/System.Net.Http.Json/tests/FunctionalTests/System.Net.Http.Json.Functional.Tests.csproj
+++ b/src/libraries/System.Net.Http.Json/tests/FunctionalTests/System.Net.Http.Json.Functional.Tests.csproj
@@ -1,16 +1,20 @@
+
$(NetCoreAppCurrent);$(NetFrameworkCurrent)
+
+
+
@@ -23,11 +27,14 @@
+
-
+
+
+
diff --git a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.Legacy.UnitTests/System.Runtime.InteropServices.JavaScript.Legacy.Tests.csproj b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.Legacy.UnitTests/System.Runtime.InteropServices.JavaScript.Legacy.Tests.csproj
index e3d9f5609c7..41aaf18747b 100644
--- a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.Legacy.UnitTests/System.Runtime.InteropServices.JavaScript.Legacy.Tests.csproj
+++ b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.Legacy.UnitTests/System.Runtime.InteropServices.JavaScript.Legacy.Tests.csproj
@@ -32,7 +32,5 @@
-
-
diff --git a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System.Runtime.InteropServices.JavaScript.Tests.csproj b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System.Runtime.InteropServices.JavaScript.Tests.csproj
index b3f923ae5c2..13a08edcbf2 100644
--- a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System.Runtime.InteropServices.JavaScript.Tests.csproj
+++ b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System.Runtime.InteropServices.JavaScript.Tests.csproj
@@ -22,9 +22,4 @@
-
-
-
-
-
diff --git a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/ComInterfaceGenerator.Tests.csproj b/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/ComInterfaceGenerator.Tests.csproj
index 88114bc4d06..c01c4554f8a 100644
--- a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/ComInterfaceGenerator.Tests.csproj
+++ b/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/ComInterfaceGenerator.Tests.csproj
@@ -1,13 +1,10 @@
+
$(NetCoreAppCurrent)
- false
- Preview
true
- true
-
- false
true
+ true
@@ -16,7 +13,6 @@
-
diff --git a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/Directory.Build.props b/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/Directory.Build.props
deleted file mode 100644
index fa9c3a4001d..00000000000
--- a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Tests/Directory.Build.props
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
- true
-
-
diff --git a/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj b/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
index 515dd243036..b5763ece685 100644
--- a/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
+++ b/src/libraries/System.Runtime.InteropServices/tests/TestAssets/NativeExports/NativeExports.csproj
@@ -20,6 +20,7 @@
+
+
diff --git a/src/libraries/sfx.proj b/src/libraries/sfx.proj
index e0d781ca85f..1f961cf6f2b 100644
--- a/src/libraries/sfx.proj
+++ b/src/libraries/sfx.proj
@@ -11,12 +11,12 @@
SharedFrameworkAssembly
+
-
diff --git a/src/mono/sample/mbr/browser/WasmDelta.csproj b/src/mono/sample/mbr/browser/WasmDelta.csproj
index ff2698061c8..f040a672401 100644
--- a/src/mono/sample/mbr/browser/WasmDelta.csproj
+++ b/src/mono/sample/mbr/browser/WasmDelta.csproj
@@ -56,9 +56,4 @@
-
-
-
-
-
diff --git a/src/mono/sample/wasm/Directory.Build.props b/src/mono/sample/wasm/Directory.Build.props
index a5af908c5fe..ee667c57c94 100644
--- a/src/mono/sample/wasm/Directory.Build.props
+++ b/src/mono/sample/wasm/Directory.Build.props
@@ -33,10 +33,6 @@
-
-
-
-
diff --git a/src/mono/sample/wasm/browser-bench/Console/Wasm.Console.Bench.Sample.csproj b/src/mono/sample/wasm/browser-bench/Console/Wasm.Console.Bench.Sample.csproj
index 17ad0810312..d43314d4b31 100644
--- a/src/mono/sample/wasm/browser-bench/Console/Wasm.Console.Bench.Sample.csproj
+++ b/src/mono/sample/wasm/browser-bench/Console/Wasm.Console.Bench.Sample.csproj
@@ -19,10 +19,4 @@
-
-
-
-
diff --git a/src/mono/sample/wasm/browser-bench/Wasm.Browser.Bench.Sample.csproj b/src/mono/sample/wasm/browser-bench/Wasm.Browser.Bench.Sample.csproj
index 2292a242731..aa763adaaca 100644
--- a/src/mono/sample/wasm/browser-bench/Wasm.Browser.Bench.Sample.csproj
+++ b/src/mono/sample/wasm/browser-bench/Wasm.Browser.Bench.Sample.csproj
@@ -20,10 +20,4 @@
-
-
-
-
diff --git a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
index e9d4067311a..632550798d5 100644
--- a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
+++ b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
@@ -115,8 +115,6 @@
-
-
diff --git a/src/tests/FunctionalTests/WebAssembly/Directory.Build.props b/src/tests/FunctionalTests/WebAssembly/Directory.Build.props
index 3b9e4d47c94..3eabd3de6b4 100644
--- a/src/tests/FunctionalTests/WebAssembly/Directory.Build.props
+++ b/src/tests/FunctionalTests/WebAssembly/Directory.Build.props
@@ -13,8 +13,6 @@
-
-