main
1<project name="spec.dox" default="run">
2 <property name="nant.settings.currentframework" value="net-3.5" />
3
4 <property name="base.dir" value="${directory::get-parent-directory( project::get-base-directory() )}" />
5 <property name="build.dir" value="${base.dir}\build" />
6 <property name="build.tools.dir" value="${build.dir}\tools" />
7 <property name="build.lib.dir" value="${build.dir}\lib" />
8 <property name="build.compile.dir" value="${build.dir}\compile" />
9 <property name="build.res.dir" value="${build.dir}\res" />
10
11 <property name="product.dir" value="${base.dir}/product" />
12
13 <property name="name.to.compile.to" value="${project::get-name()}.exe"/>
14
15 <include buildfile="project.test.build"/>
16 <include buildfile="local.properties.xml"/>
17
18 <target name="clean.up">
19 <exec program="taskkill.exe" commandline="/f /im:notepad.exe /FI "STATUS eq RUNNING"" />
20 <delete dir="${build.compile.dir}" />
21 <mkdir dir="${build.compile.dir}" />
22 </target>
23
24 <target name="compile" depends="clean.up">
25 <csc target="exe" output="${build.compile.dir}\${name.to.compile.to}" debug="${debug}" win32icon="${build.res.dir}\mokhan.ico" platform="${platform}">
26 <sources basedir="${product.dir}">
27 <include name="**\*.cs" />
28 <exclude name="**\AssemblyInfo.cs" />
29 <exclude name="**\*Specs.cs" />
30 <exclude name="${product.dir}\Spec.Dox\Test\**\*.cs" />
31 </sources>
32 <references>
33 <include name="${build.lib.dir}\app\**\*.dll" />
34 </references>
35 </csc>
36 </target>
37
38 <target name="expand.template.file">
39 <copy file="${target}.template" tofile="${target}" overwrite="true" >
40 <filterchain>
41 <replacetokens>
42 <token key="log.level" value="${log.level}" />
43 <token key="debug" value="${debug}" />
44 </replacetokens>
45 </filterchain>
46 </copy>
47 </target>
48
49 <target name="copy.dependencies">
50 <copy todir="${build.compile.dir}" flatten="true">
51 <fileset basedir="${build.lib.dir}\app">
52 <include name="**/*.dll" />
53 </fileset>
54 </copy>
55 </target>
56
57 <target name="deploy" depends="compile, copy.dependencies">
58
59 </target>
60
61 <target name="generate.report" depends="deploy">
62 <property name="build.compile.dir" value="${build.compile.dir}\test" />
63 <call target="test.compile" />
64
65 <property name="build.compile.dir" value="${build.dir}\compile" />
66 <exec
67 program="${build.compile.dir}\${name.to.compile.to}"
68 commandline="${build.compile.dir}\test\${test.output.dll} TestAttribute"
69 />
70 </target>
71
72 <target name="run" depends="generate.report">
73 <echo message="${path.to.browser} ${build.compile.dir}\report.html" />
74 <exec
75 program="${path.to.browser}"
76 commandline=""${build.compile.dir}\test\report.html""
77 />
78 </target>
79
80</project>