main
1<?xml version="1.0" encoding="utf-8" ?>
2 <project name="gorilla.mvc">
3 <property name="project.name" value="${project::get-name()}" />
4 <property name="nant.settings.currentframework" value="net-3.5" />
5
6 <property name="base.dir" value="${directory::get-parent-directory(project::get-base-directory())}" />
7 <property name="product.dir" value="${base.dir}\product" />
8
9 <property name="build.dir" value="${base.dir}\build" />
10 <property name="thirdparty.dir" value="${base.dir}\third.party" />
11
12 <property name="build.tools.dir" value="${thirdparty.dir}\tools" />
13 <property name="build.lib.dir" value="${thirdparty.dir}\lib" />
14 <property name="build.compile.dir" value="${build.dir}\compile" />
15 <property name="build.artifacts.dir" value="${build.dir}\artifacts" />
16
17 <property name="app.output" value="${project.name}.dll" />
18
19 <include buildfile="project.test.build" />
20 <include buildfile="project.test.reports.build" />
21 <include buildfile="local.properties.xml" />
22
23 <target name="clean">
24 <exec program="taskkill.exe" commandline="/f /im ${editor.exe} /FI "STATUS eq RUNNING"" />
25 <delete dir="${build.compile.dir}" />
26 </target>
27
28 <target name="init" depends="clean">
29 <mkdir dir="${build.compile.dir}" />
30 </target>
31
32 <target name="app.compile" depends="init">
33 <csc output="${build.compile.dir}\${app.output}" debug="${debug}" target="library">
34 <sources>
35 <include name="${product.dir}\**\*.cs" />
36 <exclude name="${product.dir}\**\AssemblyInfo.cs" />
37 <exclude name="${product.dir}\**\*Specs.cs" />
38 </sources>
39 <references>
40 <include name="${build.lib.dir}\**\*.dll" />
41 <include name="${build.artifacts.dir}\**\*.dll" />
42 </references>
43 </csc>
44 </target>
45
46 <target name="expand.template.file">
47 <copy file="${target}.template" tofile="${target}" overwrite="true">
48 <filterchain>
49 <replacetokens>
50 <token key="log.level" value="${log.level}" />
51 <token key="assembly.title" value="${assembly.title}" />
52 <token key="assembly.description" value="${assembly.description}" />
53 <token key="assembly.company" value="${assembly.company}" />
54 <token key="assembly.version" value="${assembly.version}" />
55 </replacetokens>
56 </filterchain>
57 </copy>
58 </target>
59
60</project>