forked from dotnet/winforms
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Directory.Build.props
83 lines (68 loc) · 3.86 KB
/
Directory.Build.props
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<Project>
<Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
<Import Project="$(RepositoryEngineeringDir)CodeStyle.props" />
<Import Project="$(RepositoryEngineeringDir)FacadeAssemblies.props" />
<Import Project="$(RepositoryEngineeringDir)ApiCompatibility\PublicApiAnalyzer.props" />
<Import Project="$(RepositoryEngineeringDir)Test.props" Condition="'$(IsTestProject)' == 'true'"/>
<PropertyGroup>
<TargetFramework>$(NetCurrent)</TargetFramework>
<Product>Microsoft® .NET</Product>
<Copyright>$(CopyrightNetFoundation)</Copyright>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<LangVersion>preview</LangVersion>
<ImplicitUsings>enable</ImplicitUsings>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
<IsAnalyzerProject>false</IsAnalyzerProject>
<IsAnalyzerProject Condition="!$(IsTestProject) and
($(MSBuildProjectName.EndsWith('.Analyzers'))
or $(MSBuildProjectName.EndsWith('.CodeFixes.VisualBasic'))
or $(MSBuildProjectName.EndsWith('.CodeFixes.CSharp'))
or $(MSBuildProjectName.EndsWith('.Analyzers.VisualBasic'))
or $(MSBuildProjectName.EndsWith('.Analyzers.CSharp')))"
>true</IsAnalyzerProject>
</PropertyGroup>
<!--
Set assembly version to align with major and minor version, as for the patches and revisions should be manually
updated per assembly if it is serviced.
Note, any components that aren't exposed as references in the targeting pack (like analyzers/generators) those should rev
so that they can exist SxS, as the compiler relies on different version to change assembly version for caching purposes.
-->
<PropertyGroup Condition="'$(IsAnalyzerProject)' != 'true'">
<AssemblyVersion>$(MajorVersion).$(MinorVersion).0.0</AssemblyVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(IsAnalyzerProject)' == 'true'">
<IsRoslynComponent>true</IsRoslynComponent>
<!-- Mark it so eng/packageContent.targets knows how to correctly package it -->
<DefineConstants>WINFORMS_ANALYZERS</DefineConstants>
</PropertyGroup>
<!-- SDK flipped to 'true' by default https://github.com/dotnet/sdk/pull/12720 -->
<PropertyGroup>
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
</PropertyGroup>
<!-- Allow SourceLink to work for strongly types resource files (SR) by embedding generated files into the PDBs -->
<PropertyGroup>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
</PropertyGroup>
<!-- For the purposes of generating code coverage as part of the build -->
<PropertyGroup Condition="'$(Coverage)' == 'true'">
<!-- Coverlet's PDB check cannot handle deterministic source paths https://github.com/tonerdo/coverlet/issues/363 -->
<DeterministicSourcePaths>false</DeterministicSourcePaths>
<!-- Note: CoverletOutput references $(TargetDir) so it is set in Directory.Build.targets -->
<!-- https://github.com/tonerdo/coverlet/issues/618 -->
<IncludeTestAssembly>true</IncludeTestAssembly>
<CollectCoverage>true</CollectCoverage>
<SingleHit>true</SingleHit>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<CoverletOutputFormat>opencover</CoverletOutputFormat>
<Include></Include>
<Exclude></Exclude>
<!-- Exclude anything tagged with ExcludeFromCodeCoverage !!Avoid using this!! -->
<ExcludeByAttribute>ExcludeFromCodeCoverage</ExcludeByAttribute>
<ExcludeByFile />
</PropertyGroup>
<!-- workaround for package downgrade in Microsoft.NetCore.Platforms -->
<PropertyGroup>
<DisableImplicitNETCorePlatformsReference>true</DisableImplicitNETCorePlatformsReference>
</PropertyGroup>
</Project>