|
21 | 21 | <ReferenceCopyLocalAssemblies Include="@(ReferenceCopyLocalPaths)" Condition="'%(Extension)' == '.dll'
|
22 | 22 | And !$([MSBuild]::ValueOrDefault('%(FileName)', '').EndsWith('.resources', StringComparison.OrdinalIgnoreCase))
|
23 | 23 | And !$([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('ThisAssembly', StringComparison.OrdinalIgnoreCase))" />
|
24 |
| - <Analyzer Include="@(ReferenceCopyLocalAssemblies)" Condition=" |
| 24 | + |
| 25 | + <CandidateAnalyzer Include="@(ReferenceCopyLocalAssemblies)" Condition=" |
25 | 26 | !$([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('Microsoft.CodeAnalysis', StringComparison.OrdinalIgnoreCase)) And
|
26 | 27 | !$([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('Microsoft.CSharp', StringComparison.OrdinalIgnoreCase)) And
|
27 | 28 | !$([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('System.', StringComparison.OrdinalIgnoreCase))"
|
28 | 29 | />
|
29 | 30 | <!-- Brings in System/Microsoft.IdentityModel, System.Text.Encodings.Web, System.Text.Json, Humanizer -->
|
30 |
| - <Analyzer Include="@(ReferenceCopyLocalAssemblies)" Condition=" |
| 31 | + <CandidateAnalyzer Include="@(ReferenceCopyLocalAssemblies)" Condition=" |
31 | 32 | $([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('System.IdentityModel', StringComparison.OrdinalIgnoreCase)) Or
|
32 | 33 | $([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('Microsoft.IdentityModel', StringComparison.OrdinalIgnoreCase)) Or
|
33 | 34 | $([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('System.Text', StringComparison.OrdinalIgnoreCase)) Or
|
34 | 35 | $([MSBuild]::ValueOrDefault('%(FileName)', '').StartsWith('Humanizer', StringComparison.OrdinalIgnoreCase))"
|
35 | 36 | />
|
36 | 37 | </ItemGroup>
|
| 38 | + |
| 39 | + <ItemGroup> |
| 40 | + <UniqueCandidateAnalyzer Include="@(CandidateAnalyzer -> Distinct())" /> |
| 41 | + <UniqueCandidateAnalyzer> |
| 42 | + <NetStandard>$([MSBuild]::ValueOrDefault('%(FullPath)', '').Replace('net6.0', 'netstandard2.0').Replace('net8.0', 'netstandard2.0').Replace('netcoreapp3.1', 'netstandard2.0'))</NetStandard> |
| 43 | + </UniqueCandidateAnalyzer> |
| 44 | + <!-- Analyzer assemblies cannot target anything other than NS2.0 --> |
| 45 | + <Analyzer Include="@(UniqueCandidateAnalyzer -> '%(NetStandard)')" Condition="Exists('%(UniqueCandidateAnalyzer.NetStandard)')"/> |
| 46 | + </ItemGroup> |
37 | 47 | </Target>
|
38 | 48 |
|
39 | 49 | </Project>
|
0 commit comments