Revision: 5814
          http://jnode.svn.sourceforge.net/jnode/?rev=5814&view=rev
Author:   lsantha
Date:     2011-06-05 09:20:29 +0000 (Sun, 05 Jun 2011)

Log Message:
-----------
Updated project files for Netbeans 7.0.

Modified Paths:
--------------
    trunk/netbeans/nbproject/build-impl.xml
    trunk/netbeans/nbproject/genfiles.properties
    trunk/netbeans/nbproject/project.properties

Modified: trunk/netbeans/nbproject/build-impl.xml
===================================================================
--- trunk/netbeans/nbproject/build-impl.xml     2011-06-05 09:14:28 UTC (rev 
5813)
+++ trunk/netbeans/nbproject/build-impl.xml     2011-06-05 09:20:29 UTC (rev 
5814)
@@ -20,6 +20,13 @@
 
         -->
 <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">
+    <fail message="Please build using Ant 1.7.1 or higher.">
+        <condition>
+            <not>
+                <antversion atleast="1.7.1"/>
+            </not>
+        </condition>
+    </fail>
     <target depends="test,jar,javadoc" description="Build and test whole 
project." name="default"/>
     <!-- 
                 ======================
@@ -48,21 +55,84 @@
     </target>
     <target 
depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property"
 name="-do-init">
         <available file="${manifest.file}" property="manifest.available"/>
-        <condition property="manifest.available+main.class">
+        <condition property="splashscreen.available">
             <and>
-                <isset property="manifest.available"/>
+                <not>
+                    <equals arg1="${application.splash}" arg2="" trim="true"/>
+                </not>
+                <available file="${application.splash}"/>
+            </and>
+        </condition>
+        <condition property="main.class.available">
+            <and>
                 <isset property="main.class"/>
                 <not>
                     <equals arg1="${main.class}" arg2="" trim="true"/>
                 </not>
             </and>
         </condition>
+        <condition property="manifest.available+main.class">
+            <and>
+                <isset property="manifest.available"/>
+                <isset property="main.class.available"/>
+            </and>
+        </condition>
+        <condition property="do.archive">
+            <not>
+                <istrue value="${jar.archive.disabled}"/>
+            </not>
+        </condition>
+        <condition property="do.mkdist">
+            <and>
+                <isset property="do.archive"/>
+                <isset property="libs.CopyLibs.classpath"/>
+                <not>
+                    <istrue value="${mkdist.disabled}"/>
+                </not>
+            </and>
+        </condition>
         <condition property="manifest.available+main.class+mkdist.available">
             <and>
                 <istrue value="${manifest.available+main.class}"/>
-                <isset property="libs.CopyLibs.classpath"/>
+                <isset property="do.mkdist"/>
             </and>
         </condition>
+        <condition property="do.archive+manifest.available">
+            <and>
+                <isset property="manifest.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+main.class.available">
+            <and>
+                <isset property="main.class.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+splashscreen.available">
+            <and>
+                <isset property="splashscreen.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+manifest.available+main.class">
+            <and>
+                <istrue value="${manifest.available+main.class}"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="manifest.available-mkdist.available">
+            <or>
+                <istrue value="${manifest.available}"/>
+                <isset property="do.mkdist"/>
+            </or>
+        </condition>
+        <condition property="manifest.available+main.class-mkdist.available">
+            <or>
+                <istrue value="${manifest.available+main.class}"/>
+                <isset property="do.mkdist"/>
+            </or>
+        </condition>
         <condition property="have.tests">
             <or/>
         </condition>
@@ -130,6 +200,7 @@
         <property name="javadoc.preview" value="true"/>
         <property name="application.args" value=""/>
         <property name="source.encoding" value="${file.encoding}"/>
+        <property name="runtime.encoding" value="${source.encoding}"/>
         <condition property="javadoc.encoding.used" 
value="${javadoc.encoding}">
             <and>
                 <isset property="javadoc.encoding"/>
@@ -145,12 +216,22 @@
         <condition property="do.depend.true">
             <istrue value="${do.depend}"/>
         </condition>
-        <condition else="" property="javac.compilerargs.jaxws" 
value="-Djava.endorsed.dirs='${jaxws.endorsed.dir}'">
+        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
+        <condition else="" property="endorsed.classpath.cmd.line.arg" 
value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
+            <length length="0" string="${endorsed.classpath}" when="greater"/>
+        </condition>
+        <condition else="false" property="jdkBug6558476">
             <and>
-                <isset property="jaxws.endorsed.dir"/>
-                <available file="nbproject/jaxws-build.xml"/>
+                <matches pattern="1\.[56]" 
string="${java.specification.version}"/>
+                <not>
+                    <os family="unix"/>
+                </not>
             </and>
         </condition>
+        <property name="javac.fork" value="${jdkBug6558476}"/>
+        <property name="jar.index" value="false"/>
+        <property name="jar.index.metainf" value="${jar.index}"/>
+        <available file="${meta.inf.dir}/persistence.xml" 
property="has.persistence.xml"/>
     </target>
     <target name="-post-init">
         <!-- Empty placeholder for easier customization. -->
@@ -211,26 +292,79 @@
             </sequential>
         </macrodef>
     </target>
-    <target name="-init-macrodef-javac">
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" 
name="-init-macrodef-javac-with-processors">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3";>
             <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"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute 
default="${build.generated.sources.dir}/ap-source-output" 
name="apgeneratedsrcdir"/>
             <attribute default="${includes}" name="includes"/>
             <attribute default="${excludes}" name="excludes"/>
             <attribute default="${javac.debug}" name="debug"/>
-            <attribute default="/does/not/exist" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
includeantruntime="false" includes="@{includes}" source="${javac.source}" 
sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}">
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <mkdir dir="@{apgeneratedsrcdir}"/>
+                <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}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
                     <classpath>
                         <path path="@{classpath}"/>
                     </classpath>
-                    <compilerarg line="${javac.compilerargs} 
${javac.compilerargs.jaxws}"/>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <compilerarg value="-processorpath"/>
+                    <compilerarg path="@{processorpath}:${empty.dir}"/>
+                    <compilerarg line="${ap.processors.internal}"/>
+                    <compilerarg 
line="${annotation.processing.processor.options}"/>
+                    <compilerarg value="-s"/>
+                    <compilerarg path="@{apgeneratedsrcdir}"/>
+                    <compilerarg line="${ap.proc.none.internal}"/>
                     <customize/>
                 </javac>
             </sequential>
         </macrodef>
+    </target>
+    <target depends="-init-ap-cmdline-properties" 
name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <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"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute 
default="${build.generated.sources.dir}/ap-source-output" 
name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <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}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target 
depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors"
 name="-init-macrodef-javac">
         <macrodef name="depend" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <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"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
@@ -247,15 +381,20 @@
             <attribute default="${build.classes.dir}" name="destdir"/>
             <sequential>
                 <fail unless="javac.includes">Must set javac.includes</fail>
-                <pathconvert pathsep="," property="javac.includes.binary">
+                <pathconvert pathsep="${line.separator}" 
property="javac.includes.binary">
                     <path>
                         <filelist dir="@{destdir}" files="${javac.includes}"/>
                     </path>
                     <globmapper from="*.java" to="*.class"/>
                 </pathconvert>
+                <tempfile deleteonexit="true" 
property="javac.includesfile.binary"/>
+                <echo file="${javac.includesfile.binary}" 
message="${javac.includes.binary}"/>
                 <delete>
-                    <files includes="${javac.includes.binary}"/>
+                    <files includesfile="${javac.includesfile.binary}"/>
                 </delete>
+                <delete>
+                    <fileset file="${javac.includesfile.binary}"/>
+                </delete>
             </sequential>
         </macrodef>
     </target>
@@ -265,7 +404,8 @@
             <attribute default="${excludes}" name="excludes"/>
             <attribute default="**" name="testincludes"/>
             <sequential>
-                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" showoutput="true">
+                <property name="junit.forkmode" value="perTest"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
showoutput="true" tempdir="${build.dir}">
                     <batchtest todir="${build.test.results.dir}"/>
                     <classpath>
                         <path path="${run.test.classpath}"/>
@@ -276,11 +416,57 @@
                     </syspropertyset>
                     <formatter type="brief" usefile="false"/>
                     <formatter type="xml"/>
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg value="-ea"/>
                     <jvmarg line="${run.jvmargs}"/>
                 </junit>
             </sequential>
         </macrodef>
     </target>
+    <target depends="-profile-pre-init, init, -profile-post-init, 
-profile-init-macrodef-profile, -profile-init-check" name="profile-init"/>
+    <target name="-profile-pre-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-profile-post-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target name="-profile-init-macrodef-profile">
+        <macrodef name="resolve">
+            <attribute name="name"/>
+            <attribute name="value"/>
+            <sequential>
+                <property name="@{name}" value="${env.@{value}}"/>
+            </sequential>
+        </macrodef>
+        <macrodef name="profile">
+            <attribute default="${main.class}" name="classname"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property environment="env"/>
+                <resolve name="profiler.current.path" 
value="${profiler.info.pathvar}"/>
+                <java classname="@{classname}" dir="${profiler.info.dir}" 
fork="true" jvm="${profiler.info.jvm}">
+                    <jvmarg value="${profiler.info.jvmargs.agent}"/>
+                    <jvmarg line="${profiler.info.jvmargs}"/>
+                    <env key="${profiler.info.pathvar}" 
path="${profiler.info.agentpath}:${profiler.current.path}"/>
+                    <arg line="${application.args}"/>
+                    <classpath>
+                        <path path="${run.classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-profile-pre-init, init, -profile-post-init, 
-profile-init-macrodef-profile" name="-profile-init-check">
+        <fail unless="profiler.info.jvm">Must set JVM to use for profiling in 
profiler.info.jvm</fail>
+        <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM 
arguments in profiler.info.jvmargs.agent</fail>
+    </target>
     <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
         <macrodef name="nbjpdastart" 
uri="http://www.netbeans.org/ns/j2se-project/1";>
             <attribute default="${main.class}" name="name"/>
@@ -332,8 +518,11 @@
             <element name="customize" optional="true"/>
             <sequential>
                 <java classname="@{classname}" dir="${work.dir}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg line="${debug-args-line}"/>
                     <jvmarg 
value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
+                    <redirector errorencoding="${runtime.encoding}" 
inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
                     <jvmarg line="${run.jvmargs}"/>
                     <classpath>
                         <path path="@{classpath}"/>
@@ -350,12 +539,16 @@
     <target name="-init-macrodef-java">
         <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1";>
             <attribute default="${main.class}" name="classname"/>
+            <attribute default="${run.classpath}" name="classpath"/>
             <element name="customize" optional="true"/>
             <sequential>
                 <java classname="@{classname}" dir="${work.dir}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
+                    <redirector errorencoding="${runtime.encoding}" 
inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
                     <jvmarg line="${run.jvmargs}"/>
                     <classpath>
-                        <path path="${run.classpath}"/>
+                        <path path="@{classpath}"/>
                     </classpath>
                     <syspropertyset>
                         <propertyref prefix="run-sys-prop."/>
@@ -366,20 +559,87 @@
             </sequential>
         </macrodef>
     </target>
+    <target name="-init-macrodef-copylibs">
+        <macrodef name="copylibs" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute default="${manifest.file}" name="manifest"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.classes.dir}" 
name="build.classes.dir.resolved"/>
+                <pathconvert 
property="run.classpath.without.build.classes.dir">
+                    <path path="${run.classpath}"/>
+                    <map from="${build.classes.dir.resolved}" to=""/>
+                </pathconvert>
+                <pathconvert pathsep=" " property="jar.classpath">
+                    <path path="${run.classpath.without.build.classes.dir}"/>
+                    <chainedmapper>
+                        <flattenmapper/>
+                        <globmapper from="*" to="lib/*"/>
+                    </chainedmapper>
+                </pathconvert>
+                <taskdef 
classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" 
classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
+                <copylibs compress="${jar.compress}" index="${jar.index}" 
indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" 
manifest="@{manifest}" 
runtimeclasspath="${run.classpath.without.build.classes.dir}">
+                    <fileset dir="${build.classes.dir}"/>
+                    <manifest>
+                        <attribute name="Class-Path" value="${jar.classpath}"/>
+                        <customize/>
+                    </manifest>
+                </copylibs>
+            </sequential>
+        </macrodef>
+    </target>
     <target name="-init-presetdef-jar">
         <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1";>
-            <jar compress="${jar.compress}" jarfile="${dist.jar}">
+            <jar compress="${jar.compress}" index="${jar.index}" 
jarfile="${dist.jar}">
                 <j2seproject1:fileset dir="${build.classes.dir}"/>
             </jar>
         </presetdef>
     </target>
-    <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"
 name="init"/>
+    <target name="-init-ap-cmdline-properties">
+        <property name="annotation.processing.enabled" value="true"/>
+        <property name="annotation.processing.processors.list" value=""/>
+        <property name="annotation.processing.processor.options" value=""/>
+        <property name="annotation.processing.run.all.processors" 
value="true"/>
+        <property name="javac.processorpath" value="${javac.classpath}"/>
+        <property name="javac.test.processorpath" 
value="${javac.test.classpath}"/>
+        <condition property="ap.supported.internal" value="true">
+            <not>
+                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
+            </not>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" 
name="-init-ap-cmdline-supported">
+        <condition else="" property="ap.processors.internal" value="-processor 
${annotation.processing.processors.list}">
+            <isfalse value="${annotation.processing.run.all.processors}"/>
+        </condition>
+        <condition else="" property="ap.proc.none.internal" value="-proc:none">
+            <isfalse value="${annotation.processing.enabled}"/>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" 
name="-init-ap-cmdline">
+        <property name="ap.cmd.line.internal" value=""/>
+    </target>
+    <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"/>
     <!--
                 ===================
                 COMPILATION SECTION
                 ===================
             -->
-    <target depends="init" name="deps-jar" unless="no.deps"/>
+    <target name="-deps-jar-init" unless="built-jar.properties">
+        <property location="${build.dir}/built-jar.properties" 
name="built-jar.properties"/>
+        <delete file="${built-jar.properties}" quiet="true"/>
+    </target>
+    <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
+        <echo level="warn" message="Cycle detected: JNode was already built"/>
+    </target>
+    <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
+        <mkdir dir="${build.dir}"/>
+        <touch file="${built-jar.properties}" verbose="false"/>
+        <property file="${built-jar.properties}" prefix="already.built.jar."/>
+        <antcall target="-warn-already-built-jar"/>
+        <propertyfile file="${built-jar.properties}">
+            <entry key="${basedir}" value=""/>
+        </propertyfile>
+    </target>
     <target depends="init,-check-automatic-build,-clean-after-automatic-build" 
name="-verify-automatic-build"/>
     <target depends="init" name="-check-automatic-build">
         <available file="${build.classes.dir}/.netbeans_automatic_build" 
property="netbeans.automatic.build"/>
@@ -395,10 +655,15 @@
         <!-- You can override this target in the ../build.xml file. -->
     </target>
     <target if="do.depend.true" name="-compile-depend">
-        <j2seproject3:depend/>
+        <pathconvert property="build.generated.subdirs">
+            <dirset dir="${build.generated.sources.dir}" 
erroronmissingdir="false">
+                <include name="*"/>
+            </dirset>
+        </pathconvert>
+        <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}"/>
     </target>
-    <target 
depends="init,deps-jar,-pre-pre-compile,-pre-compile,-compile-depend" 
if="have.sources" name="-do-compile">
-        <j2seproject3:javac/>
+    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, 
-copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
+        <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
         <copy todir="${build.classes.dir}">
             <fileset dir="${src.template.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.emu3.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
@@ -438,6 +703,12 @@
             <fileset dir="${vm.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
         </copy>
     </target>
+    <target if="has.persistence.xml" name="-copy-persistence-xml">
+        <mkdir dir="${build.classes.dir}/META-INF"/>
+        <copy todir="${build.classes.dir}/META-INF">
+            <fileset dir="${meta.inf.dir}" includes="persistence.xml"/>
+        </copy>
+    </target>
     <target name="-post-compile">
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
@@ -450,7 +721,7 @@
     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
         <fail unless="javac.includes">Must select some files in the IDE or set 
javac.includes</fail>
         <j2seproject3:force-recompile/>
-        <j2seproject3:javac excludes="" 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}"/>
+        <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}"/>
     </target>
     <target name="-post-compile-single">
         <!-- Empty placeholder for easier customization. -->
@@ -470,52 +741,60 @@
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" 
name="-do-jar-without-manifest" unless="manifest.available">
+    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive" 
name="-do-jar-without-manifest" unless="manifest.available-mkdist.available">
         <j2seproject1:jar/>
     </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" 
if="manifest.available" name="-do-jar-with-manifest" 
unless="manifest.available+main.class">
+    <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">
         <j2seproject1:jar manifest="${manifest.file}"/>
     </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" 
if="manifest.available+main.class" name="-do-jar-with-mainclass" 
unless="manifest.available+main.class+mkdist.available">
+    <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">
         <j2seproject1:jar manifest="${manifest.file}">
             <j2seproject1:manifest>
                 <j2seproject1:attribute name="Main-Class" 
value="${main.class}"/>
             </j2seproject1:manifest>
         </j2seproject1:jar>
-        <echo>To run this application from the command line without Ant, 
try:</echo>
+        <echo level="info">To run this application from the command line 
without Ant, try:</echo>
         <property location="${build.classes.dir}" 
name="build.classes.dir.resolved"/>
         <property location="${dist.jar}" name="dist.jar.resolved"/>
         <pathconvert property="run.classpath.with.dist.jar">
             <path path="${run.classpath}"/>
             <map from="${build.classes.dir.resolved}" 
to="${dist.jar.resolved}"/>
         </pathconvert>
-        <echo>java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>
+        <echo level="info">java -cp "${run.classpath.with.dist.jar}" 
${main.class}</echo>
     </target>
-    <target depends="init,compile,-pre-pre-jar,-pre-jar" 
if="manifest.available+main.class+mkdist.available" 
name="-do-jar-with-libraries">
-        <property location="${build.classes.dir}" 
name="build.classes.dir.resolved"/>
-        <pathconvert property="run.classpath.without.build.classes.dir">
-            <path path="${run.classpath}"/>
-            <map from="${build.classes.dir.resolved}" to=""/>
-        </pathconvert>
-        <pathconvert pathsep=" " property="jar.classpath">
-            <path path="${run.classpath.without.build.classes.dir}"/>
-            <chainedmapper>
-                <flattenmapper/>
-                <globmapper from="*" to="lib/*"/>
-            </chainedmapper>
-        </pathconvert>
-        <taskdef 
classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" 
classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
-        <copylibs compress="${jar.compress}" jarfile="${dist.jar}" 
manifest="${manifest.file}" 
runtimeclasspath="${run.classpath.without.build.classes.dir}">
-            <fileset dir="${build.classes.dir}"/>
-            <manifest>
-                <attribute name="Main-Class" value="${main.class}"/>
-                <attribute name="Class-Path" value="${jar.classpath}"/>
-            </manifest>
-        </copylibs>
-        <echo>To run this application from the command line without Ant, 
try:</echo>
+    <target depends="init" if="do.archive" 
name="-do-jar-with-libraries-create-manifest" unless="manifest.available">
+        <tempfile deleteonexit="true" destdir="${build.dir}" 
property="tmp.manifest.file"/>
+        <touch file="${tmp.manifest.file}" verbose="false"/>
+    </target>
+    <target depends="init" if="do.archive+manifest.available" 
name="-do-jar-with-libraries-copy-manifest">
+        <tempfile deleteonexit="true" destdir="${build.dir}" 
property="tmp.manifest.file"/>
+        <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
+    </target>
+    <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">
+        <manifest file="${tmp.manifest.file}" mode="update">
+            <attribute name="Main-Class" value="${main.class}"/>
+        </manifest>
+    </target>
+    <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">
+        <basename file="${application.splash}" 
property="splashscreen.basename"/>
+        <mkdir dir="${build.classes.dir}/META-INF"/>
+        <copy failonerror="false" file="${application.splash}" 
todir="${build.classes.dir}/META-INF"/>
+        <manifest file="${tmp.manifest.file}" mode="update">
+            <attribute name="SplashScreen-Image" 
value="META-INF/${splashscreen.basename}"/>
+        </manifest>
+    </target>
+    <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">
+        <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
+        <echo level="info">To run this application from the command line 
without Ant, try:</echo>
         <property location="${dist.jar}" name="dist.jar.resolved"/>
-        <echo>java -jar "${dist.jar.resolved}"</echo>
+        <echo level="info">java -jar "${dist.jar.resolved}"</echo>
     </target>
+    <target depends="-do-jar-with-libraries-pack" if="do.archive" 
name="-do-jar-with-libraries-delete-manifest">
+        <delete>
+            <fileset file="${tmp.manifest.file}"/>
+        </delete>
+    </target>
+    <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"/>
     <target name="-post-jar">
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
@@ -536,10 +815,14 @@
     <target name="-do-not-recompile">
         <property name="javac.includes.binary" value=""/>
     </target>
-    <target depends="init,-do-not-recompile,compile-single" name="run-single">
+    <target depends="init,compile-single" name="run-single">
         <fail unless="run.class">Must select one file in the IDE or set 
run.class</fail>
         <j2seproject1:java classname="${run.class}"/>
     </target>
+    <target depends="init,compile-test-single" name="run-test-with-main">
+        <fail unless="run.class">Must select one file in the IDE or set 
run.class</fail>
+        <j2seproject1:java classname="${run.class}" 
classpath="${run.test.classpath}"/>
+    </target>
     <!--
                 =================
                 DEBUGGING SECTION
@@ -548,6 +831,9 @@
     <target depends="init" if="netbeans.home" name="-debug-start-debugger">
         <j2seproject1:nbjpdastart name="${debug.class}"/>
     </target>
+    <target depends="init" if="netbeans.home" 
name="-debug-start-debugger-main-test">
+        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" 
name="${debug.class}"/>
+    </target>
     <target depends="init,compile" name="-debug-start-debuggee">
         <j2seproject3:debug>
             <customize>
@@ -564,7 +850,12 @@
         <fail unless="debug.class">Must select one file in the IDE or set 
debug.class</fail>
         <j2seproject3:debug classname="${debug.class}"/>
     </target>
-    <target 
depends="init,-do-not-recompile,compile-single,-debug-start-debugger,-debug-start-debuggee-single"
 if="netbeans.home" name="debug-single"/>
+    <target 
depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single"
 if="netbeans.home" name="debug-single"/>
+    <target depends="init,compile-test-single" if="netbeans.home" 
name="-debug-start-debuggee-main-test">
+        <fail unless="debug.class">Must select one file in the IDE or set 
debug.class</fail>
+        <j2seproject3:debug classname="${debug.class}" 
classpath="${debug.test.classpath}"/>
+    </target>
+    <target 
depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test"
 if="netbeans.home" name="debug-test-with-main"/>
     <target depends="init" name="-pre-debug-fix">
         <fail unless="fix.includes">Must set fix.includes</fail>
         <property name="javac.includes" value="${fix.includes}.java"/>
@@ -574,11 +865,77 @@
     </target>
     <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" 
name="debug-fix"/>
     <!--
+                =================
+                PROFILING SECTION
+                =================
+            -->
+    <target depends="profile-init,compile" description="Profile a project in 
the IDE." if="netbeans.home" name="profile">
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile/>
+    </target>
+    <target depends="profile-init,compile-single" description="Profile a 
selected class in the IDE." if="netbeans.home" name="profile-single">
+        <fail unless="profile.class">Must select one file in the IDE or set 
profile.class</fail>
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile classname="${profile.class}"/>
+    </target>
+    <!--
+                =========================
+                APPLET PROFILING  SECTION
+                =========================
+            -->
+    <target depends="profile-init,compile-single" if="netbeans.home" 
name="profile-applet">
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile classname="sun.applet.AppletViewer">
+            <customize>
+                <arg value="${applet.url}"/>
+            </customize>
+        </profile>
+    </target>
+    <!--
+                =========================
+                TESTS PROFILING  SECTION
+                =========================
+            -->
+    <target depends="profile-init,compile-test-single" if="netbeans.home" 
name="profile-test-single">
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" 
showoutput="true">
+            <env key="${profiler.info.pathvar}" 
path="${profiler.info.agentpath}:${profiler.current.path}"/>
+            <jvmarg value="${profiler.info.jvmargs.agent}"/>
+            <jvmarg line="${profiler.info.jvmargs}"/>
+            <test name="${profile.class}"/>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+            </classpath>
+            <syspropertyset>
+                <propertyref prefix="test-sys-prop."/>
+                <mapper from="test-sys-prop.*" to="*" type="glob"/>
+            </syspropertyset>
+            <formatter type="brief" usefile="false"/>
+            <formatter type="xml"/>
+        </junit>
+    </target>
+    <!--
                 ===============
                 JAVADOC SECTION
                 ===============
             -->
-    <target depends="init" name="-javadoc-build">
+    <target depends="init" if="have.sources" name="-javadoc-build">
         <mkdir dir="${dist.javadoc.dir}"/>
         <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}">
             <classpath>
@@ -692,7 +1049,123 @@
             <fileset dir="${vm.dir}" excludes="${excludes}" 
includes="${includes}">
                 <filename name="**/*.java"/>
             </fileset>
+            <fileset dir="${build.generated.sources.dir}" 
erroronmissingdir="false">
+                <include name="**/*.java"/>
+            </fileset>
         </javadoc>
+        <copy todir="${dist.javadoc.dir}">
+            <fileset dir="${src.template.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.emu3.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.core.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.emu2.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.apps.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.emu.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.install.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.driver.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.fs.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test2.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.awt.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.desktop.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.driver2.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.font.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test3.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.thinlet.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.driver3.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.net.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test4.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.shell.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test5.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.driver4.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.sound.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test6.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.textui.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.driver5.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.nanoxml.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.mmtk-vm.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.vm.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.test7.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.vmmagic.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${src.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${configure.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${ext.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${vm.dir}" excludes="${excludes}" 
includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${build.generated.sources.dir}" 
erroronmissingdir="false">
+                <include name="**/doc-files/**"/>
+            </fileset>
+        </copy>
     </target>
     <target depends="init,-javadoc-build" if="netbeans.home" 
name="-javadoc-browse" unless="no.javadoc.preview">
         <nbbrowse file="${dist.javadoc.dir}/index.html"/>
@@ -713,8 +1186,8 @@
     <target if="do.depend.true" name="-compile-test-depend">
         <j2seproject3:depend classpath="${javac.test.classpath}" 
destdir="${build.test.classes.dir}" srcdir=""/>
     </target>
-    <target 
depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend"
 if="have.tests" name="-do-compile-test">
-        <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" srcdir=""/>
+    <target 
depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend"
 if="have.tests" name="-do-compile-test">
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" 
classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" 
srcdir=""/>
         <copy todir="${build.test.classes.dir}"/>
     </target>
     <target name="-post-compile-test">
@@ -726,10 +1199,10 @@
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
-    <target 
depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" 
if="have.tests" name="-do-compile-test-single">
+    <target 
depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" 
if="have.tests" name="-do-compile-test-single">
         <fail unless="javac.includes">Must select some files in the IDE or set 
javac.includes</fail>
         <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
-        <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" 
sourcepath="" srcdir=""/>
+        <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=""/>
         <copy todir="${build.test.classes.dir}"/>
     </target>
     <target name="-post-compile-test-single">
@@ -749,7 +1222,7 @@
         <j2seproject3:junit testincludes="**/*Test.java"/>
     </target>
     <target depends="init,compile-test,-pre-test-run,-do-test-run" 
if="have.tests" name="-post-test-run">
-        <fail if="tests.failed">Some tests failed; see details above.</fail>
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests 
failed; see details above.</fail>
     </target>
     <target depends="init" if="have.tests" name="test-report"/>
     <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
@@ -762,9 +1235,9 @@
         <j2seproject3:junit excludes="" includes="${test.includes}"/>
     </target>
     <target 
depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" 
if="have.tests" name="-post-test-run-single">
-        <fail if="tests.failed">Some tests failed; see details above.</fail>
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests 
failed; see details above.</fail>
     </target>
-    <target 
depends="init,-do-not-recompile,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single"
 description="Run single unit test." name="test-single"/>
+    <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"/>
     <!--
                 =======================
                 JUNIT DEBUGGING SECTION
@@ -791,7 +1264,7 @@
     <target depends="init,compile-test" if="netbeans.home+have.tests" 
name="-debug-start-debugger-test">
         <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" 
name="${test.class}"/>
     </target>
-    <target 
depends="init,-do-not-recompile,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test"
 name="debug-test"/>
+    <target 
depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test"
 name="debug-test"/>
     <target depends="init,-pre-debug-fix,compile-test-single" 
if="netbeans.home" name="-do-debug-fix-test">
         <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
     </target>
@@ -828,14 +1301,45 @@
                 CLEANUP SECTION
                 ===============
             -->
-    <target depends="init" name="deps-clean" unless="no.deps"/>
+    <target name="-deps-clean-init" unless="built-clean.properties">
+        <property location="${build.dir}/built-clean.properties" 
name="built-clean.properties"/>
+        <delete file="${built-clean.properties}" quiet="true"/>
+    </target>
+    <target if="already.built.clean.${basedir}" 
name="-warn-already-built-clean">
+        <echo level="warn" message="Cycle detected: JNode was already built"/>
+    </target>
+    <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
+        <mkdir dir="${build.dir}"/>
+        <touch file="${built-clean.properties}" verbose="false"/>
+        <property file="${built-clean.properties}" 
prefix="already.built.clean."/>
+        <antcall target="-warn-already-built-clean"/>
+        <propertyfile file="${built-clean.properties}">
+            <entry key="${basedir}" value=""/>
+        </propertyfile>
+    </target>
     <target depends="init" name="-do-clean">
         <delete dir="${build.dir}"/>
-        <delete dir="${dist.dir}"/>
+        <delete dir="${dist.dir}" followsymlinks="false" 
includeemptydirs="true"/>
     </target>
     <target name="-post-clean">
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
     <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean 
build products." name="clean"/>
+    <target name="-check-call-dep">
+        <property file="${call.built.properties}" prefix="already.built."/>
+        <condition property="should.call.dep">
+            <not>
+                <isset property="already.built.${call.subproject}"/>
+            </not>
+        </condition>
+    </target>
+    <target depends="-check-call-dep" if="should.call.dep" 
name="-maybe-call-dep">
+        <ant antfile="${call.script}" inheritall="false" 
target="${call.target}">
+            <propertyset>
+                <propertyref prefix="transfer."/>
+                <mapper from="transfer.*" to="*" type="glob"/>
+            </propertyset>
+        </ant>
+    </target>
 </project>

Modified: trunk/netbeans/nbproject/genfiles.properties
===================================================================
--- trunk/netbeans/nbproject/genfiles.properties        2011-06-05 09:14:28 UTC 
(rev 5813)
+++ trunk/netbeans/nbproject/genfiles.properties        2011-06-05 09:20:29 UTC 
(rev 5814)
@@ -1,8 +1,8 @@
 nbbuild.xml.data.CRC32=30b364ec
 nbbuild.xml.script.CRC32=ce58936d
-nbbuild.xml.stylesheet.CRC32=958a1d3e
+nbbuild.xml.stylesheet.CRC32=28e38971@1.43.1.45
 # This file is used by a NetBeans-based IDE to track changes in generated 
files such as build-impl.xml.
 # Do not edit this file. You may delete it but then the IDE will never 
regenerate such files for you.
 nbproject/build-impl.xml.data.CRC32=30b364ec
-nbproject/build-impl.xml.script.CRC32=dccf72ee
-nbproject/build-impl.xml.stylesheet.CRC32=65b8de21
+nbproject/build-impl.xml.script.CRC32=1159414b
+nbproject/build-impl.xml.stylesheet.CRC32=0c01fd8e@1.43.1.45

Modified: trunk/netbeans/nbproject/project.properties
===================================================================
--- trunk/netbeans/nbproject/project.properties 2011-06-05 09:14:28 UTC (rev 
5813)
+++ trunk/netbeans/nbproject/project.properties 2011-06-05 09:20:29 UTC (rev 
5814)
@@ -5,6 +5,7 @@
 # This directory is removed when the project is cleaned:
 build.dir=build
 build.generated.dir=${build.dir}/generated
+build.generated.sources.dir=${build.dir}/generated-sources
 # Only compile against the classpath explicitly listed here:
 build.sysclasspath=ignore
 build.test.classes.dir=${build.dir}/test/classes


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Discover what all the cheering's about.
Get your free trial download today. 
http://p.sf.net/sfu/quest-dev2dev2 
_______________________________________________
Jnode-svn-commits mailing list
Jnode-svn-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jnode-svn-commits

Reply via email to