forked from sakeproject/sake
-
Notifications
You must be signed in to change notification settings - Fork 1
/
_build.shade
43 lines (32 loc) · 1.13 KB
/
_build.shade
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
@{/*
build
Executes msbuild or xbuild to compile your project or solution
projectFile=''
Required. Path to the project or solution file to build.
configuration='Release'
Determines which configuration to use when building.
outputDir=''
Directs all compiler outputs into the target path.
extra=''
Additional commandline parameters for msbuild or xbuild
*/}
default configuration='Release'
default outputDir=''
default extra=''
use import="Environment"
use assembly="Microsoft.Build.Utilities.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
use namespace="Microsoft.Build.Utilities"
var buildProgram=''
@{
if (IsMono)
{
buildProgram = "xbuild";
}
else
{
buildProgram = ToolLocationHelper.GetPathToDotNetFrameworkFile("msbuild.exe",TargetDotNetFrameworkVersion.Version40);
}
}
var OutDirProperty=''
set OutDirProperty='OutDir=${outputDir}${Path.DirectorySeparatorChar};' if='!string.IsNullOrWhiteSpace(outputDir)'
exec program="${buildProgram}" commandline='${projectFile} "/p:${OutDirProperty}Configuration=${configuration}" ${extra}'