Repository navigation
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
149 lines (125 loc) · 6.27 KB
/
Copy pathDirectory.Build.props
File metadata and controls
149 lines (125 loc) · 6.27 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
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?xml version="1.0" encoding="UTF-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!-- The version used for all libraries in this project. -->
<Version>0.6.12</Version>
<TargetFramework>net481</TargetFramework>
<LangVersion>preview</LangVersion>
<DebugType>portable</DebugType>
<!-- Generate an XML documentation file so that others can see the doc comments -->
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>CS1591</NoWarn>
<!-- Generate a nuget lockfile so that we can cache stuff in CI -->
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
<ProjectRootDir>$(MSBuildThisFileDirectory)</ProjectRootDir>
<!-- <DefineConstants>DEBUG;SOLVERTRACE</DefineConstants> -->
<!-- Properties used by KSPBuildTools -->
<GameDataSubDir>BackgroundThrust</GameDataSubDir>
<GameDataOutDir>$(ProjectRootDir)\GameData\$(GameDataSubDir)</GameDataOutDir>
<BinariesOutputRelativePath>GameData\$(GameDataSubDir)\Plugins</BinariesOutputRelativePath>
</PropertyGroup>
<Import
Condition=" Exists('$(SolutionDir)/$(SolutionName).props.user') "
Project="$(SolutionDir)/$(SolutionName).props.user" />
<!--
KSPBuildTools relies on these properties. However, they aren't
set when not doing a whole solution build. In that case we make
things work by defining them ourselves.
-->
<PropertyGroup Condition=" '$(SolutionDir)' == '' ">
<SolutionDir>$(ProjectRootDir)</SolutionDir>
<SolutionName>BackgroundThrust</SolutionName>
<SolutionExt>.sln</SolutionExt>
<SolutionFileName>$(SolutionName)$(SolutionExt)</SolutionFileName>
<SolutionPath>$(SolutionDir)/$(SolutionFileName)</SolutionPath>
</PropertyGroup>
<!--
Paths to GameData folders in the dependency set installs.
-->
<PropertyGroup>
<DepSet1>$(ProjectRootDir)/deps/installs/depset1/GameData</DepSet1>
<DepSet2>$(ProjectRootDir)/deps/installs/depset2/GameData</DepSet2>
</PropertyGroup>
<!--
The rest of this here is copied from KSPBuildTools.
We're doing some custom bits with what gets copied to GameData so we
can't quite reuse it.
-->
<PropertyGroup>
<!-- KSP platform-specific paths -->
<!-- The path to the managed directory from the KSP root -->
<ManagedRelativePath Condition="$([MSBuild]::IsOsPlatform('Windows'))">KSP_x64_Data\Managed</ManagedRelativePath>
<ManagedRelativePath Condition="$([MSBuild]::IsOsPlatform('OSX'))">KSP.app\Contents\Resources\Data\Managed</ManagedRelativePath>
<ManagedRelativePath Condition="$([MSBuild]::IsOsPlatform('Linux'))">KSP_Data\Managed</ManagedRelativePath>
<!-- The path to the KSP executable from the KSP root -->
<KSPExecutable Condition="$([MSBuild]::IsOsPlatform('Windows'))">KSP_x64.exe</KSPExecutable>
<KSPExecutable Condition="$([MSBuild]::IsOsPlatform('OSX'))">KSP.app/Contents/MacOS/KSP</KSPExecutable>
<KSPExecutable Condition="$([MSBuild]::IsOsPlatform('Linux'))">KSP.x86_64</KSPExecutable>
<!-- Directories to check for the default steam installation -->
<SteamKSPRoot Condition="($([MSBuild]::IsOsPlatform('Windows')))">C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program</SteamKSPRoot>
<SteamKSPRoot Condition="($([MSBuild]::IsOsPlatform('OSX')))">$(HOME)/Library/Application Support/Steam/steamapps/common/Kerbal Space Program</SteamKSPRoot>
<RepoRootPath>$(ProjectRootDir)</RepoRootPath>
<BinariesOutputRelativePath>GameData/$(GameDataSubDir)/Plugins</BinariesOutputRelativePath>
</PropertyGroup>
<!-- Source KSP root from an env variable in CI -->
<PropertyGroup Condition=" '$(KSPRoot)' == '' And '$(KSP_ROOT)' != '' ">
<KspRoot>$(KSP_ROOT)</KspRoot>
</PropertyGroup>
<PropertyGroup
Condition=" '$(KSPRoot)' == '' And Exists('$(ReferencePath)/$(KSPRootIdentifier)') ">
<!-- Look for KSP install in ReferencePath -->
<KSPRoot>$(ReferencePath)</KSPRoot>
<KSPRootSource>reference path</KSPRootSource>
</PropertyGroup>
<PropertyGroup
Condition=" '$(KSPRoot)' == '' And Exists('$(SteamKSPRoot)/$(KSPRootIdentifier)') ">
<!-- Look for KSP steam install-->
<KSPRoot>$(SteamKSPRoot)</KSPRoot>
<KSPRootSource>steam</KSPRootSource>
</PropertyGroup>
<PropertyGroup>
<!-- Calculate ManagedPath -->
<ManagedPath>$(KSPRoot)/$(ManagedRelativePath)</ManagedPath>
</PropertyGroup>
<!-- set the start action so that you can launch directly from VS -->
<PropertyGroup>
<StartAction>Program</StartAction>
<StartProgram>$(KSPRoot)\$(KSPExecutable)</StartProgram>
<StartWorkingDirectory>$(KSPRoot)</StartWorkingDirectory>
<DebugType>portable</DebugType>
</PropertyGroup>
<ItemGroup>
<Reference Include="$(ManagedPath)\System.dll">
<Name>System (KSP/Mono)</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\System.Core.dll">
<Name>System (KSP/Mono)</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\mscorlib.dll">
<Name>System.Core (KSP/Mono)</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\System.Xml.dll">
<Name>System.Xml (KSP/Mono)</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\UnityEngine*.dll">
<Name>UnityEngine</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\Assembly-CSharp.dll">
<Name>Assembly-CSharp</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\Assembly-CSharp-firstpass.dll">
<Name>Assembly-CSharp-firstpass</Name>
<Private>False</Private>
</Reference>
<Reference Include="$(ManagedPath)\Mono.Cecil.dll">
<Name>Mono.Cecil</Name>
<Private>False</Private>
</Reference>
</ItemGroup>
</Project>