A RAMFile is stored in a list of Buffer object to support arbitrary large files.
[jnode:svn-mirror.git] / netbeans / nbproject / build-impl.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 *** GENERATED FROM project.xml - DO NOT EDIT  ***
4 ***         EDIT ../build.xml INSTEAD         ***
5
6 For the purpose of easier reading the script
7 is divided into following sections:
8
9   - initialization
10   - compilation
11   - jar
12   - execution
13   - debugging
14   - javadoc
15   - junit compilation
16   - junit execution
17   - junit debugging
18   - applet
19   - cleanup
20
21         -->
22 <project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="JNode-impl">
23     <fail message="Please build using Ant 1.7.1 or higher.">
24         <condition>
25             <not>
26                 <antversion atleast="1.7.1"/>
27             </not>
28         </condition>
29     </fail>
30     <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
31     <!-- 
32                 ======================
33                 INITIALIZATION SECTION 
34                 ======================
35             -->
36     <target name="-pre-init">
37         <!-- Empty placeholder for easier customization. -->
38         <!-- You can override this target in the ../build.xml file. -->
39     </target>
40     <target depends="-pre-init" name="-init-private">
41         <property file="nbproject/private/config.properties"/>
42         <property file="nbproject/private/configs/${config}.properties"/>
43         <property file="nbproject/private/private.properties"/>
44     </target>
45     <target depends="-pre-init,-init-private" name="-init-user">
46         <property file="${user.properties.file}"/>
47         <!-- The two properties below are usually overridden -->
48         <!-- by the active platform. Just a fallback. -->
49         <property name="default.javac.source" value="1.4"/>
50         <property name="default.javac.target" value="1.4"/>
51     </target>
52     <target depends="-pre-init,-init-private,-init-user" name="-init-project">
53         <property file="nbproject/configs/${config}.properties"/>
54         <property file="nbproject/project.properties"/>
55     </target>
56     <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
57         <available file="${manifest.file}" property="manifest.available"/>
58         <condition property="splashscreen.available">
59             <and>
60                 <not>
61                     <equals arg1="${application.splash}" arg2="" trim="true"/>
62                 </not>
63                 <available file="${application.splash}"/>
64             </and>
65         </condition>
66         <condition property="main.class.available">
67             <and>
68                 <isset property="main.class"/>
69                 <not>
70                     <equals arg1="${main.class}" arg2="" trim="true"/>
71                 </not>
72             </and>
73         </condition>
74         <condition property="manifest.available+main.class">
75             <and>
76                 <isset property="manifest.available"/>
77                 <isset property="main.class.available"/>
78             </and>
79         </condition>
80         <condition property="do.archive">
81             <not>
82                 <istrue value="${jar.archive.disabled}"/>
83             </not>
84         </condition>
85         <condition property="do.mkdist">
86             <and>
87                 <isset property="do.archive"/>
88                 <isset property="libs.CopyLibs.classpath"/>
89                 <not>
90                     <istrue value="${mkdist.disabled}"/>
91                 </not>
92             </and>
93         </condition>
94         <condition property="manifest.available+main.class+mkdist.available">
95             <and>
96                 <istrue value="${manifest.available+main.class}"/>
97                 <isset property="do.mkdist"/>
98             </and>
99         </condition>
100         <condition property="do.archive+manifest.available">
101             <and>
102                 <isset property="manifest.available"/>
103                 <istrue value="${do.archive}"/>
104             </and>
105         </condition>
106         <condition property="do.archive+main.class.available">
107             <and>
108                 <isset property="main.class.available"/>
109                 <istrue value="${do.archive}"/>
110             </and>
111         </condition>
112         <condition property="do.archive+splashscreen.available">
113             <and>
114                 <isset property="splashscreen.available"/>
115                 <istrue value="${do.archive}"/>
116             </and>
117         </condition>
118         <condition property="do.archive+manifest.available+main.class">
119             <and>
120                 <istrue value="${manifest.available+main.class}"/>
121                 <istrue value="${do.archive}"/>
122             </and>
123         </condition>
124         <condition property="manifest.available-mkdist.available">
125             <or>
126                 <istrue value="${manifest.available}"/>
127                 <isset property="do.mkdist"/>
128             </or>
129         </condition>
130         <condition property="manifest.available+main.class-mkdist.available">
131             <or>
132                 <istrue value="${manifest.available+main.class}"/>
133                 <isset property="do.mkdist"/>
134             </or>
135         </condition>
136         <condition property="have.tests">
137             <or/>
138         </condition>
139         <condition property="have.sources">
140             <or>
141                 <available file="${src.template.dir}"/>
142                 <available file="${src.emu3.dir}"/>
143                 <available file="${src.core.dir}"/>
144                 <available file="${src.emu2.dir}"/>
145                 <available file="${src.apps.dir}"/>
146                 <available file="${src.emu.dir}"/>
147                 <available file="${src.install.dir}"/>
148                 <available file="${src.test.dir}"/>
149                 <available file="${src.driver.dir}"/>
150                 <available file="${src.fs.dir}"/>
151                 <available file="${src.test2.dir}"/>
152                 <available file="${src.awt.dir}"/>
153                 <available file="${src.desktop.dir}"/>
154                 <available file="${src.driver2.dir}"/>
155                 <available file="${src.font.dir}"/>
156                 <available file="${src.test3.dir}"/>
157                 <available file="${src.thinlet.dir}"/>
158                 <available file="${src.driver3.dir}"/>
159                 <available file="${src.net.dir}"/>
160                 <available file="${src.test4.dir}"/>
161                 <available file="${src.shell.dir}"/>
162                 <available file="${src.test5.dir}"/>
163                 <available file="${src.driver4.dir}"/>
164                 <available file="${src.sound.dir}"/>
165                 <available file="${src.test6.dir}"/>
166                 <available file="${src.textui.dir}"/>
167                 <available file="${src.driver5.dir}"/>
168                 <available file="${src.nanoxml.dir}"/>
169                 <available file="${src.mmtk-vm.dir}"/>
170                 <available file="${src.vm.dir}"/>
171                 <available file="${src.test7.dir}"/>
172                 <available file="${src.vmmagic.dir}"/>
173                 <available file="${src.dir}"/>
174                 <available file="${configure.dir}"/>
175                 <available file="${ext.dir}"/>
176                 <available file="${vm.dir}"/>
177             </or>
178         </condition>
179         <condition property="netbeans.home+have.tests">
180             <and>
181                 <isset property="netbeans.home"/>
182                 <isset property="have.tests"/>
183             </and>
184         </condition>
185         <condition property="no.javadoc.preview">
186             <and>
187                 <isset property="javadoc.preview"/>
188                 <isfalse value="${javadoc.preview}"/>
189             </and>
190         </condition>
191         <property name="run.jvmargs" value=""/>
192         <property name="javac.compilerargs" value=""/>
193         <property name="work.dir" value="${basedir}"/>
194         <condition property="no.deps">
195             <and>
196                 <istrue value="${no.dependencies}"/>
197             </and>
198         </condition>
199         <property name="javac.debug" value="true"/>
200         <property name="javadoc.preview" value="true"/>
201         <property name="application.args" value=""/>
202         <property name="source.encoding" value="${file.encoding}"/>
203         <property name="runtime.encoding" value="${source.encoding}"/>
204         <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
205             <and>
206                 <isset property="javadoc.encoding"/>
207                 <not>
208                     <equals arg1="${javadoc.encoding}" arg2=""/>
209                 </not>
210             </and>
211         </condition>
212         <property name="javadoc.encoding.used" value="${source.encoding}"/>
213         <property name="includes" value="**"/>
214         <property name="excludes" value=""/>
215         <property name="do.depend" value="false"/>
216         <condition property="do.depend.true">
217             <istrue value="${do.depend}"/>
218         </condition>
219         <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
220         <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
221             <length length="0" string="${endorsed.classpath}" when="greater"/>
222         </condition>
223         <condition else="false" property="jdkBug6558476">
224             <and>
225                 <matches pattern="1\.[56]" string="${java.specification.version}"/>
226                 <not>
227                     <os family="unix"/>
228                 </not>
229             </and>
230         </condition>
231         <property name="javac.fork" value="${jdkBug6558476}"/>
232         <property name="jar.index" value="false"/>
233         <property name="jar.index.metainf" value="${jar.index}"/>
234         <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
235     </target>
236     <target name="-post-init">
237         <!-- Empty placeholder for easier customization. -->
238         <!-- You can override this target in the ../build.xml file. -->
239     </target>
240     <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
241         <fail unless="src.template.dir">Must set src.template.dir</fail>
242         <fail unless="src.emu3.dir">Must set src.emu3.dir</fail>
243         <fail unless="src.core.dir">Must set src.core.dir</fail>
244         <fail unless="src.emu2.dir">Must set src.emu2.dir</fail>
245         <fail unless="src.apps.dir">Must set src.apps.dir</fail>
246         <fail unless="src.emu.dir">Must set src.emu.dir</fail>
247         <fail unless="src.install.dir">Must set src.install.dir</fail>
248         <fail unless="src.test.dir">Must set src.test.dir</fail>
249         <fail unless="src.driver.dir">Must set src.driver.dir</fail>
250         <fail unless="src.fs.dir">Must set src.fs.dir</fail>
251         <fail unless="src.test2.dir">Must set src.test2.dir</fail>
252         <fail unless="src.awt.dir">Must set src.awt.dir</fail>
253         <fail unless="src.desktop.dir">Must set src.desktop.dir</fail>
254         <fail unless="src.driver2.dir">Must set src.driver2.dir</fail>
255         <fail unless="src.font.dir">Must set src.font.dir</fail>
256         <fail unless="src.test3.dir">Must set src.test3.dir</fail>
257         <fail unless="src.thinlet.dir">Must set src.thinlet.dir</fail>
258         <fail unless="src.driver3.dir">Must set src.driver3.dir</fail>
259         <fail unless="src.net.dir">Must set src.net.dir</fail>
260         <fail unless="src.test4.dir">Must set src.test4.dir</fail>
261         <fail unless="src.shell.dir">Must set src.shell.dir</fail>
262         <fail unless="src.test5.dir">Must set src.test5.dir</fail>
263         <fail unless="src.driver4.dir">Must set src.driver4.dir</fail>
264         <fail unless="src.sound.dir">Must set src.sound.dir</fail>
265         <fail unless="src.test6.dir">Must set src.test6.dir</fail>
266         <fail unless="src.textui.dir">Must set src.textui.dir</fail>
267         <fail unless="src.driver5.dir">Must set src.driver5.dir</fail>
268         <fail unless="src.nanoxml.dir">Must set src.nanoxml.dir</fail>
269         <fail unless="src.mmtk-vm.dir">Must set src.mmtk-vm.dir</fail>
270         <fail unless="src.vm.dir">Must set src.vm.dir</fail>
271         <fail unless="src.test7.dir">Must set src.test7.dir</fail>
272         <fail unless="src.vmmagic.dir">Must set src.vmmagic.dir</fail>
273         <fail unless="src.dir">Must set src.dir</fail>
274         <fail unless="configure.dir">Must set configure.dir</fail>
275         <fail unless="ext.dir">Must set ext.dir</fail>
276         <fail unless="vm.dir">Must set vm.dir</fail>
277         <fail unless="build.dir">Must set build.dir</fail>
278         <fail unless="dist.dir">Must set dist.dir</fail>
279         <fail unless="build.classes.dir">Must set build.classes.dir</fail>
280         <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
281         <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
282         <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
283         <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
284         <fail unless="dist.jar">Must set dist.jar</fail>
285     </target>
286     <target name="-init-macrodef-property">
287         <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
288             <attribute name="name"/>
289             <attribute name="value"/>
290             <sequential>
291                 <property name="@{name}" value="${@{value}}"/>
292             </sequential>
293         </macrodef>
294     </target>
295     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
296         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
297             <attribute default="${src.template.dir}:${src.emu3.dir}:${src.core.dir}:${src.emu2.dir}:${src.apps.dir}:${src.emu.dir}:${src.install.dir}:${src.test.dir}:${src.driver.dir}:${src.fs.dir}:${src.test2.dir}:${src.awt.dir}:${src.desktop.dir}:${src.driver2.dir}:${src.font.dir}:${src.test3.dir}:${src.thinlet.dir}:${src.driver3.dir}:${src.net.dir}:${src.test4.dir}:${src.shell.dir}:${src.test5.dir}:${src.driver4.dir}:${src.sound.dir}:${src.test6.dir}:${src.textui.dir}:${src.driver5.dir}:${src.nanoxml.dir}:${src.mmtk-vm.dir}:${src.vm.dir}:${src.test7.dir}:${src.vmmagic.dir}:${src.dir}:${configure.dir}:${ext.dir}:${vm.dir}" name="srcdir"/>
298             <attribute default="${build.classes.dir}" name="destdir"/>
299             <attribute default="${javac.classpath}" name="classpath"/>
300             <attribute default="${javac.processorpath}" name="processorpath"/>
301             <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
302             <attribute default="${includes}" name="includes"/>
303             <attribute default="${excludes}" name="excludes"/>
304             <attribute default="${javac.debug}" name="debug"/>
305             <attribute default="${empty.dir}" name="sourcepath"/>
306             <attribute default="${empty.dir}" name="gensrcdir"/>
307             <element name="customize" optional="true"/>
308             <sequential>
309                 <property location="${build.dir}/empty" name="empty.dir"/>
310                 <mkdir dir="${empty.dir}"/>
311                 <mkdir dir="@{apgeneratedsrcdir}"/>
312                 <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
313                     <src>
314                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
315                             <include name="*"/>
316                         </dirset>
317                     </src>
318                     <classpath>
319                         <path path="@{classpath}"/>
320                     </classpath>
321                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
322                     <compilerarg line="${javac.compilerargs}"/>
323                     <compilerarg value="-processorpath"/>
324                     <compilerarg path="@{processorpath}:${empty.dir}"/>
325                     <compilerarg line="${ap.processors.internal}"/>
326                     <compilerarg line="${annotation.processing.processor.options}"/>
327                     <compilerarg value="-s"/>
328                     <compilerarg path="@{apgeneratedsrcdir}"/>
329                     <compilerarg line="${ap.proc.none.internal}"/>
330                     <customize/>
331                 </javac>
332             </sequential>
333         </macrodef>
334     </target>
335     <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
336         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
337             <attribute default="${src.template.dir}:${src.emu3.dir}:${src.core.dir}:${src.emu2.dir}:${src.apps.dir}:${src.emu.dir}:${src.install.dir}:${src.test.dir}:${src.driver.dir}:${src.fs.dir}:${src.test2.dir}:${src.awt.dir}:${src.desktop.dir}:${src.driver2.dir}:${src.font.dir}:${src.test3.dir}:${src.thinlet.dir}:${src.driver3.dir}:${src.net.dir}:${src.test4.dir}:${src.shell.dir}:${src.test5.dir}:${src.driver4.dir}:${src.sound.dir}:${src.test6.dir}:${src.textui.dir}:${src.driver5.dir}:${src.nanoxml.dir}:${src.mmtk-vm.dir}:${src.vm.dir}:${src.test7.dir}:${src.vmmagic.dir}:${src.dir}:${configure.dir}:${ext.dir}:${vm.dir}" name="srcdir"/>
338             <attribute default="${build.classes.dir}" name="destdir"/>
339             <attribute default="${javac.classpath}" name="classpath"/>
340             <attribute default="${javac.processorpath}" name="processorpath"/>
341             <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
342             <attribute default="${includes}" name="includes"/>
343             <attribute default="${excludes}" name="excludes"/>
344             <attribute default="${javac.debug}" name="debug"/>
345             <attribute default="${empty.dir}" name="sourcepath"/>
346             <attribute default="${empty.dir}" name="gensrcdir"/>
347             <element name="customize" optional="true"/>
348             <sequential>
349                 <property location="${build.dir}/empty" name="empty.dir"/>
350                 <mkdir dir="${empty.dir}"/>
351                 <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
352                     <src>
353                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
354                             <include name="*"/>
355                         </dirset>
356                     </src>
357                     <classpath>
358                         <path path="@{classpath}"/>
359                     </classpath>
360                     <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
361                     <compilerarg line="${javac.compilerargs}"/>
362                     <customize/>
363                 </javac>
364             </sequential>
365         </macrodef>
366     </target>
367     <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
368         <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
369             <attribute default="${src.template.dir}:${src.emu3.dir}:${src.core.dir}:${src.emu2.dir}:${src.apps.dir}:${src.emu.dir}:${src.install.dir}:${src.test.dir}:${src.driver.dir}:${src.fs.dir}:${src.test2.dir}:${src.awt.dir}:${src.desktop.dir}:${src.driver2.dir}:${src.font.dir}:${src.test3.dir}:${src.thinlet.dir}:${src.driver3.dir}:${src.net.dir}:${src.test4.dir}:${src.shell.dir}:${src.test5.dir}:${src.driver4.dir}:${src.sound.dir}:${src.test6.dir}:${src.textui.dir}:${src.driver5.dir}:${src.nanoxml.dir}:${src.mmtk-vm.dir}:${src.vm.dir}:${src.test7.dir}:${src.vmmagic.dir}:${src.dir}:${configure.dir}:${ext.dir}:${vm.dir}" name="srcdir"/>
370             <attribute default="${build.classes.dir}" name="destdir"/>
371             <attribute default="${javac.classpath}" name="classpath"/>
372             <sequential>
373                 <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
374                     <classpath>
375                         <path path="@{classpath}"/>
376                     </classpath>
377                 </depend>
378             </sequential>
379         </macrodef>
380         <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
381             <attribute default="${build.classes.dir}" name="destdir"/>
382             <sequential>
383                 <fail unless="javac.includes">Must set javac.includes</fail>
384                 <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
385                     <path>
386                         <filelist dir="@{destdir}" files="${javac.includes}"/>
387                     </path>
388                     <globmapper from="*.java" to="*.class"/>
389                 </pathconvert>
390                 <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
391                 <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
392                 <delete>
393                     <files includesfile="${javac.includesfile.binary}"/>
394                 </delete>
395                 <delete>
396                     <fileset file="${javac.includesfile.binary}"/>
397                 </delete>
398             </sequential>
399         </macrodef>
400     </target>
401     <target name="-init-macrodef-junit">
402         <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
403             <attribute default="${includes}" name="includes"/>
404             <attribute default="${excludes}" name="excludes"/>
405             <attribute default="**" name="testincludes"/>
406             <sequential>
407                 <property name="junit.forkmode" value="perTest"/>
408                 <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
409                     <batchtest todir="${build.test.results.dir}"/>
410                     <classpath>
411                         <path path="${run.test.classpath}"/>
412                     </classpath>
413                     <syspropertyset>
414                         <propertyref prefix="test-sys-prop."/>
415                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
416                     </syspropertyset>
417                     <formatter type="brief" usefile="false"/>
418                     <formatter type="xml"/>
419                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
420                     <jvmarg value="-ea"/>
421                     <jvmarg line="${run.jvmargs}"/>
422                 </junit>
423             </sequential>
424         </macrodef>
425     </target>
426     <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" name="profile-init"/>
427     <target name="-profile-pre-init">
428         <!-- Empty placeholder for easier customization. -->
429         <!-- You can override this target in the ../build.xml file. -->
430     </target>
431     <target name="-profile-post-init">
432         <!-- Empty placeholder for easier customization. -->
433         <!-- You can override this target in the ../build.xml file. -->
434     </target>
435     <target name="-profile-init-macrodef-profile">
436         <macrodef name="resolve">
437             <attribute name="name"/>
438             <attribute name="value"/>
439             <sequential>
440                 <property name="@{name}" value="${env.@{value}}"/>
441             </sequential>
442         </macrodef>
443         <macrodef name="profile">
444             <attribute default="${main.class}" name="classname"/>
445             <element name="customize" optional="true"/>
446             <sequential>
447                 <property environment="env"/>
448                 <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
449                 <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">
450                     <jvmarg value="${profiler.info.jvmargs.agent}"/>
451                     <jvmarg line="${profiler.info.jvmargs}"/>
452                     <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
453                     <arg line="${application.args}"/>
454                     <classpath>
455                         <path path="${run.classpath}"/>
456                     </classpath>
457                     <syspropertyset>
458                         <propertyref prefix="run-sys-prop."/>
459                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
460                     </syspropertyset>
461                     <customize/>
462                 </java>
463             </sequential>
464         </macrodef>
465     </target>
466     <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" name="-profile-init-check">
467         <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
468         <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
469     </target>
470     <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
471         <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
472             <attribute default="${main.class}" name="name"/>
473             <attribute default="${debug.classpath}" name="classpath"/>
474             <attribute default="" name="stopclassname"/>
475             <sequential>
476                 <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
477                     <classpath>
478                         <path path="@{classpath}"/>
479                     </classpath>
480                 </nbjpdastart>
481             </sequential>
482         </macrodef>
483         <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
484             <attribute default="${build.classes.dir}" name="dir"/>
485             <sequential>
486                 <nbjpdareload>
487                     <fileset dir="@{dir}" includes="${fix.classes}">
488                         <include name="${fix.includes}*.class"/>
489                     </fileset>
490                 </nbjpdareload>
491             </sequential>
492         </macrodef>
493     </target>
494     <target name="-init-debug-args">
495         <property name="version-output" value="java version &quot;${ant.java.version}"/>
496         <condition property="have-jdk-older-than-1.4">
497             <or>
498                 <contains string="${version-output}" substring="java version &quot;1.0"/>
499                 <contains string="${version-output}" substring="java version &quot;1.1"/>
500                 <contains string="${version-output}" substring="java version &quot;1.2"/>
501                 <contains string="${version-output}" substring="java version &quot;1.3"/>
502             </or>
503         </condition>
504         <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
505             <istrue value="${have-jdk-older-than-1.4}"/>
506         </condition>
507         <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
508             <os family="windows"/>
509         </condition>
510         <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
511             <isset property="debug.transport"/>
512         </condition>
513     </target>
514     <target depends="-init-debug-args" name="-init-macrodef-debug">
515         <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
516             <attribute default="${main.class}" name="classname"/>
517             <attribute default="${debug.classpath}" name="classpath"/>
518             <element name="customize" optional="true"/>
519             <sequential>
520                 <java classname="@{classname}" dir="${work.dir}" fork="true">
521                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
522                     <jvmarg line="${debug-args-line}"/>
523                     <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
524                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
525                     <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
526                     <jvmarg line="${run.jvmargs}"/>
527                     <classpath>
528                         <path path="@{classpath}"/>
529                     </classpath>
530                     <syspropertyset>
531                         <propertyref prefix="run-sys-prop."/>
532                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
533                     </syspropertyset>
534                     <customize/>
535                 </java>
536             </sequential>
537         </macrodef>
538     </target>
539     <target name="-init-macrodef-java">
540         <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
541             <attribute default="${main.class}" name="classname"/>
542             <attribute default="${run.classpath}" name="classpath"/>
543             <element name="customize" optional="true"/>
544             <sequential>
545                 <java classname="@{classname}" dir="${work.dir}" fork="true">
546                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
547                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
548                     <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
549                     <jvmarg line="${run.jvmargs}"/>
550                     <classpath>
551                         <path path="@{classpath}"/>
552                     </classpath>
553                     <syspropertyset>
554                         <propertyref prefix="run-sys-prop."/>
555                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
556                     </syspropertyset>
557                     <customize/>
558                 </java>
559             </sequential>
560         </macrodef>
561     </target>
562     <target name="-init-macrodef-copylibs">
563         <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
564             <attribute default="${manifest.file}" name="manifest"/>
565             <element name="customize" optional="true"/>
566             <sequential>
567                 <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
568                 <pathconvert property="run.classpath.without.build.classes.dir">
569                     <path path="${run.classpath}"/>
570                     <map from="${build.classes.dir.resolved}" to=""/>
571                 </pathconvert>
572                 <pathconvert pathsep=" " property="jar.classpath">
573                     <path path="${run.classpath.without.build.classes.dir}"/>
574                     <chainedmapper>
575                         <flattenmapper/>
576                         <globmapper from="*" to="lib/*"/>
577                     </chainedmapper>
578                 </pathconvert>
579                 <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
580                 <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
581                     <fileset dir="${build.classes.dir}"/>
582                     <manifest>
583                         <attribute name="Class-Path" value="${jar.classpath}"/>
584                         <customize/>
585                     </manifest>
586                 </copylibs>
587             </sequential>
588         </macrodef>
589     </target>
590     <target name="-init-presetdef-jar">
591         <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
592             <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">
593                 <j2seproject1:fileset dir="${build.classes.dir}"/>
594             </jar>
595         </presetdef>
596     </target>
597     <target name="-init-ap-cmdline-properties">
598         <property name="annotation.processing.enabled" value="true"/>
599         <property name="annotation.processing.processors.list" value=""/>
600         <property name="annotation.processing.processor.options" value=""/>
601         <property name="annotation.processing.run.all.processors" value="true"/>
602         <property name="javac.processorpath" value="${javac.classpath}"/>
603         <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
604         <condition property="ap.supported.internal" value="true">
605             <not>
606                 <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
607             </not>
608         </condition>
609     </target>
610     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
611         <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
612             <isfalse value="${annotation.processing.run.all.processors}"/>
613         </condition>
614         <condition else="" property="ap.proc.none.internal" value="-proc:none">
615             <isfalse value="${annotation.processing.enabled}"/>
616         </condition>
617     </target>
618     <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
619         <property name="ap.cmd.line.internal" value=""/>
620     </target>
621     <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>
622     <!--
623                 ===================
624                 COMPILATION SECTION
625                 ===================
626             -->
627     <target name="-deps-jar-init" unless="built-jar.properties">
628         <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
629         <delete file="${built-jar.properties}" quiet="true"/>
630     </target>
631     <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
632         <echo level="warn" message="Cycle detected: JNode was already built"/>
633     </target>
634     <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
635         <mkdir dir="${build.dir}"/>
636         <touch file="${built-jar.properties}" verbose="false"/>
637         <property file="${built-jar.properties}" prefix="already.built.jar."/>
638         <antcall target="-warn-already-built-jar"/>
639         <propertyfile file="${built-jar.properties}">
640             <entry key="${basedir}" value=""/>
641         </propertyfile>
642     </target>
643     <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
644     <target depends="init" name="-check-automatic-build">
645         <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
646     </target>
647     <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
648         <antcall target="clean"/>
649     </target>
650     <target depends="init,deps-jar" name="-pre-pre-compile">
651         <mkdir dir="${build.classes.dir}"/>
652     </target>
653     <target name="-pre-compile">
654         <!-- Empty placeholder for easier customization. -->
655         <!-- You can override this target in the ../build.xml file. -->
656     </target>
657     <target if="do.depend.true" name="-compile-depend">
658         <pathconvert property="build.generated.subdirs">
659             <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
660                 <include name="*"/>
661             </dirset>
662         </pathconvert>
663         <j2seproject3:depend srcdir="${src.template.dir}:${src.emu3.dir}:${src.core.dir}:${src.emu2.dir}:${src.apps.dir}:${src.emu.dir}:${src.install.dir}:${src.test.dir}:${src.driver.dir}:${src.fs.dir}:${src.test2.dir}:${src.awt.dir}:${src.desktop.dir}:${src.driver2.dir}:${src.font.dir}:${src.test3.dir}:${src.thinlet.dir}:${src.driver3.dir}:${src.net.dir}:${src.test4.dir}:${src.shell.dir}:${src.test5.dir}:${src.driver4.dir}:${src.sound.dir}:${src.test6.dir}:${src.textui.dir}:${src.driver5.dir}:${src.nanoxml.dir}:${src.mmtk-vm.dir}:${src.vm.dir}:${src.test7.dir}:${src.vmmagic.dir}:${src.dir}:${configure.dir}:${ext.dir}:${vm.dir}:${build.generated.subdirs}"/>
664     </target>
665     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
666         <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
667         <copy todir="${build.classes.dir}">
668             <fileset dir="${src.template.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
669             <fileset dir="${src.emu3.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
670             <fileset dir="${src.core.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
671             <fileset dir="${src.emu2.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
672             <fileset dir="${src.apps.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
673             <fileset dir="${src.emu.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
674             <fileset dir="${src.install.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
675             <fileset dir="${src.test.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
676             <fileset dir="${src.driver.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
677             <fileset dir="${src.fs.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
678             <fileset dir="${src.test2.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
679             <fileset dir="${src.awt.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
680             <fileset dir="${src.desktop.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
681             <fileset dir="${src.driver2.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
682             <fileset dir="${src.font.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
683             <fileset dir="${src.test3.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
684             <fileset dir="${src.thinlet.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
685             <fileset dir="${src.driver3.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
686             <fileset dir="${src.net.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
687             <fileset dir="${src.test4.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
688             <fileset dir="${src.shell.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
689             <fileset dir="${src.test5.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
690             <fileset dir="${src.driver4.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
691             <fileset dir="${src.sound.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
692             <fileset dir="${src.test6.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
693             <fileset dir="${src.textui.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
694             <fileset dir="${src.driver5.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
695             <fileset dir="${src.nanoxml.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
696             <fileset dir="${src.mmtk-vm.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
697             <fileset dir="${src.vm.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
698             <fileset dir="${src.test7.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
699             <fileset dir="${src.vmmagic.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
700             <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
701             <fileset dir="${configure.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
702             <fileset dir="${ext.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
703             <fileset dir="${vm.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
704         </copy>
705     </target>
706     <target if="has.persistence.xml" name="-copy-persistence-xml">
707         <mkdir dir="${build.classes.dir}/META-INF"/>
708         <copy todir="${build.classes.dir}/META-INF">
709             <fileset dir="${meta.inf.dir}" includes="persistence.xml"/>
710         </copy>
711     </target>
712     <target name="-post-compile">
713         <!-- Empty placeholder for easier customization. -->
714         <!-- You can override this target in the ../build.xml file. -->
715     </target>
716     <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
717     <target name="-pre-compile-single">
718         <!-- Empty placeholder for easier customization. -->
719         <!-- You can override this target in the ../build.xml file. -->
720     </target>
721     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
722         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
723         <j2seproject3:force-recompile/>
724         <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.template.dir}:${src.emu3.dir}:${src.core.dir}:${src.emu2.dir}:${src.apps.dir}:${src.emu.dir}:${src.install.dir}:${src.test.dir}:${src.driver.dir}:${src.fs.dir}:${src.test2.dir}:${src.awt.dir}:${src.desktop.dir}:${src.driver2.dir}:${src.font.dir}:${src.test3.dir}:${src.thinlet.dir}:${src.driver3.dir}:${src.net.dir}:${src.test4.dir}:${src.shell.dir}:${src.test5.dir}:${src.driver4.dir}:${src.sound.dir}:${src.test6.dir}:${src.textui.dir}:${src.driver5.dir}:${src.nanoxml.dir}:${src.mmtk-vm.dir}:${src.vm.dir}:${src.test7.dir}:${src.vmmagic.dir}:${src.dir}:${configure.dir}:${ext.dir}:${vm.dir}"/>
725     </target>
726     <target name="-post-compile-single">
727         <!-- Empty placeholder for easier customization. -->
728         <!-- You can override this target in the ../build.xml file. -->
729     </target>
730     <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
731     <!--
732                 ====================
733                 JAR BUILDING SECTION
734                 ====================
735             -->
736     <target depends="init" name="-pre-pre-jar">
737         <dirname file="${dist.jar}" property="dist.jar.dir"/>
738         <mkdir dir="${dist.jar.dir}"/>
739     </target>
740     <target name="-pre-jar">
741         <!-- Empty placeholder for easier customization. -->
742         <!-- You can override this target in the ../build.xml file. -->
743     </target>
744     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive" name="-do-jar-without-manifest" unless="manifest.available-mkdist.available">
745         <j2seproject1:jar/>
746     </target>
747     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class-mkdist.available">
748         <j2seproject1:jar manifest="${manifest.file}"/>
749     </target>
750     <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available">
751         <j2seproject1:jar manifest="${manifest.file}">
752             <j2seproject1:manifest>
753                 <j2seproject1:attribute name="Main-Class" value="${main.class}"/>
754             </j2seproject1:manifest>
755         </j2seproject1:jar>
756         <echo level="info">To run this application from the command line without Ant, try:</echo>
757         <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
758         <property location="${dist.jar}" name="dist.jar.resolved"/>
759         <pathconvert property="run.classpath.with.dist.jar">
760             <path path="${run.classpath}"/>
761             <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
762         </pathconvert>
763         <echo level="info">java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>
764     </target>
765     <target depends="init" if="do.archive" name="-do-jar-with-libraries-create-manifest" unless="manifest.available">
766         <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
767         <touch file="${tmp.manifest.file}" verbose="false"/>
768     </target>
769     <target depends="init" if="do.archive+manifest.available" name="-do-jar-with-libraries-copy-manifest">
770         <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
771         <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
772     </target>
773     <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+main.class.available" name="-do-jar-with-libraries-set-main">
774         <manifest file="${tmp.manifest.file}" mode="update">
775             <attribute name="Main-Class" value="${main.class}"/>
776         </manifest>
777     </target>
778     <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-with-libraries-set-splashscreen">
779         <basename file="${application.splash}" property="splashscreen.basename"/>
780         <mkdir dir="${build.classes.dir}/META-INF"/>
781         <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
782         <manifest file="${tmp.manifest.file}" mode="update">
783             <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
784         </manifest>
785     </target>
786     <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen" if="do.mkdist" name="-do-jar-with-libraries-pack">
787         <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
788         <echo level="info">To run this application from the command line without Ant, try:</echo>
789         <property location="${dist.jar}" name="dist.jar.resolved"/>
790         <echo level="info">java -jar "${dist.jar.resolved}"</echo>
791     </target>
792     <target depends="-do-jar-with-libraries-pack" if="do.archive" name="-do-jar-with-libraries-delete-manifest">
793         <delete>
794             <fileset file="${tmp.manifest.file}"/>
795         </delete>
796     </target>
797     <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen,-do-jar-with-libraries-pack,-do-jar-with-libraries-delete-manifest" name="-do-jar-with-libraries"/>
798     <target name="-post-jar">
799         <!-- Empty placeholder for easier customization. -->
800         <!-- You can override this target in the ../build.xml file. -->
801     </target>
802     <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/>
803     <!--
804                 =================
805                 EXECUTION SECTION
806                 =================
807             -->
808     <target depends="init,compile" description="Run a main class." name="run">
809         <j2seproject1:java>
810             <customize>
811                 <arg line="${application.args}"/>
812             </customize>
813         </j2seproject1:java>
814     </target>
815     <target name="-do-not-recompile">
816         <property name="javac.includes.binary" value=""/>
817     </target>
818     <target depends="init,compile-single" name="run-single">
819         <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
820         <j2seproject1:java classname="${run.class}"/>
821     </target>
822     <target depends="init,compile-test-single" name="run-test-with-main">
823         <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
824         <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
825     </target>
826     <!--
827                 =================
828                 DEBUGGING SECTION
829                 =================
830             -->
831     <target depends="init" if="netbeans.home" name="-debug-start-debugger">
832         <j2seproject1:nbjpdastart name="${debug.class}"/>
833     </target>
834     <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
835         <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
836     </target>
837     <target depends="init,compile" name="-debug-start-debuggee">
838         <j2seproject3:debug>
839             <customize>
840                 <arg line="${application.args}"/>
841             </customize>
842         </j2seproject3:debug>
843     </target>
844     <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
845     <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
846         <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
847     </target>
848     <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
849     <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
850         <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
851         <j2seproject3:debug classname="${debug.class}"/>
852     </target>
853     <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
854     <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
855         <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
856         <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
857     </target>
858     <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
859     <target depends="init" name="-pre-debug-fix">
860         <fail unless="fix.includes">Must set fix.includes</fail>
861         <property name="javac.includes" value="${fix.includes}.java"/>
862     </target>
863     <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
864         <j2seproject1:nbjpdareload/>
865     </target>
866     <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
867     <!--
868                 =================
869                 PROFILING SECTION
870                 =================
871             -->
872     <target depends="profile-init,compile" description="Profile a project in the IDE." if="netbeans.home" name="profile">
873         <nbprofiledirect>
874             <classpath>
875                 <path path="${run.classpath}"/>
876             </classpath>
877         </nbprofiledirect>
878         <profile/>
879     </target>
880     <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="netbeans.home" name="profile-single">
881         <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
882         <nbprofiledirect>
883             <classpath>
884                 <path path="${run.classpath}"/>
885             </classpath>
886         </nbprofiledirect>
887         <profile classname="${profile.class}"/>
888     </target>
889     <!--
890                 =========================
891                 APPLET PROFILING  SECTION
892                 =========================
893             -->
894     <target depends="profile-init,compile-single" if="netbeans.home" name="profile-applet">
895         <nbprofiledirect>
896             <classpath>
897                 <path path="${run.classpath}"/>
898             </classpath>
899         </nbprofiledirect>
900         <profile classname="sun.applet.AppletViewer">
901             <customize>
902                 <arg value="${applet.url}"/>
903             </customize>
904         </profile>
905     </target>
906     <!--
907                 =========================
908                 TESTS PROFILING  SECTION
909                 =========================
910             -->
911     <target depends="profile-init,compile-test-single" if="netbeans.home" name="profile-test-single">
912         <nbprofiledirect>
913             <classpath>
914                 <path path="${run.test.classpath}"/>
915             </classpath>
916         </nbprofiledirect>
917         <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
918             <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
919             <jvmarg value="${profiler.info.jvmargs.agent}"/>
920             <jvmarg line="${profiler.info.jvmargs}"/>
921             <test name="${profile.class}"/>
922             <classpath>
923                 <path path="${run.test.classpath}"/>
924             </classpath>
925             <syspropertyset>
926                 <propertyref prefix="test-sys-prop."/>
927                 <mapper from="test-sys-prop.*" to="*" type="glob"/>
928             </syspropertyset>
929             <formatter type="brief" usefile="false"/>
930             <formatter type="xml"/>
931         </junit>
932     </target>
933     <!--
934                 ===============
935                 JAVADOC SECTION
936                 ===============
937             -->
938     <target depends="init" if="have.sources" name="-javadoc-build">
939         <mkdir dir="${dist.javadoc.dir}"/>
940         <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
941             <classpath>
942                 <path path="${javac.classpath}"/>
943             </classpath>
944             <fileset dir="${src.template.dir}" excludes="${excludes}" includes="${includes}">
945                 <filename name="**/*.java"/>
946             </fileset>
947             <fileset dir="${src.emu3.dir}" excludes="${excludes}" includes="${includes}">
948                 <filename name="**/*.java"/>
949             </fileset>
950             <fileset dir="${src.core.dir}" excludes="${excludes}" includes="${includes}">
951                 <filename name="**/*.java"/>
952             </fileset>
953             <fileset dir="${src.emu2.dir}" excludes="${excludes}" includes="${includes}">
954                 <filename name="**/*.java"/>
955             </fileset>
956             <fileset dir="${src.apps.dir}" excludes="${excludes}" includes="${includes}">
957                 <filename name="**/*.java"/>
958             </fileset>
959             <fileset dir="${src.emu.dir}" excludes="${excludes}" includes="${includes}">
960                 <filename name="**/*.java"/>
961             </fileset>
962             <fileset dir="${src.install.dir}" excludes="${excludes}" includes="${includes}">
963                 <filename name="**/*.java"/>
964             </fileset>
965             <fileset dir="${src.test.dir}" excludes="${excludes}" includes="${includes}">
966                 <filename name="**/*.java"/>
967             </fileset>
968             <fileset dir="${src.driver.dir}" excludes="${excludes}" includes="${includes}">
969                 <filename name="**/*.java"/>
970             </fileset>
971             <fileset dir="${src.fs.dir}" excludes="${excludes}" includes="${includes}">
972                 <filename name="**/*.java"/>
973             </fileset>
974             <fileset dir="${src.test2.dir}" excludes="${excludes}" includes="${includes}">
975                 <filename name="**/*.java"/>
976             </fileset>
977             <fileset dir="${src.awt.dir}" excludes="${excludes}" includes="${includes}">
978                 <filename name="**/*.java"/>
979             </fileset>
980             <fileset dir="${src.desktop.dir}" excludes="${excludes}" includes="${includes}">
981                 <filename name="**/*.java"/>
982             </fileset>
983             <fileset dir="${src.driver2.dir}" excludes="${excludes}" includes="${includes}">
984                 <filename name="**/*.java"/>
985             </fileset>
986             <fileset dir="${src.font.dir}" excludes="${excludes}" includes="${includes}">
987                 <filename name="**/*.java"/>
988             </fileset>
989             <fileset dir="${src.test3.dir}" excludes="${excludes}" includes="${includes}">
990                 <filename name="**/*.java"/>
991             </fileset>
992             <fileset dir="${src.thinlet.dir}" excludes="${excludes}" includes="${includes}">
993                 <filename name="**/*.java"/>
994             </fileset>
995             <fileset dir="${src.driver3.dir}" excludes="${excludes}" includes="${includes}">
996                 <filename name="**/*.java"/>
997             </fileset>
998             <fileset dir="${src.net.dir}" excludes="${excludes}" includes="${includes}">
999                 <filename name="**/*.java"/>
1000             </fileset>
1001             <fileset dir="${src.test4.dir}" excludes="${excludes}" includes="${includes}">
1002                 <filename name="**/*.java"/>
1003             </fileset>
1004             <fileset dir="${src.shell.dir}" excludes="${excludes}" includes="${includes}">
1005                 <filename name="**/*.java"/>
1006             </fileset>
1007             <fileset dir="${src.test5.dir}" excludes="${excludes}" includes="${includes}">
1008                 <filename name="**/*.java"/>
1009             </fileset>
1010             <fileset dir="${src.driver4.dir}" excludes="${excludes}" includes="${includes}">
1011                 <filename name="**/*.java"/>
1012             </fileset>
1013             <fileset dir="${src.sound.dir}" excludes="${excludes}" includes="${includes}">
1014                 <filename name="**/*.java"/>
1015             </fileset>
1016             <fileset dir="${src.test6.dir}" excludes="${excludes}" includes="${includes}">
1017                 <filename name="**/*.java"/>
1018             </fileset>
1019             <fileset dir="${src.textui.dir}" excludes="${excludes}" includes="${includes}">
1020                 <filename name="**/*.java"/>
1021             </fileset>
1022             <fileset dir="${src.driver5.dir}" excludes="${excludes}" includes="${includes}">
1023                 <filename name="**/*.java"/>
1024             </fileset>
1025             <fileset dir="${src.nanoxml.dir}" excludes="${excludes}" includes="${includes}">
1026                 <filename name="**/*.java"/>
1027             </fileset>
1028             <fileset dir="${src.mmtk-vm.dir}" excludes="${excludes}" includes="${includes}">
1029                 <filename name="**/*.java"/>
1030             </fileset>
1031             <fileset dir="${src.vm.dir}" excludes="${excludes}" includes="${includes}">
1032                 <filename name="**/*.java"/>
1033             </fileset>
1034             <fileset dir="${src.test7.dir}" excludes="${excludes}" includes="${includes}">
1035                 <filename name="**/*.java"/>
1036             </fileset>
1037             <fileset dir="${src.vmmagic.dir}" excludes="${excludes}" includes="${includes}">
1038                 <filename name="**/*.java"/>
1039             </fileset>
1040             <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
1041                 <filename name="**/*.java"/>
1042             </fileset>
1043             <fileset dir="${configure.dir}" excludes="${excludes}" includes="${includes}">
1044                 <filename name="**/*.java"/>
1045             </fileset>
1046             <fileset dir="${ext.dir}" excludes="${excludes}" includes="${includes}">
1047                 <filename name="**/*.java"/>
1048             </fileset>
1049             <fileset dir="${vm.dir}" excludes="${excludes}" includes="${includes}">
1050                 <filename name="**/*.java"/>
1051             </fileset>
1052             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
1053                 <include name="**/*.java"/>
1054             </fileset>
1055         </javadoc>
1056         <copy todir="${dist.javadoc.dir}">
1057             <fileset dir="${src.template.dir}" excludes="${excludes}" includes="${includes}">
1058                 <filename name="**/doc-files/**"/>
1059             </fileset>
1060             <fileset dir="${src.emu3.dir}" excludes="${excludes}" includes="${includes}">
1061                 <filename name="**/doc-files/**"/>
1062             </fileset>
1063             <fileset dir="${src.core.dir}" excludes="${excludes}" includes="${includes}">
1064                 <filename name="**/doc-files/**"/>
1065             </fileset>
1066             <fileset dir="${src.emu2.dir}" excludes="${excludes}" includes="${includes}">
1067                 <filename name="**/doc-files/**"/>
1068             </fileset>
1069             <fileset dir="${src.apps.dir}" excludes="${excludes}" includes="${includes}">
1070                 <filename name="**/doc-files/**"/>
1071             </fileset>
1072             <fileset dir="${src.emu.dir}" excludes="${excludes}" includes="${includes}">
1073                 <filename name="**/doc-files/**"/>
1074             </fileset>
1075             <fileset dir="${src.install.dir}" excludes="${excludes}" includes="${includes}">
1076                 <filename name="**/doc-files/**"/>
1077             </fileset>
1078             <fileset dir="${src.test.dir}" excludes="${excludes}" includes="${includes}">
1079                 <filename name="**/doc-files/**"/>
1080             </fileset>
1081             <fileset dir="${src.driver.dir}" excludes="${excludes}" includes="${includes}">
1082                 <filename name="**/doc-files/**"/>
1083             </fileset>
1084             <fileset dir="${src.fs.dir}" excludes="${excludes}" includes="${includes}">
1085                 <filename name="**/doc-files/**"/>
1086             </fileset>
1087             <fileset dir="${src.test2.dir}" excludes="${excludes}" includes="${includes}">
1088                 <filename name="**/doc-files/**"/>
1089             </fileset>
1090             <fileset dir="${src.awt.dir}" excludes="${excludes}" includes="${includes}">
1091                 <filename name="**/doc-files/**"/>
1092             </fileset>
1093             <fileset dir="${src.desktop.dir}" excludes="${excludes}" includes="${includes}">
1094                 <filename name="**/doc-files/**"/>
1095             </fileset>
1096             <fileset dir="${src.driver2.dir}" excludes="${excludes}" includes="${includes}">
1097                 <filename name="**/doc-files/**"/>
1098             </fileset>
1099             <fileset dir="${src.font.dir}" excludes="${excludes}" includes="${includes}">
1100                 <filename name="**/doc-files/**"/>
1101             </fileset>
1102             <fileset dir="${src.test3.dir}" excludes="${excludes}" includes="${includes}">
1103                 <filename name="**/doc-files/**"/>
1104             </fileset>
1105             <fileset dir="${src.thinlet.dir}" excludes="${excludes}" includes="${includes}">
1106                 <filename name="**/doc-files/**"/>
1107             </fileset>
1108             <fileset dir="${src.driver3.dir}" excludes="${excludes}" includes="${includes}">
1109                 <filename name="**/doc-files/**"/>
1110             </fileset>
1111             <fileset dir="${src.net.dir}" excludes="${excludes}" includes="${includes}">
1112                 <filename name="**/doc-files/**"/>
1113             </fileset>
1114             <fileset dir="${src.test4.dir}" excludes="${excludes}" includes="${includes}">
1115                 <filename name="**/doc-files/**"/>
1116             </fileset>
1117             <fileset dir="${src.shell.dir}" excludes="${excludes}" includes="${includes}">
1118                 <filename name="**/doc-files/**"/>
1119             </fileset>
1120             <fileset dir="${src.test5.dir}" excludes="${excludes}" includes="${includes}">
1121                 <filename name="**/doc-files/**"/>
1122             </fileset>
1123             <fileset dir="${src.driver4.dir}" excludes="${excludes}" includes="${includes}">
1124                 <filename name="**/doc-files/**"/>
1125             </fileset>
1126             <fileset dir="${src.sound.dir}" excludes="${excludes}" includes="${includes}">
1127                 <filename name="**/doc-files/**"/>
1128             </fileset>
1129             <fileset dir="${src.test6.dir}" excludes="${excludes}" includes="${includes}">
1130                 <filename name="**/doc-files/**"/>
1131             </fileset>
1132             <fileset dir="${src.textui.dir}" excludes="${excludes}" includes="${includes}">
1133                 <filename name="**/doc-files/**"/>
1134             </fileset>
1135             <fileset dir="${src.driver5.dir}" excludes="${excludes}" includes="${includes}">
1136                 <filename name="**/doc-files/**"/>
1137             </fileset>
1138             <fileset dir="${src.nanoxml.dir}" excludes="${excludes}" includes="${includes}">
1139                 <filename name="**/doc-files/**"/>
1140             </fileset>
1141             <fileset dir="${src.mmtk-vm.dir}" excludes="${excludes}" includes="${includes}">
1142                 <filename name="**/doc-files/**"/>
1143             </fileset>
1144             <fileset dir="${src.vm.dir}" excludes="${excludes}" includes="${includes}">
1145                 <filename name="**/doc-files/**"/>
1146             </fileset>
1147             <fileset dir="${src.test7.dir}" excludes="${excludes}" includes="${includes}">
1148                 <filename name="**/doc-files/**"/>
1149             </fileset>
1150             <fileset dir="${src.vmmagic.dir}" excludes="${excludes}" includes="${includes}">
1151                 <filename name="**/doc-files/**"/>
1152             </fileset>
1153             <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
1154                 <filename name="**/doc-files/**"/>
1155             </fileset>
1156             <fileset dir="${configure.dir}" excludes="${excludes}" includes="${includes}">
1157                 <filename name="**/doc-files/**"/>
1158             </fileset>
1159             <fileset dir="${ext.dir}" excludes="${excludes}" includes="${includes}">
1160                 <filename name="**/doc-files/**"/>
1161             </fileset>
1162             <fileset dir="${vm.dir}" excludes="${excludes}" includes="${includes}">
1163                 <filename name="**/doc-files/**"/>
1164             </fileset>
1165             <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
1166                 <include name="**/doc-files/**"/>
1167             </fileset>
1168         </copy>
1169     </target>
1170     <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
1171         <nbbrowse file="${dist.javadoc.dir}/index.html"/>
1172     </target>
1173     <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
1174     <!--
1175                 =========================
1176                 JUNIT COMPILATION SECTION
1177                 =========================
1178             -->
1179     <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
1180         <mkdir dir="${build.test.classes.dir}"/>
1181     </target>
1182     <target name="-pre-compile-test">
1183         <!-- Empty placeholder for easier customization. -->
1184         <!-- You can override this target in the ../build.xml file. -->
1185     </target>
1186     <target if="do.depend.true" name="-compile-test-depend">
1187         <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir=""/>
1188     </target>
1189     <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
1190         <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir=""/>
1191         <copy todir="${build.test.classes.dir}"/>
1192     </target>
1193     <target name="-post-compile-test">
1194         <!-- Empty placeholder for easier customization. -->
1195         <!-- You can override this target in the ../build.xml file. -->
1196     </target>
1197     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
1198     <target name="-pre-compile-test-single">
1199         <!-- Empty placeholder for easier customization. -->
1200         <!-- You can override this target in the ../build.xml file. -->
1201     </target>
1202     <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
1203         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
1204         <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
1205         <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="" srcdir=""/>
1206         <copy todir="${build.test.classes.dir}"/>
1207     </target>
1208     <target name="-post-compile-test-single">
1209         <!-- Empty placeholder for easier customization. -->
1210         <!-- You can override this target in the ../build.xml file. -->
1211     </target>
1212     <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
1213     <!--
1214                 =======================
1215                 JUNIT EXECUTION SECTION
1216                 =======================
1217             -->
1218     <target depends="init" if="have.tests" name="-pre-test-run">
1219         <mkdir dir="${build.test.results.dir}"/>
1220     </target>
1221     <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
1222         <j2seproject3:junit testincludes="**/*Test.java"/>
1223     </target>
1224     <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
1225         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
1226     </target>
1227     <target depends="init" if="have.tests" name="test-report"/>
1228     <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
1229     <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
1230     <target depends="init" if="have.tests" name="-pre-test-run-single">
1231         <mkdir dir="${build.test.results.dir}"/>
1232     </target>
1233     <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
1234         <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
1235         <j2seproject3:junit excludes="" includes="${test.includes}"/>
1236     </target>
1237     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
1238         <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
1239     </target>
1240     <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
1241     <!--
1242                 =======================
1243                 JUNIT DEBUGGING SECTION
1244                 =======================
1245             -->
1246     <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">
1247         <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
1248         <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>
1249         <delete file="${test.report.file}"/>
1250         <mkdir dir="${build.test.results.dir}"/>
1251         <j2seproject3:debug classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" classpath="${ant.home}/lib/ant.jar:${ant.home}/lib/ant-junit.jar:${debug.test.classpath}">
1252             <customize>
1253                 <syspropertyset>
1254                     <propertyref prefix="test-sys-prop."/>
1255                     <mapper from="test-sys-prop.*" to="*" type="glob"/>
1256                 </syspropertyset>
1257                 <arg value="${test.class}"/>
1258                 <arg value="showoutput=true"/>
1259                 <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>
1260                 <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>
1261             </customize>
1262         </j2seproject3:debug>
1263     </target>
1264     <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
1265         <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
1266     </target>
1267     <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
1268     <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
1269         <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
1270     </target>
1271     <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
1272     <!--
1273                 =========================
1274                 APPLET EXECUTION SECTION
1275                 =========================
1276             -->
1277     <target depends="init,compile-single" name="run-applet">
1278         <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
1279         <j2seproject1:java classname="sun.applet.AppletViewer">
1280             <customize>
1281                 <arg value="${applet.url}"/>
1282             </customize>
1283         </j2seproject1:java>
1284     </target>
1285     <!--
1286                 =========================
1287                 APPLET DEBUGGING  SECTION
1288                 =========================
1289             -->
1290     <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
1291         <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
1292         <j2seproject3:debug classname="sun.applet.AppletViewer">
1293             <customize>
1294                 <arg value="${applet.url}"/>
1295             </customize>
1296         </j2seproject3:debug>
1297     </target>
1298     <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
1299     <!--
1300                 ===============
1301                 CLEANUP SECTION
1302                 ===============
1303             -->
1304     <target name="-deps-clean-init" unless="built-clean.properties">
1305         <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
1306         <delete file="${built-clean.properties}" quiet="true"/>
1307     </target>
1308     <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
1309         <echo level="warn" message="Cycle detected: JNode was already built"/>
1310     </target>
1311     <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
1312         <mkdir dir="${build.dir}"/>
1313         <touch file="${built-clean.properties}" verbose="false"/>
1314         <property file="${built-clean.properties}" prefix="already.built.clean."/>
1315         <antcall target="-warn-already-built-clean"/>
1316         <propertyfile file="${built-clean.properties}">
1317             <entry key="${basedir}" value=""/>
1318         </propertyfile>
1319     </target>
1320     <target depends="init" name="-do-clean">
1321         <delete dir="${build.dir}"/>
1322         <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
1323     </target>
1324     <target name="-post-clean">
1325         <!-- Empty placeholder for easier customization. -->
1326         <!-- You can override this target in the ../build.xml file. -->
1327     </target>
1328     <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
1329     <target name="-check-call-dep">
1330         <property file="${call.built.properties}" prefix="already.built."/>
1331         <condition property="should.call.dep">
1332             <not>
1333                 <isset property="already.built.${call.subproject}"/>
1334             </not>
1335         </condition>
1336     </target>
1337     <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
1338         <ant antfile="${call.script}" inheritall="false" target="${call.target}">
1339             <propertyset>
1340                 <propertyref prefix="transfer."/>
1341                 <mapper from="transfer.*" to="*" type="glob"/>
1342             </propertyset>
1343         </ant>
1344     </target>
1345 </project>