-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
49 lines (44 loc) · 2.72 KB
/
Copy pathDirectory.Build.props
File metadata and controls
49 lines (44 loc) · 2.72 KB
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
<Project>
<!--
Set the CI marker FIRST so the warning-as-error properties below see it.
PropertyGroups evaluate in document order, so deferring this until after
those conditions would silently bypass CI warning enforcement on Debug
builds (e.g. `dotnet test` without `-c Release`).
-->
<PropertyGroup Condition="'$(CI)' == 'true'">
<ContinuousIntegrationBuild Condition="'$(ContinuousIntegrationBuild)' == ''">true</ContinuousIntegrationBuild>
</PropertyGroup>
<!-- SDK-owned properties - centralized here, NOT in individual csproj files -->
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Nullable>enable</Nullable>
<ImplicitUsings Condition="'$(ImplicitUsings)' == ''">enable</ImplicitUsings>
<Deterministic Condition="'$(Deterministic)' == ''">true</Deterministic>
<EnableNETAnalyzers Condition="'$(EnableNETAnalyzers)' == ''">true</EnableNETAnalyzers>
<AnalysisLevel Condition="'$(AnalysisLevel)' == ''">latest-all</AnalysisLevel>
<MSBuildTreatWarningsAsErrors Condition="'$(MSBuildTreatWarningsAsErrors)' == '' AND ('$(ContinuousIntegrationBuild)' == 'true' OR '$(Configuration)' == 'Release')">true</MSBuildTreatWarningsAsErrors>
<TreatWarningsAsErrors Condition="'$(TreatWarningsAsErrors)' == '' AND ('$(ContinuousIntegrationBuild)' == 'true' OR '$(Configuration)' == 'Release')">true</TreatWarningsAsErrors>
<EnforceCodeStyleInBuild Condition="'$(EnforceCodeStyleInBuild)' == '' AND ('$(ContinuousIntegrationBuild)' == 'true' OR '$(Configuration)' == 'Release')">true</EnforceCodeStyleInBuild>
</PropertyGroup>
<!--
Centralize build output to artifacts/ for most projects.
Exception: eng/ projects need local bin/obj for NuGet pack paths.
-->
<PropertyGroup Condition="!$(MSBuildProjectDirectory.Contains('eng'))">
<ArtifactsPath>$(MSBuildThisFileDirectory)artifacts/</ArtifactsPath>
<BaseOutputPath>$(ArtifactsPath)bin/$(MSBuildProjectName)/</BaseOutputPath>
<BaseIntermediateOutputPath>$(ArtifactsPath)obj/$(MSBuildProjectName)/</BaseIntermediateOutputPath>
</PropertyGroup>
<!--
This repo's own projects use Microsoft.NET.Sdk directly, not ANcpLua.NET.Sdk,
so the SDK's Common.props EditorConfigFiles injection doesn't run. Pull in
the canonical SDK-shipped editorconfigs so this repo eats its own dog food.
-->
<PropertyGroup>
<EnableEditorConfigDogfooding Condition="'$(EnableEditorConfigDogfooding)' == ''">true</EnableEditorConfigDogfooding>
</PropertyGroup>
<ItemGroup Condition="'$(EnableEditorConfigDogfooding)' == 'true'">
<EditorConfigFiles Include="$(MSBuildThisFileDirectory)src\Config\*.editorconfig"
Exclude="$(MSBuildThisFileDirectory)src\Config\ANcpLua.NET.Sdk*.editorconfig" />
</ItemGroup>
</Project>