-
Notifications
You must be signed in to change notification settings - Fork 0
/
Directory.Build.props
77 lines (68 loc) · 3.33 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
<Project>
<PropertyGroup>
<NetStandardVersion>netstandard2.1</NetStandardVersion>
<NetCoreAppVersion>net5.0</NetCoreAppVersion>
<NetCorePackageVersion>5.0.0</NetCorePackageVersion>
<EFCorePackageVersion>5.0.0</EFCorePackageVersion>
<LangVersion>8.0</LangVersion>
<Configurations>Debug;Release</Configurations>
<ResolveNuGetPackages>true</ResolveNuGetPackages>
</PropertyGroup>
<!-- NuGet packaging-related stuff -->
<PropertyGroup>
<IsPackable>false</IsPackable>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<Company>CODECAVE LLC</Company>
<Authors>CODECAVE LLC</Authors>
<Copyright>Copyright © $([System.DateTime]::Now.ToString(yyyy)) CODECAVE LLC - All Rights Reserved</Copyright>
<NeutralLanguage>en</NeutralLanguage>
</PropertyGroup>
<!-- Output-related settings -->
<PropertyGroup>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<AppendTargetFrameworkToOutputPath Condition="'$(TargetFrameworks)' == ''">false</AppendTargetFrameworkToOutputPath>
<AppendRuntimeIdentifierToOutputPath>true</AppendRuntimeIdentifierToOutputPath>
<SolutionDir Condition="'$(SolutionDir)'==''">$(MSBuildThisFileDirectory)</SolutionDir>
<OutputPath>$(SolutionDir)\bin\$(Configuration)\</OutputPath>
</PropertyGroup>
<!-- Some tweaks for Unit Test projects, e.g. xUnit -->
<PropertyGroup>
<IsTestProject Condition="'$(IsTestProject)' == ''">$(MSBuildProjectName.Contains('.Test'))</IsTestProject>
</PropertyGroup>
<PropertyGroup Condition="'$(IsTestProject)' == 'true'">
<!-- Changing output path for xUnit tests, so it won't break actual compiled code by shipping its Newtonsoft.Json v9.0.0 -->
<OutputPath>bin\$(Configuration)\</OutputPath>
<!-- Mark the project as being a test project -->
<SonarQubeTestProject>true</SonarQubeTestProject>
</PropertyGroup>
<!-- Coverage-related settings -->
<PropertyGroup>
<CollectCoverage>true</CollectCoverage>
<CoverletOutputFormat>opencover</CoverletOutputFormat>
<CoverletOutput>$(SolutionDir)/tests/coverage/</CoverletOutput>
</PropertyGroup>
<!-- Docker-related settings -->
<PropertyGroup Condition="Exists('$(SolutionDir)\docker-compose.dcproj') And '$(IsTestProject)' != 'true'">
<Configurations>$(Configurations);DebugDocker</Configurations>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<DockerfileContext>..\..</DockerfileContext>
<DockerComposeProjectPath>$(DockerfileContext)\docker-compose.dcproj</DockerComposeProjectPath>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.Contains('Docker'))">
<OutputPath>bin\Debug\</OutputPath>
</PropertyGroup>
<!-- Debug-related settings -->
<PropertyGroup>
<Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.Contains('Debug'))">
<DefineConstants>$(DefineConstants);DEBUG</DefineConstants>
<DebugSymbols>true</DebugSymbols>
<DebugType>portable</DebugType>
</PropertyGroup>
<PropertyGroup Condition="'$(OS)' == 'Windows_NT' And $(TargetFramework.Contains('net4'))">
<DebugType>full</DebugType>
</PropertyGroup>
<Import Project="$(SolutionDir)\CodeAnalyzers.targets" Condition="Exists('$(SolutionDir)\CodeAnalyzers.targets')" />
</Project>