changeset 3655 | f9ee66e780f4 |
parent 3654 | bb3c0eeec3cb |
child 3658 | 8ee720a52b7d |
3654:bb3c0eeec3cb | 3655:f9ee66e780f4 |
---|---|
29 It is used both when working on the tools in NetBeans, and when building |
29 It is used both when working on the tools in NetBeans, and when building |
30 JDK itself, in which case it is invoked from the wrapper Makefile. |
30 JDK itself, in which case it is invoked from the wrapper Makefile. |
31 --> |
31 --> |
32 |
32 |
33 <project name="langtools" default="build" basedir=".."> |
33 <project name="langtools" default="build" basedir=".."> |
34 |
34 |
35 <!-- Force full debuginfo for javac if the debug.classfiles |
35 <!-- Force full debuginfo for javac if the debug.classfiles |
36 property is set. This must be BEFORE the include of |
36 property is set. This must be BEFORE the include of |
37 build.properties because it sets javac.debuglevel. --> |
37 build.properties because it sets javac.debuglevel. --> |
38 <condition property="javac.debuglevel" value="source,lines,vars"> |
38 <condition property="javac.debuglevel" value="source,lines,vars"> |
39 <equals arg1="${debug.classfiles}" arg2="true"/> |
39 <equals arg1="${debug.classfiles}" arg2="true"/> |
47 <!-- Use this location for customizations common to all OpenJDK langtools workspaces --> |
47 <!-- Use this location for customizations common to all OpenJDK langtools workspaces --> |
48 <property file="${user.home}/.openjdk/${ant.project.name}-build.properties"/> |
48 <property file="${user.home}/.openjdk/${ant.project.name}-build.properties"/> |
49 |
49 |
50 <!-- Use this location for customizations common to all OpenJDK workspaces --> |
50 <!-- Use this location for customizations common to all OpenJDK workspaces --> |
51 <property file="${user.home}/.openjdk/build.properties"/> |
51 <property file="${user.home}/.openjdk/build.properties"/> |
52 |
52 |
53 <!-- Convenient shorthands for standard locations within the workspace. --> |
53 <!-- Convenient shorthands for standard locations within the workspace. --> |
54 <property name="build.dir" location="build"/> |
54 <property name="build.dir" location="build"/> |
55 <property name="build.bootstrap.dir" location="${build.dir}/bootstrap"/> |
55 <property name="build.bootstrap.dir" location="${build.dir}/bootstrap"/> |
56 <property name="build.coverage.dir" location="${build.dir}/coverage"/> |
56 <property name="build.coverage.dir" location="${build.dir}/coverage"/> |
57 <property name="build.classes.dir" location="${build.dir}/classes"/> |
57 <property name="build.classes.dir" location="${build.dir}/classes"/> |
58 <property name="build.gensrc.dir" location="${build.dir}/gensrc"/> |
58 <property name="build.gensrc.dir" location="${build.dir}/gensrc"/> |
73 |
73 |
74 <!-- java.marker is set to a marker file to check for within a Java install dir. |
74 <!-- java.marker is set to a marker file to check for within a Java install dir. |
75 The best file to check for across Solaris/Linux/Windows/MacOS is one of the |
75 The best file to check for across Solaris/Linux/Windows/MacOS is one of the |
76 executables; regrettably, that is OS-specific. --> |
76 executables; regrettably, that is OS-specific. --> |
77 <condition property="java.marker" value="bin/java"> |
77 <condition property="java.marker" value="bin/java"> |
78 <os family="unix"/> |
78 <os family="unix"/> |
79 </condition> |
79 </condition> |
80 <condition property="java.marker" value="bin/java.exe"> |
80 <condition property="java.marker" value="bin/java.exe"> |
81 <os family="windows"/> |
81 <os family="windows"/> |
82 </condition> |
82 </condition> |
83 |
83 |
84 <!-- Standard property values, if not overriden by earlier settings. --> |
84 <!-- Standard property values, if not overriden by earlier settings. --> |
85 <property file="${make.dir}/build.properties"/> |
85 <property file="${make.dir}/build.properties"/> |
86 |
86 |
87 <!-- launcher.java is used in the launcher scripts provided to run |
87 <!-- launcher.java is used in the launcher scripts provided to run |
88 the tools' jar files. If it has not already been set, then |
88 the tools' jar files. If it has not already been set, then |
89 default it to use ${target.java.home}, if available, otherwise |
89 default it to use ${target.java.home}, if available, otherwise |
90 quietly default to simply use "java". --> |
90 quietly default to simply use "java". --> |
91 <condition property="launcher.java" |
91 <condition property="launcher.java" |
92 value="${target.java.home}/bin/java" else="java"> |
92 value="${target.java.home}/bin/java" else="java"> |
93 <isset property="target.java.home"/> |
93 <isset property="target.java.home"/> |
94 </condition> |
94 </condition> |
95 |
95 |
96 |
96 |
97 <!-- Standard target to build deliverables for JDK build. --> |
97 <!-- Standard target to build deliverables for JDK build. --> |
98 |
98 |
99 <target name="build" depends="build-bootstrap-tools,build-all-classes"> |
99 <target name="build" depends="build-bootstrap-tools,build-all-classes"> |
100 <copy todir="${dist.dir}/bootstrap"> |
100 <copy todir="${dist.dir}/bootstrap"> |
101 <fileset dir="${build.bootstrap.dir}" includes="bin/,lib/"/> |
101 <fileset dir="${build.bootstrap.dir}" includes="bin/,lib/"/> |
105 </chmod> |
105 </chmod> |
106 <mkdir dir="${dist.lib.dir}"/> |
106 <mkdir dir="${dist.lib.dir}"/> |
107 <jar file="${dist.lib.dir}/classes.jar" basedir="${build.classes.dir}"/> |
107 <jar file="${dist.lib.dir}/classes.jar" basedir="${build.classes.dir}"/> |
108 <zip file="${dist.lib.dir}/src.zip" basedir="${src.classes.dir}"/> |
108 <zip file="${dist.lib.dir}/src.zip" basedir="${src.classes.dir}"/> |
109 </target> |
109 </target> |
110 |
110 |
111 <target name="build-bootstrap-tools" depends="build-bootstrap-javac,build-bootstrap-javadoc,build-bootstrap-doclets,build-bootstrap-javah"/> |
111 <target name="build-bootstrap-tools" depends="build-bootstrap-javac,build-bootstrap-javadoc,build-bootstrap-doclets,build-bootstrap-javah"/> |
112 |
112 |
113 <target name="build-all-tools" depends="build-javac,build-javadoc,build-doclets,build-javah,build-javap,build-apt"/> |
113 <target name="build-all-tools" depends="build-javac,build-javadoc,build-doclets,build-javah,build-javap,build-apt"/> |
114 |
114 |
115 <target name="build-all-classes" depends="build-classes-javac,build-classes-javadoc,build-classes-doclets,build-classes-javah,build-classes-javap,build-classes-apt"/> |
115 <target name="build-all-classes" depends="build-classes-javac,build-classes-javadoc,build-classes-doclets,build-classes-javah,build-classes-javap,build-classes-apt"/> |
116 |
116 |
117 <!-- clean --> |
117 <!-- clean --> |
118 |
118 |
119 <target name="clean" description="Delete all generated files"> |
119 <target name="clean" description="Delete all generated files"> |
120 <delete dir="${build.dir}"/> |
120 <delete dir="${build.dir}"/> |
121 <delete dir="${dist.dir}"/> |
121 <delete dir="${dist.dir}"/> |
122 </target> |
122 </target> |
123 |
123 |
124 <!-- Additional targets for running tools on the build --> |
124 <!-- Additional targets for running tools on the build --> |
125 |
125 |
126 <!-- An alternative for the following would be to do a single jtreg run for all tests. |
126 <target name="jtreg" depends="build-all-tools,-def-jtreg"> |
127 However, that would currently be slower, since we would have to run all the tests |
127 <jtreg-tool name="all" tests="${jtreg.tests}"/> |
128 with samevm="false", since not all test directories currently support samevm="true". --> |
128 </target> |
129 |
129 |
130 <target name="jtreg" depends="jtreg-javac,jtreg-javadoc,jtreg-doclets,jtreg-javah,jtreg-javap,jtreg-apt"/> |
|
131 |
|
132 <target name="findbugs" depends="-def-findbugs,build-all-tools"> |
130 <target name="findbugs" depends="-def-findbugs,build-all-tools"> |
133 <property name="findbugs.reportLevel" value="medium"/> |
131 <property name="findbugs.reportLevel" value="medium"/> |
134 <mkdir dir="${dist.findbugs.dir}"/> |
132 <mkdir dir="${dist.findbugs.dir}"/> |
135 <findbugs |
133 <findbugs |
136 home="${findbugs.home}" |
134 home="${findbugs.home}" |
168 <property name="coverage.classpath" refid="coverage.classpath"/> |
166 <property name="coverage.classpath" refid="coverage.classpath"/> |
169 <mkdir dir="${build.coverage.dir}/classes"/> |
167 <mkdir dir="${build.coverage.dir}/classes"/> |
170 <delete file="${build.coverage.dir}/cobertura.ser"/> |
168 <delete file="${build.coverage.dir}/cobertura.ser"/> |
171 <cobertura-instrument todir="${build.coverage.dir}/classes" |
169 <cobertura-instrument todir="${build.coverage.dir}/classes" |
172 datafile="${build.coverage.dir}/cobertura.ser"> |
170 datafile="${build.coverage.dir}/cobertura.ser"> |
173 <fileset dir="${build.classes.dir}" |
171 <fileset dir="${build.classes.dir}" |
174 includes="**/*.class" excludes="**/resources/*.class"/> |
172 includes="**/*.class" excludes="**/resources/*.class"/> |
175 </cobertura-instrument> |
173 </cobertura-instrument> |
176 </target> |
174 </target> |
177 |
175 |
178 <target name="coverage-report" depends="-def-cobertura"> |
176 <target name="coverage-report" depends="-def-cobertura"> |
179 <mkdir dir="${dist.coverage.dir}"/> |
177 <mkdir dir="${dist.coverage.dir}"/> |
180 <cobertura-report |
178 <cobertura-report |
181 srcdir="${src.classes.dir}" |
179 srcdir="${src.classes.dir}" |
182 destdir="${dist.coverage.dir}" |
180 destdir="${dist.coverage.dir}" |
183 datafile="${build.coverage.dir}/cobertura.ser"/> |
181 datafile="${build.coverage.dir}/cobertura.ser"/> |
184 <cobertura-report |
182 <cobertura-report |
185 format="xml" |
183 format="xml" |
186 srcdir="${src.classes.dir}" |
184 srcdir="${src.classes.dir}" |
187 destdir="${dist.coverage.dir}" |
185 destdir="${dist.coverage.dir}" |
188 datafile="${build.coverage.dir}/cobertura.ser"/> |
186 datafile="${build.coverage.dir}/cobertura.ser"/> |
189 </target> |
187 </target> |
190 |
188 |
191 <!-- javac targets --> |
189 <!-- javac targets --> |
192 |
190 |
193 <target name="build-bootstrap-javac" depends="-def-build-bootstrap-tool"> |
191 <target name="build-bootstrap-javac" depends="-def-build-bootstrap-tool"> |
194 <build-bootstrap-tool name="javac" includes="${javac.includes}"/> |
192 <build-bootstrap-tool name="javac" includes="${javac.includes}"/> |
195 </target> |
193 </target> |
196 |
194 |
197 <target name="build-classes-javac" depends="build-bootstrap-javac"> |
195 <target name="build-classes-javac" depends="build-bootstrap-javac"> |
198 <build-classes name="javac" includes="${javac.includes}"/> |
196 <build-classes name="javac" includes="${javac.includes}"/> |
199 </target> |
197 </target> |
200 |
198 |
201 <target name="build-javac" depends="build-bootstrap-javac"> |
199 <target name="build-javac" depends="build-bootstrap-javac"> |
202 <build-tool name="javac" includes="${javac.includes}"/> |
200 <build-tool name="javac" includes="${javac.includes}"/> |
203 </target> |
201 </target> |
204 |
202 |
205 <target name="javadoc-javac" depends="build-javac,-def-javadoc-tool"> |
203 <target name="javadoc-javac" depends="build-javac,-def-javadoc-tool"> |
206 <javadoc-tool name="javac" includes="${javac.includes}" options="${javadoc.jls3.option}"/> |
204 <javadoc-tool name="javac" includes="${javac.includes}" options="${javadoc.jls3.option}"/> |
207 </target> |
205 </target> |
208 |
206 |
209 <target name="jtreg-javac" depends="build-javac,-def-jtreg"> |
207 <target name="jtreg-javac" depends="build-javac,-def-jtreg"> |
210 <jtreg-tool name="javac" samevm="true" tests="${javac.tests}"/> |
208 <jtreg-tool name="javac" tests="${javac.tests}"/> |
211 </target> |
209 </target> |
212 |
210 |
213 <target name="findbugs-javac" depends="build-javac,-def-findbugs"> |
211 <target name="findbugs-javac" depends="build-javac,-def-findbugs"> |
214 <findbugs-tool name="javac"/> |
212 <findbugs-tool name="javac"/> |
215 </target> |
213 </target> |
216 |
214 |
217 <target name="javac" depends="build-javac,jtreg-javac,findbugs-javac"/> |
215 <target name="javac" depends="build-javac,jtreg-javac,findbugs-javac"/> |
218 |
216 |
219 <!-- javadoc targets --> |
217 <!-- javadoc targets --> |
220 |
218 |
221 <target name="build-bootstrap-javadoc" depends="build-bootstrap-javac"> |
219 <target name="build-bootstrap-javadoc" depends="build-bootstrap-javac"> |
222 <build-bootstrap-tool name="javadoc" |
220 <build-bootstrap-tool name="javadoc" |
223 includes="${javadoc.includes}" |
221 includes="${javadoc.includes}" |
224 jarclasspath="javac.jar doclets.jar"/> |
222 jarclasspath="javac.jar doclets.jar"/> |
225 </target> |
223 </target> |
226 |
224 |
227 <target name="build-classes-javadoc" depends="build-classes-javac"> |
225 <target name="build-classes-javadoc" depends="build-classes-javac"> |
228 <build-classes name="javadoc" includes="${javadoc.includes}"/> |
226 <build-classes name="javadoc" includes="${javadoc.includes}"/> |
229 </target> |
227 </target> |
230 |
228 |
231 <target name="build-javadoc" depends="build-javac"> |
229 <target name="build-javadoc" depends="build-javac"> |
232 <build-tool name="javadoc" |
230 <build-tool name="javadoc" |
233 includes="${javadoc.includes}" |
231 includes="${javadoc.includes}" |
234 jarclasspath="javac.jar doclets.jar"/> |
232 jarclasspath="javac.jar doclets.jar"/> |
235 </target> |
233 </target> |
236 |
234 |
237 <target name="javadoc-javadoc" depends="build-javadoc,-def-javadoc-tool"> |
235 <target name="javadoc-javadoc" depends="build-javadoc,-def-javadoc-tool"> |
238 <javadoc-tool name="javadoc" includes="${javadoc.includes}"/> |
236 <javadoc-tool name="javadoc" includes="${javadoc.includes}"/> |
239 </target> |
237 </target> |
240 |
238 |
241 <target name="jtreg-javadoc" depends="build-javadoc,-def-jtreg"> |
239 <target name="jtreg-javadoc" depends="build-javadoc,-def-jtreg"> |
242 <jtreg-tool name="javadoc" samevm="false" tests="${javadoc.tests}"/> |
240 <jtreg-tool name="javadoc" tests="${javadoc.tests}"/> |
243 </target> |
241 </target> |
244 |
242 |
245 <target name="findbugs-javadoc" depends="build-javadoc,-def-findbugs"> |
243 <target name="findbugs-javadoc" depends="build-javadoc,-def-findbugs"> |
246 <findbugs-tool name="javadoc"/> |
244 <findbugs-tool name="javadoc"/> |
247 </target> |
245 </target> |
248 |
246 |
249 <target name="javadoc" depends="build-javadoc,jtreg-javadoc,findbugs-javadoc"/> |
247 <target name="javadoc" depends="build-javadoc,jtreg-javadoc,findbugs-javadoc"/> |
250 |
248 |
251 <!-- doclets targets --> |
249 <!-- doclets targets --> |
252 |
250 |
253 <target name="build-bootstrap-doclets" depends="build-bootstrap-javadoc,-def-build-bootstrap-jar"> |
251 <target name="build-bootstrap-doclets" depends="build-bootstrap-javadoc,-def-build-bootstrap-jar"> |
254 <build-bootstrap-jar name="doclets" |
252 <build-bootstrap-jar name="doclets" |
255 includes="${doclets.includes}" |
253 includes="${doclets.includes}" |
256 jarmainclass="com.sun.tools.javadoc.Main" |
254 jarmainclass="com.sun.tools.javadoc.Main" |
257 jarclasspath="javadoc.jar"/> |
255 jarclasspath="javadoc.jar"/> |
258 </target> |
256 </target> |
259 |
257 |
260 <target name="build-classes-doclets" depends="build-classes-javadoc"> |
258 <target name="build-classes-doclets" depends="build-classes-javadoc"> |
261 <build-classes name="doclets" includes="${doclets.includes}"/> |
259 <build-classes name="doclets" includes="${doclets.includes}"/> |
262 </target> |
260 </target> |
263 |
261 |
264 <target name="build-doclets" depends="build-javadoc"> |
262 <target name="build-doclets" depends="build-javadoc"> |
265 <!-- just jar, no bin for doclets --> |
263 <!-- just jar, no bin for doclets --> |
266 <build-jar name="doclets" |
264 <build-jar name="doclets" |
267 includes="${doclets.includes}" |
265 includes="${doclets.includes}" |
268 jarclasspath="javadoc.jar"/> |
266 jarclasspath="javadoc.jar"/> |
269 </target> |
267 </target> |
270 |
268 |
271 <!-- (no javadoc for doclets) --> |
269 <!-- (no javadoc for doclets) --> |
272 |
270 |
273 <target name="jtreg-doclets" depends="build-doclets,-def-jtreg"> |
271 <target name="jtreg-doclets" depends="build-doclets,-def-jtreg"> |
274 <jtreg-tool name="doclets" samevm="false" tests="${doclets.tests}"/> |
272 <jtreg-tool name="doclets" tests="${doclets.tests}"/> |
275 </target> |
273 </target> |
276 |
274 |
277 <target name="findbugs-doclets" depends="build-doclets,-def-findbugs"> |
275 <target name="findbugs-doclets" depends="build-doclets,-def-findbugs"> |
278 <findbugs-tool name="doclets"/> |
276 <findbugs-tool name="doclets"/> |
279 </target> |
277 </target> |
280 |
278 |
281 <target name="doclets" depends="build-doclets,jtreg-doclets,findbugs-doclets"/> |
279 <target name="doclets" depends="build-doclets,jtreg-doclets,findbugs-doclets"/> |
282 |
280 |
283 <!-- javah targets --> |
281 <!-- javah targets --> |
284 |
282 |
285 <target name="build-bootstrap-javah" depends="build-bootstrap-javadoc"> |
283 <target name="build-bootstrap-javah" depends="build-bootstrap-javadoc"> |
286 <build-bootstrap-tool name="javah" |
284 <build-bootstrap-tool name="javah" |
287 includes="${javah.includes}" |
285 includes="${javah.includes}" |
288 jarclasspath="javadoc.jar doclets.jar javac.jar"/> |
286 jarclasspath="javadoc.jar doclets.jar javac.jar"/> |
289 </target> |
287 </target> |
290 |
288 |
291 <target name="build-javah" depends="build-javadoc"> |
289 <target name="build-javah" depends="build-javadoc"> |
292 <build-tool name="javah" |
290 <build-tool name="javah" |
293 includes="${javah.includes}" |
291 includes="${javah.includes}" |
294 jarclasspath="javadoc.jar doclets.jar javac.jar"/> |
292 jarclasspath="javadoc.jar doclets.jar javac.jar"/> |
295 </target> |
293 </target> |
296 |
294 |
297 <target name="build-classes-javah" depends="build-classes-javadoc"> |
295 <target name="build-classes-javah" depends="build-classes-javadoc"> |
298 <build-classes name="javah" includes="${javah.includes}"/> |
296 <build-classes name="javah" includes="${javah.includes}"/> |
299 </target> |
297 </target> |
300 |
298 |
301 <!-- (no javadoc for javah) --> |
299 <!-- (no javadoc for javah) --> |
302 |
300 |
303 <target name="jtreg-javah" depends="build-javah,-def-jtreg"> |
301 <target name="jtreg-javah" depends="build-javah,-def-jtreg"> |
304 <jtreg-tool name="javah" samevm="true" tests="${javah.tests}"/> |
302 <jtreg-tool name="javah" tests="${javah.tests}"/> |
305 </target> |
303 </target> |
306 |
304 |
307 <target name="findbugs-javah" depends="build-javah,-def-findbugs"> |
305 <target name="findbugs-javah" depends="build-javah,-def-findbugs"> |
308 <findbugs-tool name="javah"/> |
306 <findbugs-tool name="javah"/> |
309 </target> |
307 </target> |
310 |
308 |
311 <target name="javah" depends="build-javah,jtreg-javah,findbugs-javah"/> |
309 <target name="javah" depends="build-javah,jtreg-javah,findbugs-javah"/> |
312 |
310 |
313 <!-- javap targets --> |
311 <!-- javap targets --> |
314 |
312 |
315 <target name="build-bootstrap-javap" depends="-def-build-bootstrap-tool"> |
313 <target name="build-bootstrap-javap" depends="-def-build-bootstrap-tool"> |
316 <build-bootstrap-tool name="javap" |
314 <build-bootstrap-tool name="javap" |
317 includes="${javap.includes}" |
315 includes="${javap.includes}" |
318 jarmainclass="sun.tools.javap.Main"/> |
316 jarmainclass="sun.tools.javap.Main"/> |
319 </target> |
317 </target> |
320 |
318 |
321 <target name="build-classes-javap" depends="build-classes-javac"> |
319 <target name="build-classes-javap" depends="build-classes-javac"> |
322 <build-classes name="javap" includes="${javap.includes}"/> |
320 <build-classes name="javap" includes="${javap.includes}"/> |
323 </target> |
321 </target> |
324 |
322 |
325 <target name="build-javap" depends="build-javac"> |
323 <target name="build-javap" depends="build-javac"> |
326 <build-tool name="javap" |
324 <build-tool name="javap" |
327 includes="${javap.includes}" |
325 includes="${javap.includes}" |
328 jarmainclass="com.sun.tools.javap.Main" |
326 jarmainclass="com.sun.tools.javap.Main" |
329 jarclasspath="javac.jar"/> |
327 jarclasspath="javac.jar"/> |
330 </target> |
328 </target> |
331 |
329 |
332 <!-- (no javadoc for javap) --> |
330 <!-- (no javadoc for javap) --> |
333 |
331 |
334 <target name="jtreg-javap" depends="build-javap,-def-jtreg"> |
332 <target name="jtreg-javap" depends="build-javap,-def-jtreg"> |
335 <jtreg-tool name="javap" samevm="true" tests="${javap.tests}"/> |
333 <jtreg-tool name="javap" tests="${javap.tests}"/> |
336 </target> |
334 </target> |
337 |
335 |
338 <target name="findbugs-javap" depends="build-javap,-def-findbugs"> |
336 <target name="findbugs-javap" depends="build-javap,-def-findbugs"> |
339 <findbugs-tool name="javap"/> |
337 <findbugs-tool name="javap"/> |
340 </target> |
338 </target> |
341 |
339 |
342 <target name="javap" depends="build-javap,jtreg-javap,findbugs-javap"/> |
340 <target name="javap" depends="build-javap,jtreg-javap,findbugs-javap"/> |
343 |
341 |
344 <!-- apt targets --> |
342 <!-- apt targets --> |
345 |
343 |
346 <target name="build-bootstrap-apt" depends="build-bootstrap-javac"> |
344 <target name="build-bootstrap-apt" depends="build-bootstrap-javac"> |
347 <build-bootstrap-tool name="apt" |
345 <build-bootstrap-tool name="apt" |
348 includes="${apt.includes}" |
346 includes="${apt.includes}" |
349 jarclasspath="javac.jar"/> |
347 jarclasspath="javac.jar"/> |
350 </target> |
348 </target> |
351 |
349 |
352 <target name="build-apt" depends="build-javac"> |
350 <target name="build-apt" depends="build-javac"> |
353 <build-tool name="apt" |
351 <build-tool name="apt" |
354 includes="${apt.includes}" |
352 includes="${apt.includes}" |
355 jarclasspath="javac.jar"/> |
353 jarclasspath="javac.jar"/> |
356 </target> |
354 </target> |
357 |
355 |
358 <target name="build-classes-apt" depends="build-classes-javac"> |
356 <target name="build-classes-apt" depends="build-classes-javac"> |
359 <build-classes name="apt" includes="${apt.includes}"/> |
357 <build-classes name="apt" includes="${apt.includes}"/> |
360 </target> |
358 </target> |
361 |
359 |
362 <target name="javadoc-apt" depends="build-apt,-def-javadoc-tool"> |
360 <target name="javadoc-apt" depends="build-apt,-def-javadoc-tool"> |
363 <javadoc-tool name="apt" includes="${apt.includes}"/> |
361 <javadoc-tool name="apt" includes="${apt.includes}"/> |
364 </target> |
362 </target> |
365 |
363 |
366 |
364 |
367 <target name="jtreg-apt" depends="build-apt,-def-jtreg"> |
365 <target name="jtreg-apt" depends="build-apt,-def-jtreg"> |
368 <jtreg-tool name="apt" samevm="true" tests="${apt.tests}"/> |
366 <jtreg-tool name="apt" tests="${apt.tests}"/> |
369 </target> |
367 </target> |
370 |
368 |
371 <target name="findbugs-apt" depends="build-apt,-def-findbugs"> |
369 <target name="findbugs-apt" depends="build-apt,-def-findbugs"> |
372 <findbugs-tool name="apt"/> |
370 <findbugs-tool name="apt"/> |
373 </target> |
371 </target> |
374 |
372 |
375 <target name="apt" depends="build-apt,jtreg-apt,findbugs-apt"/> |
373 <target name="apt" depends="build-apt,jtreg-apt,findbugs-apt"/> |
376 |
374 |
377 <!-- Check targets --> |
375 <!-- Check targets --> |
378 |
376 |
379 <target name="-check-boot.java.home" depends="-def-check"> |
377 <target name="-check-boot.java.home" depends="-def-check"> |
380 <check name="bootstrap java" property="boot.java.home" marker="${java.marker}"/> |
378 <check name="bootstrap java" property="boot.java.home" marker="${java.marker}"/> |
381 </target> |
379 </target> |
382 |
380 |
383 <target name="-check-target.java.home" depends="-def-check"> |
381 <target name="-check-target.java.home" depends="-def-check"> |
384 <check name="target java" property="target.java.home" marker="${java.marker}"/> |
382 <check name="target java" property="target.java.home" marker="${java.marker}"/> |
385 </target> |
383 </target> |
386 |
384 |
387 <target name="-check-cobertura.home" depends="-def-check"> |
385 <target name="-check-cobertura.home" depends="-def-check"> |
388 <check name="cobertura" property="cobertura.home" marker="cobertura.jar"/> |
386 <check name="cobertura" property="cobertura.home" marker="cobertura.jar"/> |
389 </target> |
387 </target> |
390 |
388 |
391 <target name="-check-findbugs.home" depends="-def-check"> |
389 <target name="-check-findbugs.home" depends="-def-check"> |
392 <check name="findbugs" property="findbugs.home" marker="lib/findbugs.jar"/> |
390 <check name="findbugs" property="findbugs.home" marker="lib/findbugs.jar"/> |
393 </target> |
391 </target> |
394 |
392 |
395 <target name="-check-jtreg.home" depends="-def-check"> |
393 <target name="-check-jtreg.home" depends="-def-check"> |
396 <check name="jtreg" property="jtreg.home" marker="lib/jtreg.jar"/> |
394 <check name="jtreg" property="jtreg.home" marker="lib/jtreg.jar"/> |
397 </target> |
395 </target> |
398 |
396 |
399 <!-- Ant macro and preset defs --> |
397 <!-- Ant macro and preset defs --> |
400 |
398 |
401 <target name="-def-build-tool" depends="-def-build-jar"> |
399 <target name="-def-build-tool" depends="-def-build-jar"> |
402 <macrodef name="build-tool"> |
400 <macrodef name="build-tool"> |
403 <attribute name="name"/> |
401 <attribute name="name"/> |
433 javac.target="@{javac.target}" |
431 javac.target="@{javac.target}" |
434 /> |
432 /> |
435 <mkdir dir="@{bin.dir}"/> |
433 <mkdir dir="@{bin.dir}"/> |
436 <copy file="${src.bin.dir}/launcher.sh-template" tofile="@{bin.dir}/@{name}"> |
434 <copy file="${src.bin.dir}/launcher.sh-template" tofile="@{bin.dir}/@{name}"> |
437 <filterset begintoken="#" endtoken="#"> |
435 <filterset begintoken="#" endtoken="#"> |
438 <filter token="PROGRAM" value="@{name}"/> |
436 <filter token="PROGRAM" value="@{name}"/> |
439 <filter token="TARGET_JAVA" value="@{java}"/> |
437 <filter token="TARGET_JAVA" value="@{java}"/> |
440 </filterset> |
438 </filterset> |
441 </copy> |
439 </copy> |
442 <chmod file="@{bin.dir}/@{name}" perm="ugo+rx"/> |
440 <chmod file="@{bin.dir}/@{name}" perm="ugo+rx"/> |
443 </sequential> |
441 </sequential> |
444 </macrodef> |
442 </macrodef> |
475 /> |
473 /> |
476 <mkdir dir="@{lib.dir}"/> |
474 <mkdir dir="@{lib.dir}"/> |
477 <jar destfile="@{lib.dir}/@{name}.jar" |
475 <jar destfile="@{lib.dir}/@{name}.jar" |
478 basedir="@{classes.dir}" |
476 basedir="@{classes.dir}" |
479 includes="@{includes}"> |
477 includes="@{includes}"> |
480 <manifest> |
478 <manifest> |
481 <attribute name="Main-Class" value="@{jarmainclass}"/> |
479 <attribute name="Main-Class" value="@{jarmainclass}"/> |
482 <attribute name="Class-Path" value="@{jarclasspath}"/> |
480 <attribute name="Class-Path" value="@{jarclasspath}"/> |
483 </manifest> |
481 </manifest> |
484 </jar> |
482 </jar> |
485 </sequential> |
483 </sequential> |
538 excludes="@{excludes}" |
536 excludes="@{excludes}" |
539 sourcepath="" |
537 sourcepath="" |
540 includeAntRuntime="no" |
538 includeAntRuntime="no" |
541 source="@{javac.source}" |
539 source="@{javac.source}" |
542 target="@{javac.target}" |
540 target="@{javac.target}" |
543 debug="${javac.debug}" |
541 debug="${javac.debug}" |
544 debuglevel="${javac.debuglevel}"> |
542 debuglevel="${javac.debuglevel}"> |
545 <compilerarg value="-J-Xbootclasspath/p:@{javac.bootclasspath}"/> |
543 <compilerarg value="-J-Xbootclasspath/p:@{javac.bootclasspath}"/> |
546 <compilerarg value="-Xbootclasspath/p:@{classes.dir}"/> |
544 <compilerarg value="-Xbootclasspath/p:@{classes.dir}"/> |
547 <compilerarg line="${javac.no.jdk.warnings}"/> |
545 <compilerarg line="${javac.no.jdk.warnings}"/> |
548 <compilerarg line="${javac.version.opt}"/> |
546 <compilerarg line="${javac.version.opt}"/> |
549 <compilerarg line="${javac.lint.opts}"/> |
547 <compilerarg line="${javac.lint.opts}"/> |
550 </javac> |
548 </javac> |
551 <copy todir="@{classes.dir}"> |
549 <copy todir="@{classes.dir}"> |
552 <fileset dir="${src.classes.dir}"> |
550 <fileset dir="${src.classes.dir}"> |
553 <include name="@{includes}"/> |
551 <include name="@{includes}"/> |
554 <exclude name="**/*.java"/> |
552 <exclude name="**/*.java"/> |
555 <exclude name="**/*.properties"/> |
553 <exclude name="**/*.properties"/> |
556 <exclude name="**/*-template"/> |
554 <exclude name="**/*-template"/> |
557 <exclude name="**/package.html"/> |
555 <exclude name="**/package.html"/> |
558 </fileset> |
556 </fileset> |
559 </copy> |
557 </copy> |
560 </sequential> |
558 </sequential> |
561 </macrodef> |
559 </macrodef> |
562 </target> |
560 </target> |
563 |
561 |
564 <target name="-def-build-bootstrap-tool" depends="-check-boot.java.home,-def-build-tool"> |
562 <target name="-def-build-bootstrap-tool" depends="-check-boot.java.home,-def-build-tool"> |
565 <presetdef name="build-bootstrap-tool"> |
563 <presetdef name="build-bootstrap-tool"> |
566 <build-tool |
564 <build-tool |
567 javac.source="${boot.javac.source}" |
565 javac.source="${boot.javac.source}" |
568 javac.target="${boot.javac.target}" |
566 javac.target="${boot.javac.target}" |
574 javac.bootclasspath="" |
572 javac.bootclasspath="" |
575 release="${bootstrap.release}" |
573 release="${bootstrap.release}" |
576 full.version="${bootstrap.full.version}"/> |
574 full.version="${bootstrap.full.version}"/> |
577 </presetdef> |
575 </presetdef> |
578 </target> |
576 </target> |
579 |
577 |
580 <target name="-def-build-bootstrap-jar" depends="-def-build-jar"> |
578 <target name="-def-build-bootstrap-jar" depends="-def-build-jar"> |
581 <presetdef name="build-bootstrap-jar"> |
579 <presetdef name="build-bootstrap-jar"> |
582 <build-jar |
580 <build-jar |
583 javac.source="${boot.javac.source}" |
581 javac.source="${boot.javac.source}" |
584 javac.target="${boot.javac.target}" |
582 javac.target="${boot.javac.target}" |
588 javac.bootclasspath="" |
586 javac.bootclasspath="" |
589 release="${bootstrap.release}" |
587 release="${bootstrap.release}" |
590 full.version="${bootstrap.full.version}"/> |
588 full.version="${bootstrap.full.version}"/> |
591 </presetdef> |
589 </presetdef> |
592 </target> |
590 </target> |
593 |
591 |
594 <target name="-def-pcompile"> |
592 <target name="-def-pcompile"> |
595 <mkdir dir="${build.toolclasses.dir}"/> |
593 <mkdir dir="${build.toolclasses.dir}"/> |
596 <javac fork="true" |
594 <javac fork="true" |
597 executable="${boot.java.home}/bin/javac" |
595 executable="${boot.java.home}/bin/javac" |
598 srcdir="${make.tools.dir}/CompileProperties" |
596 srcdir="${make.tools.dir}/CompileProperties" |
599 destdir="${build.toolclasses.dir}/" |
597 destdir="${build.toolclasses.dir}/" |
600 classpath="${ant.home}/lib/ant.jar"/> |
598 classpath="${ant.home}/lib/ant.jar"/> |
601 <taskdef name="pcompile" |
599 <taskdef name="pcompile" |
602 classname="CompilePropertiesTask" |
600 classname="CompilePropertiesTask" |
603 classpath="${build.toolclasses.dir}/"/> |
601 classpath="${build.toolclasses.dir}/"/> |
604 </target> |
602 </target> |
605 |
603 |
606 <target name="-def-javadoc-tool" depends="-check-target.java.home"> |
604 <target name="-def-javadoc-tool" depends="-check-target.java.home"> |
607 <macrodef name="javadoc-tool"> |
605 <macrodef name="javadoc-tool"> |
608 <attribute name="name"/> |
606 <attribute name="name"/> |
609 <attribute name="includes"/> |
607 <attribute name="includes"/> |
610 <attribute name="options" default=""/> |
608 <attribute name="options" default=""/> |
612 <sequential> |
610 <sequential> |
613 <property name="javadoc.options" value=""/> <!-- default, can be overridden per user or per project --> |
611 <property name="javadoc.options" value=""/> <!-- default, can be overridden per user or per project --> |
614 <!-- Note: even with this default value, includes |
612 <!-- Note: even with this default value, includes |
615 from src.classes.dir get javadoc'd; see packageset below --> |
613 from src.classes.dir get javadoc'd; see packageset below --> |
616 <property name="javadoc.packagenames" value="none"/> <!-- default, can be overridden per user or per project --> |
614 <property name="javadoc.packagenames" value="none"/> <!-- default, can be overridden per user or per project --> |
617 <javadoc |
615 <javadoc |
618 executable="${target.java.home}/bin/javadoc" |
616 executable="${target.java.home}/bin/javadoc" |
619 destdir="${build.javadoc.dir}/@{name}" |
617 destdir="${build.javadoc.dir}/@{name}" |
620 source="@{source}" |
618 source="@{source}" |
621 windowtitle="UNOFFICIAL" |
619 windowtitle="UNOFFICIAL" |
622 failonerror="true" |
620 failonerror="true" |
623 use="true" |
621 use="true" |
624 author="false" |
622 author="false" |
625 version="false" |
623 version="false" |
626 packagenames="${javadoc.packagenames}" > |
624 packagenames="${javadoc.packagenames}" > |
627 <header><![CDATA[<strong>Unofficial Javadoc</strong> generated from developer sources for preview purposes only]]></header> |
625 <header><![CDATA[<strong>Unofficial Javadoc</strong> generated from developer sources for preview purposes only]]></header> |
628 <arg line="@{options}"/> |
626 <arg line="@{options}"/> |
629 <bootclasspath> |
627 <bootclasspath> |
648 </packageset> |
646 </packageset> |
649 </javadoc> |
647 </javadoc> |
650 </sequential> |
648 </sequential> |
651 </macrodef> |
649 </macrodef> |
652 </target> |
650 </target> |
653 |
651 |
654 <target name="-def-jtreg" unless="jtreg.defined" depends="-check-jtreg.home"> |
652 <target name="-def-jtreg" unless="jtreg.defined" depends="-check-jtreg.home,-check-target.java.home"> |
655 <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"> |
653 <taskdef name="jtreg" classname="com.sun.javatest.regtest.Main$$Ant"> |
656 <classpath> |
654 <classpath> |
657 <pathelement location="${jtreg.home}/lib/jtreg.jar"/> |
655 <pathelement location="${jtreg.home}/lib/jtreg.jar"/> |
658 <pathelement location="${jtreg.home}/lib/javatest.jar"/> |
656 <pathelement location="${jtreg.home}/lib/javatest.jar"/> |
659 </classpath> |
657 </classpath> |
660 </taskdef> |
658 </taskdef> |
661 <macrodef name="jtreg-tool"> |
659 <macrodef name="jtreg-tool"> |
662 <attribute name="name"/> |
660 <attribute name="name"/> |
663 <attribute name="tests"/> |
661 <attribute name="tests"/> |
664 <attribute name="jdk" default="${target.java.home}"/> |
662 <attribute name="jdk" default="${target.java.home}"/> |
665 <attribute name="samevm" default="false"/> |
663 <attribute name="samevm" default="true"/> |
666 <attribute name="verbose" default="summary"/> |
664 <attribute name="verbose" default="summary"/> |
667 <attribute name="options" default=""/> |
665 <attribute name="options" default=""/> |
668 <attribute name="keywords" default="-keywords:!ignore"/> |
666 <attribute name="keywords" default="-keywords:!ignore"/> |
669 <attribute name="jpda.jvmargs" default=""/> |
667 <attribute name="jpda.jvmargs" default=""/> |
670 <sequential> |
668 <sequential> |
671 <property name="coverage.options" value=""/> <!-- default --> |
669 <property name="coverage.options" value=""/> <!-- default --> |
672 <property name="coverage.classpath" value=""/> <!-- default --> |
670 <property name="coverage.classpath" value=""/> <!-- default --> |
673 <jtreg |
671 <jtreg |
674 dir="${test.dir}" |
672 dir="${test.dir}" |
675 workDir="${build.jtreg.dir}/@{name}/work" |
673 workDir="${build.jtreg.dir}/@{name}/work" |
676 reportDir="${build.jtreg.dir}/@{name}/report" |
674 reportDir="${build.jtreg.dir}/@{name}/report" |
677 jdk="@{jdk}" |
675 jdk="@{jdk}" |
678 samevm="@{samevm}" verbose="@{verbose}" |
676 samevm="@{samevm}" verbose="@{verbose}" |
679 failonerror="false" resultproperty="jtreg.@{name}.result" |
677 failonerror="false" resultproperty="jtreg.@{name}.result" |
680 javacoptions="-g" |
678 javacoptions="-g" |
681 vmoptions="${coverage.options} -Xbootclasspath/p:${coverage.classpath}:${build.classes.dir} @{jpda.jvmargs}"> |
679 vmoptions="${coverage.options} -Xbootclasspath/p:${coverage.classpath}:${build.classes.dir} @{jpda.jvmargs}"> |
682 <arg line="@{keywords}"/> |
680 <arg line="@{keywords}"/> |
683 <arg line="@{options}"/> |
681 <arg line="@{options}"/> |
684 <arg line="@{tests}"/> |
682 <arg line="@{tests}"/> |
685 </jtreg> |
683 </jtreg> |
686 <!-- the next two properties are for convenience, when only |
684 <!-- the next two properties are for convenience, when only |
687 a single instance of jtreg will be invoked. --> |
685 a single instance of jtreg will be invoked. --> |
688 <condition property="jtreg.passed"> |
686 <condition property="jtreg.passed"> |
689 <equals arg1="${jtreg.@{name}.result}" arg2="0"/> |
687 <equals arg1="${jtreg.@{name}.result}" arg2="0"/> |
690 </condition> |
688 </condition> |
691 <property name="jtreg.report" value="${build.jtreg.dir}/@{name}/report"/> |
689 <property name="jtreg.report" value="${build.jtreg.dir}/@{name}/report"/> |
699 <fileset dir="${cobertura.home}"> |
697 <fileset dir="${cobertura.home}"> |
700 <include name="cobertura.jar"/> |
698 <include name="cobertura.jar"/> |
701 <include name="lib/**/*.jar"/> |
699 <include name="lib/**/*.jar"/> |
702 </fileset> |
700 </fileset> |
703 </path> |
701 </path> |
704 <taskdef classpathref="cobertura.classpath" resource="tasks.properties"/> |
702 <taskdef classpathref="cobertura.classpath" resource="tasks.properties"/> |
705 </target> |
703 </target> |
706 |
704 |
707 <target name="-def-findbugs" unless="findbugs.defined" depends="-check-findbugs.home"> |
705 <target name="-def-findbugs" unless="findbugs.defined" depends="-check-findbugs.home"> |
708 <taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"> |
706 <taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"> |
709 <classpath> |
707 <classpath> |
710 <pathelement location="${findbugs.home}/lib/findbugs.jar"/> |
708 <pathelement location="${findbugs.home}/lib/findbugs.jar"/> |
711 </classpath> |
709 </classpath> |
714 <attribute name="name"/> |
712 <attribute name="name"/> |
715 <attribute name="output" default="emacs"/> |
713 <attribute name="output" default="emacs"/> |
716 <attribute name="outputFile" default=""/> |
714 <attribute name="outputFile" default=""/> |
717 <attribute name="reportLevel" default="high"/> |
715 <attribute name="reportLevel" default="high"/> |
718 <sequential> |
716 <sequential> |
719 <findbugs |
717 <findbugs |
720 home="${findbugs.home}" |
718 home="${findbugs.home}" |
721 output="@{output}" |
719 output="@{output}" |
722 outputFile="@{outputFile}" |
720 outputFile="@{outputFile}" |
723 reportLevel="@{reportLevel}" |
721 reportLevel="@{reportLevel}" |
724 failOnError="false" |
722 failOnError="false" |
735 </findbugs> |
733 </findbugs> |
736 </sequential> |
734 </sequential> |
737 </macrodef> |
735 </macrodef> |
738 <property name="findbugs.defined" value="true"/> |
736 <property name="findbugs.defined" value="true"/> |
739 </target> |
737 </target> |
740 |
738 |
741 <target name="-def-check"> |
739 <target name="-def-check"> |
742 <macrodef name="check"> |
740 <macrodef name="check"> |
743 <attribute name="name"/> |
741 <attribute name="name"/> |
744 <attribute name="property"/> |
742 <attribute name="property"/> |
745 <attribute name="marker"/> |
743 <attribute name="marker"/> |
761 </sequential> |
759 </sequential> |
762 </macrodef> |
760 </macrodef> |
763 </target> |
761 </target> |
764 |
762 |
765 <!-- standard JDK target --> |
763 <!-- standard JDK target --> |
766 <target name="sanity" |
764 <target name="sanity" |
767 description="display settings of congiguration values"> |
765 description="display settings of congiguration values"> |
768 <echo level="info">ant.home = ${ant.home}</echo> |
766 <echo level="info">ant.home = ${ant.home}</echo> |
769 <echo level="info">boot.java.home = ${boot.java.home}</echo> |
767 <echo level="info">boot.java.home = ${boot.java.home}</echo> |
770 <echo level="info">target.java.home = ${target.java.home}</echo> |
768 <echo level="info">target.java.home = ${target.java.home}</echo> |
771 <echo level="info">jtreg.home = ${jtreg.home}</echo> |
769 <echo level="info">jtreg.home = ${jtreg.home}</echo> |
777 <diagnostics/> |
775 <diagnostics/> |
778 </target> |
776 </target> |
779 |
777 |
780 <target name="post-sanity" depends="-def-jtreg,sanity,build" |
778 <target name="post-sanity" depends="-def-jtreg,sanity,build" |
781 description="perform basic validation after a standard build"> |
779 description="perform basic validation after a standard build"> |
782 <jtreg |
780 <jtreg |
783 dir="make/test" |
781 dir="make/test" |
784 workDir="${build.jtreg.dir}/post-sanity/work" |
782 workDir="${build.jtreg.dir}/post-sanity/work" |
785 reportDir="${build.jtreg.dir}/post-sanity/report" |
783 reportDir="${build.jtreg.dir}/post-sanity/report" |
786 jdk="${target.java.home}" |
784 jdk="${target.java.home}" |
787 verbose="summary" |
785 verbose="summary" |
788 failonerror="false" resultproperty="jtreg.post-sanity.result"> |
786 failonerror="false" resultproperty="jtreg.post-sanity.result"> |
789 </jtreg> |
787 </jtreg> |
790 |
788 |
791 </target> |
789 </target> |
792 </project> |
790 </project> |
793 |
791 |