Mercurial > hg > mercurial
comparison mercurial.xml @ 5:8e6ade135483
first version of build.xml
author | Pavel.Sher |
---|---|
date | Mon, 14 Jul 2008 20:09:42 +0400 |
parents | |
children | c05869fe20af |
comparison
equal
deleted
inserted
replaced
3:dbf4236e7fb7 | 5:8e6ade135483 |
---|---|
1 <?xml version="1.0" encoding="ISO-8859-1"?> | |
2 <project name="mercurial" default="all"> | |
3 | |
4 | |
5 <property file="mercurial.properties"/> | |
6 <!-- Uncomment the following property if no tests compilation is needed --> | |
7 <!-- | |
8 <property name="skip.tests" value="true"/> | |
9 --> | |
10 | |
11 <!-- Compiler options --> | |
12 | |
13 <property name="compiler.debug" value="on"/> | |
14 <property name="compiler.generate.no.warnings" value="off"/> | |
15 <property name="compiler.args" value=""/> | |
16 <property name="compiler.max.memory" value="128m"/> | |
17 <patternset id="ignored.files"> | |
18 <exclude name="**/CVS/**"/> | |
19 <exclude name="**/SCCS/**"/> | |
20 <exclude name="**/RCS/**"/> | |
21 <exclude name="**/rcs/**"/> | |
22 <exclude name="**/.DS_Store/**"/> | |
23 <exclude name="**/.svn/**"/> | |
24 <exclude name="**/vssver.scc/**"/> | |
25 <exclude name="**/vssver2.scc/**"/> | |
26 <exclude name="**/.sbas/**"/> | |
27 <exclude name="**/.IJI.*/**"/> | |
28 <exclude name="**/.pyc/**"/> | |
29 <exclude name="**/.pyo/**"/> | |
30 </patternset> | |
31 <patternset id="compiler.resources"> | |
32 <include name="**/?*.properties"/> | |
33 <include name="**/?*.xml"/> | |
34 <include name="**/?*.gif"/> | |
35 <include name="**/?*.png"/> | |
36 <include name="**/?*.jpeg"/> | |
37 <include name="**/?*.jpg"/> | |
38 <include name="**/?*.html"/> | |
39 <include name="**/?*.dtd"/> | |
40 <include name="**/?*.tld"/> | |
41 </patternset> | |
42 | |
43 | |
44 <!-- Project Libraries --> | |
45 | |
46 <path id="library.teamcity-openapi.classpath"> | |
47 <pathelement location="${basedir}/mercurial/lib/server-openapi.jar"/> | |
48 <pathelement location="${basedir}/mercurial/lib/web-openapi.jar"/> | |
49 <pathelement location="${basedir}/mercurial/lib/server-model.jar"/> | |
50 <pathelement location="${basedir}/mercurial/lib/common.jar"/> | |
51 <pathelement location="${basedir}/mercurial/lib/utils.jar"/> | |
52 <pathelement location="${basedir}/mercurial/lib/patches.jar"/> | |
53 </path> | |
54 | |
55 <path id="library.idea-openapi.classpath"> | |
56 <pathelement location="${basedir}/mercurial/lib/annotations.jar"/> | |
57 <pathelement location="${basedir}/mercurial/lib/openapi.jar"/> | |
58 <pathelement location="${basedir}/mercurial/lib/util.jar"/> | |
59 </path> | |
60 | |
61 <path id="library.teamcity-testssupport.classpath"> | |
62 <pathelement location="${basedir}/mercurial-tests/lib/patches-tests.jar"/> | |
63 <pathelement location="${basedir}/mercurial-tests/lib/test.jar"/> | |
64 </path> | |
65 | |
66 <path id="library.junit.classpath"> | |
67 <pathelement location="${basedir}/mercurial-tests/lib/junit-3.8.1.jar"/> | |
68 </path> | |
69 | |
70 <path id="library.testng.classpath"> | |
71 <pathelement location="${basedir}/mercurial-tests/lib/testng-5.7-jdk15.jar"/> | |
72 </path> | |
73 | |
74 <path id="library.jmock.classpath"> | |
75 <pathelement location="${basedir}/mercurial-tests/lib/jmock-SNAPSHOT.jar"/> | |
76 </path> | |
77 | |
78 <path id="library.teamcity-impl.classpath"> | |
79 <pathelement location="${basedir}/mercurial/lib/patches-impl.jar"/> | |
80 </path> | |
81 | |
82 <path id="library.log4j.classpath"> | |
83 <pathelement location="${basedir}/mercurial/lib/log4j-1.2.12.jar"/> | |
84 </path> | |
85 | |
86 <path id="library.gnu_trove.classpath"> | |
87 <pathelement location="${basedir}/mercurial/lib/trove4j.jar"/> | |
88 </path> | |
89 | |
90 | |
91 <!-- Application Server Libraries --> | |
92 | |
93 <!-- Modules --> | |
94 | |
95 | |
96 <!-- Module main --> | |
97 | |
98 <dirname property="module.main.basedir" file="${ant.file}"/> | |
99 | |
100 | |
101 | |
102 <property name="compiler.args.main" value="${compiler.args}"/> | |
103 | |
104 <property name="main.output.dir" value="${module.main.basedir}/out/production/main"/> | |
105 <property name="main.testoutput.dir" value="${module.main.basedir}/out/test/main"/> | |
106 | |
107 <path id="main.module.bootclasspath"> | |
108 <!-- Paths to be included in compilation bootclasspath --> | |
109 </path> | |
110 | |
111 <path id="main.module.classpath"/> | |
112 | |
113 <path id="main.runtime.module.classpath"> | |
114 <pathelement location="${main.output.dir}"/> | |
115 <pathelement location="${main.testoutput.dir}"/> | |
116 </path> | |
117 | |
118 | |
119 <patternset id="excluded.from.module.main"> | |
120 <patternset refid="ignored.files"/> | |
121 </patternset> | |
122 | |
123 <patternset id="excluded.from.compilation.main"> | |
124 <patternset refid="excluded.from.module.main"/> | |
125 </patternset> | |
126 | |
127 | |
128 <target name="compile.module.main" depends="compile.module.main.production,compile.module.main.tests" description="Compile module main"/> | |
129 | |
130 <target name="compile.module.main.production" description="Compile module main; production classes"/> | |
131 | |
132 <target name="compile.module.main.tests" depends="compile.module.main.production" description="compile module main; test classes" unless="skip.tests"/> | |
133 | |
134 <target name="clean.module.main" description="cleanup module"> | |
135 <delete dir="${main.output.dir}"/> | |
136 <delete dir="${main.testoutput.dir}"/> | |
137 </target> | |
138 | |
139 | |
140 <!-- Module mercurial --> | |
141 | |
142 <dirname property="module.mercurial.basedir" file="${ant.file}"/> | |
143 | |
144 | |
145 | |
146 <property name="compiler.args.mercurial" value="${compiler.args}"/> | |
147 | |
148 <property name="mercurial.output.dir" value="${module.mercurial.basedir}/mercurial/classes"/> | |
149 <property name="mercurial.testoutput.dir" value="${module.mercurial.basedir}/mercurial/classes"/> | |
150 | |
151 <path id="mercurial.module.bootclasspath"> | |
152 <!-- Paths to be included in compilation bootclasspath --> | |
153 </path> | |
154 | |
155 <path id="mercurial.module.classpath"> | |
156 <path refid="library.teamcity-openapi.classpath"/> | |
157 <path refid="library.idea-openapi.classpath"/> | |
158 <path refid="library.teamcity-impl.classpath"/> | |
159 <path refid="library.log4j.classpath"/> | |
160 <path refid="library.gnu_trove.classpath"/> | |
161 </path> | |
162 | |
163 <path id="mercurial.runtime.module.classpath"> | |
164 <pathelement location="${mercurial.output.dir}"/> | |
165 <path refid="library.teamcity-openapi.classpath"/> | |
166 <path refid="library.idea-openapi.classpath"/> | |
167 <path refid="library.teamcity-impl.classpath"/> | |
168 <path refid="library.log4j.classpath"/> | |
169 <path refid="library.gnu_trove.classpath"/> | |
170 </path> | |
171 | |
172 | |
173 <patternset id="excluded.from.module.mercurial"> | |
174 <patternset refid="ignored.files"/> | |
175 </patternset> | |
176 | |
177 <patternset id="excluded.from.compilation.mercurial"> | |
178 <patternset refid="excluded.from.module.mercurial"/> | |
179 </patternset> | |
180 | |
181 <path id="mercurial.module.sourcepath"> | |
182 <dirset dir="${module.mercurial.basedir}/mercurial"> | |
183 <include name="resources/buildServerResources"/> | |
184 <include name="src"/> | |
185 </dirset> | |
186 </path> | |
187 | |
188 | |
189 <target name="compile.module.mercurial" depends="compile.module.mercurial.production,compile.module.mercurial.tests" description="Compile module mercurial"/> | |
190 | |
191 <target name="compile.module.mercurial.production" description="Compile module mercurial; production classes"> | |
192 <mkdir dir="${mercurial.output.dir}"/> | |
193 <javac destdir="${mercurial.output.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true"> | |
194 <compilerarg line="${compiler.args.mercurial}"/> | |
195 <bootclasspath refid="mercurial.module.bootclasspath"/> | |
196 <classpath refid="mercurial.module.classpath"/> | |
197 <src refid="mercurial.module.sourcepath"/> | |
198 <patternset refid="excluded.from.compilation.mercurial"/> | |
199 </javac> | |
200 | |
201 <copy todir="${mercurial.output.dir}"> | |
202 <fileset dir="${module.mercurial.basedir}/mercurial/resources/buildServerResources"> | |
203 <patternset refid="compiler.resources"/> | |
204 <type type="file"/> | |
205 </fileset> | |
206 <fileset dir="${module.mercurial.basedir}/mercurial/src"> | |
207 <patternset refid="compiler.resources"/> | |
208 <type type="file"/> | |
209 </fileset> | |
210 </copy> | |
211 </target> | |
212 | |
213 <target name="compile.module.mercurial.tests" depends="compile.module.mercurial.production" description="compile module mercurial; test classes" unless="skip.tests"/> | |
214 | |
215 <target name="clean.module.mercurial" description="cleanup module"> | |
216 <delete dir="${mercurial.output.dir}"/> | |
217 <delete dir="${mercurial.testoutput.dir}"/> | |
218 </target> | |
219 | |
220 | |
221 <!-- Module mercurial-tests --> | |
222 | |
223 <dirname property="module.mercurial-tests.basedir" file="${ant.file}"/> | |
224 | |
225 | |
226 | |
227 <property name="compiler.args.mercurial-tests" value="${compiler.args}"/> | |
228 | |
229 <property name="mercurial-tests.output.dir" value="${module.mercurial-tests.basedir}/mercurial-tests/classes"/> | |
230 <property name="mercurial-tests.testoutput.dir" value="${module.mercurial-tests.basedir}/mercurial-tests/classes"/> | |
231 | |
232 <path id="mercurial-tests.module.bootclasspath"> | |
233 <!-- Paths to be included in compilation bootclasspath --> | |
234 </path> | |
235 | |
236 <path id="mercurial-tests.module.classpath"> | |
237 <pathelement location="${mercurial.output.dir}"/> | |
238 <path refid="library.teamcity-openapi.classpath"/> | |
239 <path refid="library.idea-openapi.classpath"/> | |
240 <path refid="library.teamcity-impl.classpath"/> | |
241 <path refid="library.log4j.classpath"/> | |
242 <path refid="library.gnu_trove.classpath"/> | |
243 <path refid="library.teamcity-testssupport.classpath"/> | |
244 <path refid="library.junit.classpath"/> | |
245 <path refid="library.testng.classpath"/> | |
246 <path refid="library.jmock.classpath"/> | |
247 </path> | |
248 | |
249 <path id="mercurial-tests.runtime.module.classpath"> | |
250 <pathelement location="${mercurial-tests.output.dir}"/> | |
251 <pathelement location="${mercurial.output.dir}"/> | |
252 <path refid="library.teamcity-openapi.classpath"/> | |
253 <path refid="library.idea-openapi.classpath"/> | |
254 <path refid="library.teamcity-impl.classpath"/> | |
255 <path refid="library.log4j.classpath"/> | |
256 <path refid="library.gnu_trove.classpath"/> | |
257 <path refid="library.teamcity-testssupport.classpath"/> | |
258 <path refid="library.junit.classpath"/> | |
259 <path refid="library.testng.classpath"/> | |
260 <path refid="library.jmock.classpath"/> | |
261 </path> | |
262 | |
263 | |
264 <patternset id="excluded.from.module.mercurial-tests"> | |
265 <patternset refid="ignored.files"/> | |
266 </patternset> | |
267 | |
268 <patternset id="excluded.from.compilation.mercurial-tests"> | |
269 <patternset refid="excluded.from.module.mercurial-tests"/> | |
270 </patternset> | |
271 | |
272 <path id="mercurial-tests.module.sourcepath"> | |
273 <dirset dir="${module.mercurial-tests.basedir}/mercurial-tests"> | |
274 <include name="src"/> | |
275 </dirset> | |
276 </path> | |
277 | |
278 | |
279 <target name="compile.module.mercurial-tests" depends="compile.module.mercurial-tests.production,compile.module.mercurial-tests.tests" description="Compile module mercurial-tests"/> | |
280 | |
281 <target name="compile.module.mercurial-tests.production" depends="compile.module.mercurial" description="Compile module mercurial-tests; production classes"> | |
282 <mkdir dir="${mercurial-tests.output.dir}"/> | |
283 <javac destdir="${mercurial-tests.output.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}" memorymaximumsize="${compiler.max.memory}" fork="true"> | |
284 <compilerarg line="${compiler.args.mercurial-tests}"/> | |
285 <bootclasspath refid="mercurial-tests.module.bootclasspath"/> | |
286 <classpath refid="mercurial-tests.module.classpath"/> | |
287 <src refid="mercurial-tests.module.sourcepath"/> | |
288 <patternset refid="excluded.from.compilation.mercurial-tests"/> | |
289 </javac> | |
290 | |
291 <copy todir="${mercurial-tests.output.dir}"> | |
292 <fileset dir="${module.mercurial-tests.basedir}/mercurial-tests/src"> | |
293 <patternset refid="compiler.resources"/> | |
294 <type type="file"/> | |
295 </fileset> | |
296 </copy> | |
297 </target> | |
298 | |
299 <target name="compile.module.mercurial-tests.tests" depends="compile.module.mercurial-tests.production" description="compile module mercurial-tests; test classes" unless="skip.tests"/> | |
300 | |
301 <target name="clean.module.mercurial-tests" description="cleanup module"> | |
302 <delete dir="${mercurial-tests.output.dir}"/> | |
303 <delete dir="${mercurial-tests.testoutput.dir}"/> | |
304 </target> | |
305 | |
306 <target name="init" description="Build initialization"> | |
307 <!-- Perform any build initialization in this target --> | |
308 </target> | |
309 | |
310 <target name="clean" depends="clean.module.main, clean.module.mercurial, clean.module.mercurial-tests" description="cleanup all"/> | |
311 | |
312 <target name="all" depends="init, clean, compile.module.main, compile.module.mercurial, compile.module.mercurial-tests" description="build all"/> | |
313 </project> |