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