-
Notifications
You must be signed in to change notification settings - Fork 760
/
Copy pathDirectory.Build.props
56 lines (50 loc) · 3 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
<Project>
<PropertyGroup>
<Deterministic>true</Deterministic>
<LangVersion>default</LangVersion>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<!-- NU5104: A stable release of a package should not have a prerelease dependency -->
<NoWarn>$(NoWarn);NU5104</NoWarn>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
<!-- Bubble up all unused usings https://github.com/dotnet/roslyn/issues/41640#issuecomment-985780130 -->
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
<RestoreLockedMode Condition="'$(CI)' == 'true'">true</RestoreLockedMode>
<DisableImplicitNuGetFallbackFolder>true</DisableImplicitNuGetFallbackFolder>
<Copyright>© Microsoft Corporation. All rights reserved.</Copyright>
<!-- disable nuget packing on all projects by default -->
<IsPackable>false</IsPackable>
<!-- WASM projects don't need runtime identifiers and the mono runtime package is missing for win-arm64 -->
<RuntimeIdentifiers Condition=" $(UsingMicrosoftNETSdkBlazorWebAssembly) != 'true' ">win-x64;linux-x64;linux-musl-x64;osx-x64;win-arm64;linux-arm64;osx-arm64</RuntimeIdentifiers>
</PropertyGroup>
<!-- set default framework - each project can still override -->
<PropertyGroup Condition=" '$(MSBuildProjectExtension)' == '.csproj' ">
<TargetFramework>net8.0</TargetFramework>
</PropertyGroup>
<PropertyGroup>
<!-- different projects include the GenerateNotice package via different targets - this allows us to centrally manage the upgrades -->
<GenerateNoticePackageVersion>0.1.45</GenerateNoticePackageVersion>
<!-- settings of the GenerateNotice tool -->
<GenerateNoticeRetryCount>9</GenerateNoticeRetryCount>
<GenerateNoticeBatchSize>100</GenerateNoticeBatchSize>
<!--
use local file for local and GH builds
the ADO builds will set this to false via the environment variables to generate TPN files using the API
-->
<GenerateNoticeUseLocalFile Condition="'$(GenerateNoticeUseLocalFile)'==''">true</GenerateNoticeUseLocalFile>
<!--
do not update the checked-in tpn file by default
we will run a scheduled GH build that will set this to true via environment variables to create PRs with TPN file updates
-->
<GenerateNoticeUpdateLocalFile Condition="'$(GenerateNoticeUpdateLocalFile)'==''">false</GenerateNoticeUpdateLocalFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Nerdbank.GitVersioning" Version="3.7.115" PrivateAssets="All" />
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.4" PrivateAssets="All" />
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="All"/>
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.12.19" PrivateAssets="All"/>
</ItemGroup>
</Project>