-
Notifications
You must be signed in to change notification settings - Fork 0
/
Directory.Build.props
44 lines (42 loc) · 1.98 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
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- Set default properties for all projects (can be overridden per project) -->
<PropertyGroup>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TestLibrary>false</TestLibrary>
<NitroxLibrary>false</NitroxLibrary>
<UnityModLibrary>false</UnityModLibrary>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DefineConstants>TRACE;DEBUG</DefineConstants>
<OutputPath>bin\Debug\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DefineConstants>TRACE;RELEASE</DefineConstants>
<OutputPath>bin\Release\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch($(MSBuildProjectName), '^Nitrox.*$'))">
<NitroxLibrary>true</NitroxLibrary>
</PropertyGroup>
<PropertyGroup Condition="'$(NitroxLibrary)' == 'true' and '$(MSBuildProjectName)' != 'NitroxModel' and '$(MSBuildProjectName)' != 'NitroxServer' and '$(MSBuildProjectName)' != 'Nitrox.Bootloader'">
<UnityModLibrary>true</UnityModLibrary>
</PropertyGroup>
<PropertyGroup Condition="'$(MSBuildProjectName)' == 'NitroxTest'">
<TestLibrary>true</TestLibrary>
</PropertyGroup>
<ItemGroup>
<!-- Include common assembly info if project name starts with Nitrox -->
<Compile Condition="'$(NitroxLibrary)' == 'true'" Include="$(SolutionDir)AssemblyInfoCommon.cs">
<Link>Properties\AssemblyInfoCommon.cs</Link>
</Compile>
</ItemGroup>
<Choose>
<When Condition="'$(UnityModLibrary)' == 'true'">
<ItemGroup>
<ProjectReference Include="$(SolutionDir)NitroxModel\NitroxModel.csproj">
<Name>NitroxModel</Name>
</ProjectReference>
</ItemGroup>
</When>
</Choose>
</Project>