You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by hi...@apache.org on 2010/05/09 10:26:06 UTC

svn commit: r942511 [5/5] - in /harmony/enhanced/java/branches/java6: ./ classlib/ classlib/depends/libs/ classlib/make/ classlib/modules/accessibility/ classlib/modules/activation/ classlib/modules/annotation/ classlib/modules/applet/ classlib/modules...

Modified: harmony/enhanced/java/branches/java6/jdktools/modules/jpda/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/jdktools/modules/jpda/build.xml?rev=942511&r1=942510&r2=942511&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/jdktools/modules/jpda/build.xml (original)
+++ harmony/enhanced/java/branches/java6/jdktools/modules/jpda/build.xml Sun May  9 08:26:02 2010
@@ -19,35 +19,16 @@
 <project name="JPDA Build" default="build" basedir=".">
     <description>Build for JPDA component</description>
 
-    <!-- import common properties -->
-    <property name="tests.build.output" location="${basedir}/../../build/tests" />
-    <import file="../../make/properties.xml" />
-
-    <property name="tests.output" location="../../build/test_report" />
+    <property name="hy.module" value="jpda" />
     <property name="hy.hdk" location="../../deploy" />
-    <property name="hy.build" location="bin/main" />
-    
-    <!-- filename for tests exclude list -->
-    <property name="jpda.exclude.file" location="${hy.hdk}/build/jdktools.jpda.exclude" />
-
-    <fileset id="classes" dir="${hy.build}">
-        <or>
-            <present targetdir="src/main/java" />
-            <present targetdir="src/main/java">
-                <mapper type="regexp"
-                        from="^(.*?)(\$$[^/\\\.]*)?\.class$$"
-                        to="\1.java"/>
-            </present>
-        </or>
-    </fileset>
-
-    <target name="fetch-depends">
-        <fetch dep="jdt.jdi.jar"/>
-        <fetch dep="jdt.jdimodel.jar"/>
-        <fetch dep="icu"/>
-    </target>
+    <import file="../../make/properties.xml" />
+    <property name="depends.dir" location="${common.resources}/depends" />
+    <import file="${hy.hdk}/build/ant/properties.xml" />
+    <import file="${hy.hdk}/build/ant/depends.xml" />
+    <property file="../../make/depends.properties" />
+    <property file="${common.resources}/make/depends.properties" />
 
-    <target name="check-depends">
+    <target name="check-depends" unless="skip.java.build">
         <check-one-file src="${jdt.jdi.jar.url}"
                         dest="${jdt.jdi.jar}" />
         <check-one-file src="${jdt.jdimodel.jar.url}"
@@ -55,11 +36,18 @@
         <check-one-file src="${icu.url}" dest="${icu.jar}" />
     </target>
 
-    <target name="build" depends="check-depends, build-java, build-native" />
+    <target name="fetch-depends" unless="skip.java.build">
+        <fetch dep="jdt.jdi.jar"/>
+        <fetch dep="jdt.jdimodel.jar"/>
+        <fetch dep="icu"/>
+    </target>
 
-    <target name="clean" depends="clean-java, clean-native" />
+    <target name="build"
+            depends="check-depends,
+                     -build-jar,-copy-jars,-build-native,
+                     -test-jar" />
 
-    <target name="test" depends="test-module">
+    <target name="test" depends="-test-module">
         <fail message="Some tests failed">
             <condition>
                 <or>
@@ -70,17 +58,66 @@
         </fail>
     </target>
 
-    <!-- Build Java code -->
-    <target name="build-java" depends="compile-java, build-jar, copy-jars" />
+    <!-- internal target for local and global test run sequence -->
+    <target name="-test-module" depends="build,-run-tests" />
+
+    <target name="clean" depends="-clean-java,-clean-native,-clean-test" />
+
+    <target name="-clean-java" unless="skip.java.build">
+        <echo message="Cleaning ${hy.module} classes" />
+
+        <delete file="${hy.jdk}/lib/jdtstub.jar" />
+        <delete file="${hy.jdk}/lib/jdtstub-src.jar" />
+
+        <delete includeemptydirs="true" failonerror="false">
+            <fileset dir="bin/main" />
+            <fileset dir="bin/test" />
+        </delete>
+    </target>
+
+    <target name="-clean-native" unless="skip.native.build"
+            depends="-clean-native-common,-clean-native-windows" />
+
+    <target name="-clean-native-common" unless="skip.native.build">
+        <echo message="Cleaning ${hy.module} natives" />
+        <make dir="src/main/native/jdwp/${hy.os.family}/agent"
+              target="clean">
+            <make-elements>
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
+            </make-elements>
+        </make>
+
+        <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_socket"
+              target="clean">
+            <make-elements>
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
+            </make-elements>
+        </make>
+    </target>
+
+    <target name="-clean-native-windows" if="is.windows"
+            unless="skip.native.build">
+        <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_shmem"
+              target="clean">
+            <make-elements>
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
+            </make-elements>
+        </make>
+    </target>
+
+    <target name="-clean-test" unless="skip.test.build">
+        <delete dir="${tests.hdk.dir}" failonerror="false" />
+        <delete failonerror="false" dir="bin/test"/>
+    </target>
 
-    <target name="compile-java">
-        <echo message="Compiling JPDA classes" />
+    <target name="-compile-java" unless="skip.java.build">
+        <echo message="Compiling ${hy.module} classes" />
         <ensure-javac/>
-        <mkdir dir="${hy.build}" />
+        <mkdir dir="bin/main" />
 
         <hy.javac sourcepath=""
                srcdir="src/main/java"
-               destdir="${hy.build}">
+               destdir="bin/main">
 
             <!-- HDK class library -->
             <classpath>
@@ -98,33 +135,35 @@
     </target>
 
     <!-- create jdtstub.jar to resolve JDI implementation dependency -->
-    <target name="build-jar" depends="svn-info">
-        <mkdir dir="${jdktools.deploy.dir}/lib" />
+    <target name="-build-jar" unless="skip.java.build"
+            depends="-svn-info,-compile-java">
+        <mkdir dir="${hy.jdk}/lib" />
 
-        <hy.jar.bin destfile="${jdktools.deploy.dir}/lib/jdtstub.jar"
+        <hy.jar.bin destfile="${hy.jdk}/lib/jdtstub.jar"
                     manifest="META-INF/MANIFEST.MF">
-            <fileset refid="classes" />
+            <fileset dir="bin/main" />
         </hy.jar.bin>
 
-        <hy.jar.src destfile="${jdktools.deploy.dir}/lib/jdtstub-src.jar">
+        <hy.jar.src destfile="${hy.jdk}/lib/jdtstub-src.jar">
             <fileset dir="src/main/java" />
         </hy.jar.src>
     </target>
 
-    <!-- copy all required jars with JDI implementation and dependent classes -->
-    <target name="copy-jars">
-        <mkdir dir="${jdktools.deploy.dir}/lib" />
-        <copy todir="${jdktools.deploy.dir}/lib" flatten="true">
+    <!-- copy all required jars with JDI implementation and dependent
+         classes -->
+    <target name="-copy-jars" unless="skip.java.build">
+        <mkdir dir="${hy.jdk}/lib" />
+        <copy todir="${hy.jdk}/lib" flatten="true">
             <fileset file="${icu.jar}"/>
             <fileset file="${jdt.jdimodel.jar}"/>
         </copy>
     </target>
 
     <!-- Build native code -->
-    <target name="build-native"
+    <target name="-build-native" unless="skip.native.build"
             depends="-build-native-common,-build-native-windows" />
 
-    <target name="-build-native-common">
+    <target name="-build-native-common" unless="skip.native.build">
         <!-- create jdwpcfg.h to record the build level -->
         <tstamp>
             <format property="BUILD_LEVEL" pattern="dd-MM-yyyy"/>
@@ -132,199 +171,71 @@
         <echo message="#define BUILD_LEVEL &quot;${BUILD_LEVEL}&quot;${line.separator}"
                 file="src/main/native/include/jdwpcfg.h"/>
 
-        <echo message="Compiling JPDA natives" />
+        <echo message="Compiling ${hy.module} natives" />
 
         <!-- Build agent shared lib -->
         <make dir="src/main/native/jdwp/${hy.os.family}/agent">
             <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
             </make-elements>
         </make>
         
         <!-- Build socket transport shared lib -->
         <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_socket">
             <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
             </make-elements>
         </make>
     </target>
 
-    <target name="-build-native-windows" if="is.windows">
+    <target name="-build-native-windows" if="is.windows"
+            unless="skip.native.build">
         <!-- Build shared memory transport shared lib on Windows -->
         <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_shmem">
             <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
-            </make-elements>
-        </make>
-
-    </target>
-
-    <!-- internal target for local and global test run sequence -->
-    <target name="test-module" depends="build-tests, prepare-exclude, run-tests" />
-
-    <!-- Clean Java -->
-    <target name="clean-java">
-        <echo message="Cleaning JPDA classes" />
-
-        <delete file="${jdktools.deploy.dir}/lib/jdtstub.jar" />
-        <delete file="${jdktools.deploy.dir}/lib/jdtstub-src.jar" />
-
-        <delete includeemptydirs="true" failonerror="false">
-            <!--fileset refid="classes" /-->
-            <fileset dir="${hy.build}" />
-            <fileset dir="${tests.build.output}/classes" />
-        </delete>
-    </target>
-
-    <!-- Clean natives -->
-    <target name="clean-native"
-            depends="-clean-native-common,-clean-native-windows" />
-
-    <target name="-clean-native-common">
-        <echo message="Cleaning JPDA natives" />
-        <make dir="src/main/native/jdwp/${hy.os.family}/agent"
-              target="clean">
-            <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
+                <arg line="TOOLSDLLPATH=${hy.jdk}/jre/bin/" />
             </make-elements>
         </make>
 
-        <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_socket"
-              target="clean">
-            <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
-            </make-elements>
-        </make>
-    </target>
-
-    <target name="-clean-native-windows" if="is.windows">
-        <make dir="src/main/native/jdwp/${hy.os.family}/transport/dt_shmem"
-              target="clean">
-            <make-elements>
-                <arg line="TOOLSDLLPATH=${jdktools.deploy.dir}/jre/bin/" />
-            </make-elements>
-        </make>
     </target>
 
-    <!-- Compile JDWP tests always with debug info included -->
-    <target name="build-tests" >
-        <echo message="Compiling JPDA tests" />
-        <ensure-javac/>
-        <mkdir dir="${tests.build.output}/classes" />
-        <hy.javac
-            srcdir="src/test/java"
-            destdir="${tests.build.output}/classes"
-            sourcepath=""
-            debug="on">
+    <target name="-test-jar" unless="skip.test.build"
+            depends="-svn-info,-compile-tests">
+        <mkdir dir="${tests.hdk.dir}" />
 
-            <!-- HDK class library -->
-            <classpath>
-                <fileset dir="${hy.hdk}/jdk/jre/lib/boot">
-                    <include name="**/*.jar" />
-                    <exclude name="**/*-src.jar" />
-                </fileset>
-            </classpath>
-            
-            <classpath>
-                <pathelement path="${tests.build.output}/classes"/>
-                <pathelement path="${junit.jar}"/>
-            </classpath>
-        </hy.javac>
-    </target>
+        <copy file="make/run-test.xml" tofile="${tests.hdk.dir}/build.xml" />
 
-    <target name="copy-test-resources">
-        <copy todir="${tests.build.output}/classes" includeemptydirs="false">
-            <fileset dir="src/test/resources"/>
+        <hy.jar.bin destfile="${tests.hdk.dir}/${hy.module}_tests.jar">
+            <fileset dir="bin/test" />
+        </hy.jar.bin>
+ 
+        <mkdir dir="${tests.excludes.hdk.dir}"/>
+        <copy todir="${tests.excludes.hdk.dir}">
+            <fileset dir="make" includes="exclude*"/>
+            <filterchain>
+                <tokenfilter>
+                    <replaceregex pattern="\.java" replace="\.class" flags="g"/>
+                </tokenfilter>
+            </filterchain>
         </copy>
     </target>
 
-    <target name="prepare-exclude">
-        <echo message="JPDA exclude list: ${jpda.exclude.file}" />
-        <prepare-exclude-list moduleName="jpda" dir="./make"
-                             result="${jpda.exclude.file}" />
-    </target>
-
-    <target name="run-tests" depends="build-tests, prepare-exclude, copy-test-resources">
-
-        <property name="test.jre.home" value="${jdktools.deploy.dir}/jre" />
-        <property name="test.jre.jvm" value="${test.jre.home}/bin/java" />
-        <property name="test.debugger.jvm" value="${test.jre.jvm}" />
-        <property name="test.debuggee.jvm" value="${test.jre.jvm}" />
-	
-        <echo message="Running JPDA tests" />
-        <echo message="  Debugger JVM=${test.debugger.jvm}" />
-        <echo message="  Debuggee JVM=${test.debuggee.jvm}" />
-
-        <mkdir dir="${tests.output}" />
-
-        <junit fork="yes"
-                       forkmode="${hy.test.forkmode}"
-                       timeout="${hy.test.timeout}"
-                       printsummary="withOutAndErr"
-                       errorproperty="test.errors"
-                       failureproperty="test.failures"
-                       showoutput="off"
-                       dir="${tests.output}"
-                       jvm="${test.debugger.jvm}">
-
-            <!-- JVM arguments for debugger process -->
-            <jvmarg line="${hy.test.vmargs}" />
-            
-            <!-- JVM path and arguments for debuggee process -->
-            <jvmarg value="-Djpda.settings.debuggeeJavaPath=${test.debuggee.jvm}" />
-            <jvmarg value="-Djpda.settings.debuggeeVMExtraOptions=${hy.test.vmargs}" />
-
-            <classpath>
-                <pathelement path="${tests.build.output}/classes"/>
-            </classpath>
-
-            <formatter type="xml" />
-
-            <test name="${test.case}" todir="${tests.output}" if="test.case" />
-
-            <!-- short running tests-->
-            <batchtest todir="${tests.output}" haltonfailure="off" unless="test.case">
-
-                <fileset dir="src/test/java">
-                    <!-- if ${test.case}     -->
-                    <include name="${converted.tc}" if="test.case" />
-
-                    <!-- unless ${test.case} -->
-                    <include name="**/*Test.java" unless="test.case" />
-                    <exclude name="**/org/apache/harmony/jpda/tests/jdwp/MultiSession/*Test.java" unless="test.case" />
-                    <exclude name="**/org/apache/harmony/jpda/tests/jdwp/ThreadReference/StopTest.java" unless="test.case" />
-                    <exclude name="**/org/apache/harmony/jpda/tests/jdwp/VirtualMachine/HoldEventsTest.java" unless="test.case" />
-                    <excludesfile name="${jpda.exclude.file}" unless="test.case" />
-                </fileset>
-            </batchtest>
-
-            <!-- long running tests-->
-            <batchtest todir="${tests.output}" haltonfailure="off" unless="test.case">
-                <fileset dir="src/test/java">
-                    <!-- if ${test.case}     -->
-                    <include name="${converted.tc}" if="test.case" />
-
-                    <!-- unless ${test.case} -->
-                    <include name="**/org/apache/harmony/jpda/tests/jdwp/MultiSession/*Test.java" unless="test.case" />
-                    <include name="**/org/apache/harmony/jpda/tests/jdwp/ThreadReference/StopTest.java" unless="test.case" />
-                    <include name="**/org/apache/harmony/jpda/tests/jdwp/VirtualMachine/HoldEventsTest.java" unless="test.case" />
-                    <excludesfile name="${jpda.exclude.file}" unless="test.case" />
-                </fileset>
-            </batchtest>
-        </junit>
-
-        <antcall target="touch-failures-file" />
-        <antcall target="touch-errors-file" />
-    </target>
-
-    <target name="touch-failures-file" if="test.failures">
-        <echo file="${tests.output}/test.failures"
-            append="true">jpda${line.separator}</echo>
+    <target name="-compile-tests" unless="skip.test.build">
+        <compile-tests description="${hy.module} tests">
+            <javac-elements>
+                <src>
+                    <pathelement location="src/test/java" />
+                </src>
+                <classpath>
+                    <pathelement path="${hy.jdk}/lib/tools.jar"/>
+                </classpath>
+                <!-- TOFIX: hy.javac debug="on" ? -->
+            </javac-elements>
+        </compile-tests>
     </target>
 
-    <target name="touch-errors-file" if="test.errors">
-        <echo file="${tests.output}/test.errors"
-            append="true">jpda${line.separator}</echo>
+    <target name="-run-tests" depends="-test-jar">
+        <ant dir="${tests.hdk.dir}" target="test-module" />
     </target>
 
 </project>

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/.classpath
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/.project
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/.settings/org.eclipse.jdt.core.prefs
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/.settings/org.eclipse.jdt.ui.prefs
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/META-INF/MANIFEST.MF
            ('svn:mergeinfo' removed)

Modified: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml?rev=942511&r1=942510&r2=942511&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml (original)
+++ harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml Sun May  9 08:26:02 2010
@@ -16,27 +16,21 @@
     limitations under the License.
 -->
 
-<project name="Tools Build" default="build" basedir=".">
-    <description>Build for Tools component</description>
+<project name="JRE Tools Build" default="build" basedir=".">
+    <description>Build for JRE Tools component</description>
 
-    <!-- import common properties -->
-    <import file="${basedir}/../../make/properties.xml" />
-
-    <property name="tests.output" location="../../build/test_report" />
+    <property name="hy.module" value="jretools" />
     <property name="hy.hdk" location="../../deploy" />
-
-    <!-- filename for tests exclude list -->
-    <property name="tools.exclude.file"
-              location="${hy.hdk}/build/jretools.tools.exclude" />
+    <import file="../../make/properties.xml" />
+    <property name="depends.dir" location="${common.resources}/depends" />
+    <import file="${hy.hdk}/build/ant/properties.xml" />
+    <import file="${hy.hdk}/build/ant/depends.xml" />
+    <property file="../../make/depends.properties" />
+    <property file="${common.resources}/make/depends.properties" />
     
-    <target name="build" depends="build-java" />
-    <target name="build-java" depends="compile-java, build-jar" />
-    <target name="build-native" />
-
-    <target name="clean" depends="clean-java" />
-    <target name="clean-native" />
+    <target name="build" depends="-build-jar,-test-jar" />
 
-    <target name="test" depends="test-module">
+    <target name="test" depends="-test-module">
         <fail message="Some tests failed">
             <condition>
                 <or>
@@ -48,18 +42,23 @@
     </target>
 
     <!-- internal target for local and global test run sequence -->
-    <target name="test-module" depends="build-tests, prepare-exclude, run-tests" />
+    <target name="-test-module" depends="build,-run-tests" />
 
-    <target name="clean-java">
-        <echo message="Cleaning TOOLS classes" />
+    <target name="clean" depends="-clean-java,-clean-test" />
+
+    <target name="-clean-java" unless="skip.java.build">
+        <delete file="${hy.jre}/lib/tools.jar" />
+        <delete file="${hy.jre}/lib/tools-src.jar" />
+        <delete dir="bin/main" includeemptydirs="true" failonerror="false" />
+    </target>
 
-        <delete file="${jretools.deploy.dir}/lib/tools.jar" />
-        <delete file="${jretools.deploy.dir}/lib/tools-src.jar" />
-        <delete dir="bin" includeemptydirs="true" failonerror="false" />
+    <target name="-clean-test" unless="skip.test.build">
+        <delete dir="${tests.hdk.dir}" failonerror="false" />
+        <delete failonerror="false" dir="bin/test"/>
     </target>
 
-    <target name="compile-java">
-        <echo message="Compiling TOOLS classes" />
+    <target name="-compile-java" unless="skip.java.build">
+        <echo message="Compiling ${hy.module} classes" />
         <ensure-javac/>
         <mkdir dir="bin/main" />
 
@@ -67,8 +66,10 @@
                srcdir="src/main/java"
                destdir="bin/main">
 
+            <compilerarg line="${build.compilerarg}" />
+
             <bootclasspath>
-                <fileset dir="${hy.hdk}/jdk/jre/lib/boot">
+                <fileset dir="${hy.jdk}/jre/lib/boot">
                     <include name="**/*.jar" />
                 </fileset>
                 <fileset dir="${hy.hdk}/lib">
@@ -78,111 +79,66 @@
         </hy.javac>
     </target>
 
-    <target name="build-jar" depends="svn-info">
-        <mkdir dir="${jretools.deploy.dir}/lib" />
+    <target name="findbugs" depends="-build-jar">
+        <run-findBugs
+            jarFile="${hy.jre}/lib/tools.jar"
+            excludeFilter="make/findbugs-exclude-filter.xml"
+            outputFile="${findBugs.report}/${hy.module}.xml"/>
+    </target>
+
+    <target name="-build-jar" unless="skip.java.build"
+            depends="-svn-info,-compile-java">
+        <mkdir dir="${hy.jre}/lib" />
 
-        <hy.jar.bin destfile="${jretools.deploy.dir}/lib/tools.jar"
+        <hy.jar.bin destfile="${hy.jre}/lib/tools.jar"
              manifest="META-INF/MANIFEST.MF">
             <fileset dir="bin/main" />
-
             <fileset dir="src/main/java">
                 <exclude name="**/*.java" />
             </fileset>
         </hy.jar.bin>
 
-        <hy.jar.src destfile="${jretools.deploy.dir}/lib/tools-src.jar">
+        <hy.jar.src destfile="${hy.jre}/lib/tools-src.jar">
             <fileset dir="src/main/java" />
         </hy.jar.src>
     </target>
 
-    <target name="build-tests">
-        <echo message="Compiling TOOLS tests" />
-        <ensure-javac/>
-        <mkdir dir="bin/test" />
-
-        <hy.javac srcdir="src/test/java"
-                  destdir="bin/test"
-                  sourcepath=""
-                  debug="on">
-
-            <bootclasspath>
-                <fileset dir="${hy.hdk}/jdk/jre/lib/boot">
-                    <include name="**/*.jar" />
-                </fileset>
-            </bootclasspath>
-            <classpath>
-                <pathelement path="${jretools.deploy.dir}/lib/tools.jar"/>
-                <pathelement path="${junit.jar}"/>
-            </classpath>
-            <classpath location="bin/test" />
-
-            <!-- temporarely exclude one test that breaks compilation -->
-            <exclude name="**/javah/Test02.java"/>
-        </hy.javac>
-    </target>
-
-    <target name="prepare-exclude">
-        <echo message="TOOLS exclude list: ${tools.exclude.file}" />
-        <prepare-exclude-list moduleName="tools" dir="./make"
-                             result="${tools.exclude.file}" />
-    </target>
-
-    <target name="run-tests" depends="build-tests, prepare-exclude">
-
-        <property name="test.jre.home" value="${jretools.deploy.dir}" />
-
-        <echo message="Running TOOLS tests" />
-        <echo message="test.jre.home=${test.jre.home}" />
-
-        <mkdir dir="${tests.output}" />
-
-        <junit fork="yes"
-                       forkmode="${hy.test.forkmode}"
-                       timeout="${hy.test.timeout}"
-                       printsummary="withOutAndErr"
-                       errorproperty="test.errors"
-                       failureproperty="test.failures"
-                       showoutput="on"
-                       dir="${tests.output}"
-                       jvm="${test.jre.home}/bin/java">
+    <target name="-test-jar" unless="skip.test.build"
+            depends="-svn-info,-compile-tests">
+        <mkdir dir="${tests.hdk.dir}" />
 
-            <jvmarg line="${hy.test.vmargs}" />
+        <copy file="make/run-test.xml" tofile="${tests.hdk.dir}/build.xml" />
 
-            <classpath>
-                <pathelement path="bin/test"/>
-                <pathelement path="${jretools.deploy.dir}/lib/tools.jar"/>
-            </classpath>
-
-            <formatter type="xml" />
-
-            <test name="${test.case}" todir="${tests.output}"
-                              if="test.case" />
-
-            <batchtest todir="${tests.output}" haltonfailure="no"
-                                   unless="test.case">
-
-                <fileset dir="src/test/java">
-                    <!-- if ${test.case}     -->
-                    <include name="${converted.tc}" if="test.case" />
-
-                    <!-- unless ${test.case} -->
-                    <include name="**/*Test.java" unless="test.case" />
-                    <excludesfile name="${tools.exclude.file}" unless="test.case" />
-                </fileset>
-            </batchtest>
-        </junit>
-        <antcall target="touch-failures-file" />
-        <antcall target="touch-errors-file" />
-    </target>
+        <hy.jar.bin destfile="${tests.hdk.dir}/${hy.module}_tests.jar">
+            <fileset dir="bin/test" />
+        </hy.jar.bin>
 
-    <target name="touch-failures-file" if="test.failures">
-        <echo file="${tests.output}/test.failures"
-            append="true">tools${line.separator}</echo>
+        <mkdir dir="${tests.excludes.hdk.dir}"/>
+        <copy todir="${tests.excludes.hdk.dir}">
+            <fileset dir="make" includes="exclude*"/>
+            <filterchain>
+                <tokenfilter>
+                    <replaceregex pattern="\.java" replace="\.class" flags="g"/>
+                </tokenfilter>
+            </filterchain>
+        </copy>
+    </target>
+
+    <target name="-compile-tests" unless="skip.test.build">
+        <compile-tests description="${hy.module} tests">
+            <javac-elements>
+                <src>
+                    <pathelement location="src/test/java" />
+                </src>
+                <classpath>
+                    <pathelement path="${hy.jre}/lib/tools.jar"/>
+                </classpath>
+            </javac-elements>
+        </compile-tests>
     </target>
 
-    <target name="touch-errors-file" if="test.errors">
-        <echo file="${tests.output}/test.errors"
-            append="true">tools${line.separator}</echo>
+    <target name="-run-tests" depends="-test-jar">
+        <ant dir="${tests.hdk.dir}" target="test-module" />
     </target>
 
 </project>

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/internal/nls/Messages.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/internal/nls/messages.properties
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/ArgumentsParser.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CRLManager.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CSRGenerator.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CertChainVerifier.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CertExporter.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CertImporter.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/CertReader.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/Command.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/EntryManager.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/HelpPrinter.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeyCertGenerator.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeyStoreCertPrinter.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeyStoreConverter.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeytoolException.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeytoolKSLoaderSaver.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/KeytoolParameters.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/keytool/Main.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/Consts.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/Main.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/control/Controller.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/control/InvalidPolicyTextException.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/control/PolicyFileHandler.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/control/PolicyTextParser.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/CommentEntry.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/GrantEntry.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/KeystoreEntry.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/KeystorePasswordURLEntry.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/Permission.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/PolicyEntry.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/model/Principal.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/BaseFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/DirectTextEditorPanel.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/EditorPanel.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/GrantEntryEditFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/GraphicalEditorPanel.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/KeystoreEntryEditFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/LAEFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/ListAndEditPanel.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/MainFrame.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/PermissionEditFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/PrincipalEditFormDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/WarningLogDialog.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/policytool/view/apache.gif
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/toolutils/KeyStoreLoaderSaver.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/toolutils/Util.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/main/java/org/apache/harmony/jretools/unpack200/Main.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/test/java/org/apache/harmony/jretools/tests/keytool/GenKeyTest.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/test/java/org/apache/harmony/jretools/tests/keytool/TestUtils.java
            ('svn:mergeinfo' removed)

Propchange: harmony/enhanced/java/branches/java6/jdktools/modules/jretools/src/test/java/org/apache/harmony/jretools/tests/toolutils/KeyStoreLoaderSaverTest.java
            ('svn:mergeinfo' removed)

Modified: harmony/enhanced/java/branches/java6/jdktools/modules/samsa/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/jdktools/modules/samsa/build.xml?rev=942511&r1=942510&r2=942511&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/jdktools/modules/samsa/build.xml (original)
+++ harmony/enhanced/java/branches/java6/jdktools/modules/samsa/build.xml Sun May  9 08:26:02 2010
@@ -19,217 +19,126 @@
 <project name="Samsa Build" default="build" basedir=".">
     <description>Build for samsa program</description>
 
-    <!-- import common properties -->
+    <property name="hy.module" value="samsa" />
+    <property name="hy.hdk" location="../../deploy" />
     <import file="../../make/properties.xml" />
+    <import file="${hy.hdk}/build/ant/properties.xml" />
 
-    <property name="hy.hdk" location="${basedir}/../../deploy" />
-
-    <property name="tests.output" location="../../build/test_report" />
-
-    <!-- filename for tests exclude list -->
-    <property name="samsa.exclude.file" location="${hy.hdk}/build/jdktools.samsa.exclude" />
-
-    <target name="build" depends="build-native"/>
-    <target name="build-java"/>
-
-    <target name="clean" depends="clean-native"/>
-    <target name="clean-java"/>
-
-    <target name="test" depends="test-module" />
-    <target name="build-tests" />
-    <target name="test-module" depends="prepare-exclude, run-tests" />
-
-    <target name="build-native" depends="-compile-native, -copy-native-exe, -copy-native-exe-windows, -copy-native-data" />
+    <target name="build" depends="build-native,-test-jar"
+            unless="skip.native.build"/>
+    <target name="clean" depends="clean-native" unless="skip.native.build"/>
+    <target name="test" depends="-test-module" />
+    <target name="-test-module" depends="run-tests" />
+
+    <target name="build-native" unless="skip.native.build"
+            depends="-compile-native,-copy-native-exe,
+                     -copy-native-exe-windows,-copy-native-data" />
 
     <!-- compile universal samsa binary -->
-    <target name="-compile-native" >
-
-        <echo message="Compiling SAMSA natives" />
-        <echo message="harmony.jdktools=${harmony.jdktools}" />
-            
+    <target name="-compile-native" unless="skip.native.build">
+        <echo message="Compiling ${hy.module} natives" />
         <make dir="src/main/native/samsa/${hy.os.family}" />
-
     </target>
 
     <!-- copy samsa executable for different tools -->
-    <target name="-copy-native-exe" >
+    <target name="-copy-native-exe" unless="skip.native.build">
 
         <property name="hy.samsa.exe"
                   location="${hy.hdk}/lib/samsa${exe.suffix}" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/java${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/java${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/java${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/java${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/javac${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/javac${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/javac${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/javac${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/javah${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/javah${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/javah${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/javah${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/javadoc${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/javadoc${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/javadoc${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/javadoc${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/javap${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/javap${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/javap${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/javap${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/jarsigner${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/jarsigner${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/jarsigner${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/jarsigner${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/appletviewer${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/appletviewer${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/appletviewer${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/appletviewer${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/keytool${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/keytool${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/keytool${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/keytool${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/unpack200${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/unpack200${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/unpack200${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/unpack200${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/pack200${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/pack200${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/pack200${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/pack200${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/policytool${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/policytool${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/policytool${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/policytool${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/jar${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/jar${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/jar${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/jar${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/rmic${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/rmic${exe.suffix}" perm="ugo+x" />
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/rmid${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/rmid${exe.suffix}" perm="ugo+x" />
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/rmiregistry${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/rmiregistry${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/rmic${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/rmic${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/rmid${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/rmid${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/rmiregistry${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/rmiregistry${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jdktools.deploy.dir}/bin/serialver${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/serialver${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jdk}/bin/serialver${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/serialver${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jretools.deploy.dir}/bin/keytool${exe.suffix}" />
-        <chmod file="${jretools.deploy.dir}/bin/keytool${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jre}/bin/keytool${exe.suffix}" />
+        <chmod file="${hy.jre}/bin/keytool${exe.suffix}" perm="ugo+x" />
 
-        <copy file="${hy.samsa.exe}" tofile="${jretools.deploy.dir}/bin/unpack200${exe.suffix}" />
-        <chmod file="${jretools.deploy.dir}/bin/unpack200${exe.suffix}" perm="ugo+x" />
+        <copy file="${hy.samsa.exe}" tofile="${hy.jre}/bin/unpack200${exe.suffix}" />
+        <chmod file="${hy.jre}/bin/unpack200${exe.suffix}" perm="ugo+x" />
 
-    	<copy file="${hy.samsa.exe}" tofile="${jretools.deploy.dir}/bin/pack200${exe.suffix}" />
-    	<chmod file="${jretools.deploy.dir}/bin/pack200${exe.suffix}" perm="ugo+x" />
+    	<copy file="${hy.samsa.exe}" tofile="${hy.jre}/bin/pack200${exe.suffix}" />
+    	<chmod file="${hy.jre}/bin/pack200${exe.suffix}" perm="ugo+x" />
 
-    	<copy file="${hy.samsa.exe}" tofile="${jretools.deploy.dir}/bin/policytool${exe.suffix}" />
-        <chmod file="${jretools.deploy.dir}/bin/policytool${exe.suffix}" perm="ugo+x" />
+    	<copy file="${hy.samsa.exe}" tofile="${hy.jre}/bin/policytool${exe.suffix}" />
+        <chmod file="${hy.jre}/bin/policytool${exe.suffix}" perm="ugo+x" />
 
     </target>
 
     <!-- copy windows javaw executable -->
-    <target name="-copy-native-exe-windows" if="is.windows" >
+    <target name="-copy-native-exe-windows" unless="skip.native.build"
+            if="is.windows">
         <property name="hy.samsaw.exe"
                   location="${hy.hdk}/lib/samsaw${exe.suffix}" />
 
         <copy file="${hy.samsaw.exe}"
-              tofile="${jdktools.deploy.dir}/bin/javaw${exe.suffix}" />
-        <chmod file="${jdktools.deploy.dir}/bin/javaw${exe.suffix}"
+              tofile="${hy.jdk}/bin/javaw${exe.suffix}" />
+        <chmod file="${hy.jdk}/bin/javaw${exe.suffix}"
                perm="ugo+x" />
     </target>
 
     <!-- copy samsa configuration data for different tools -->
-    <target name="-copy-native-data" >
-
-        <copy todir="${jdktools.deploy.dir}/bin/data" overwrite="yes">
+    <target name="-copy-native-data" unless="skip.native.build">
+        <copy todir="${hy.jdk}/bin/data" overwrite="yes">
             <fileset dir="src/main/resources/data/">
                 <include name="*.dat" />
             </fileset>
         </copy>
-
     </target>
 
-    <target name="prepare-exclude">
-        <echo message="SAMSA exclude list: ${samsa.exclude.file}" />
-        <prepare-exclude-list moduleName="samsa" dir="./make"
-                             result="${samsa.exclude.file}" />
-    </target>
-
-    <target name="run-tests" depends="prepare-exclude" >
-
-        <property name="test.jre.home" value="${jdktools.deploy.dir}/jre" />
-
-        <echo message="Running SAMSA tests" />
-        <echo message="test.jre.home=${test.jre.home}" />
-
-        <echo message="Run jdk/bin/java -version in ${tests.output}"/>
-        <exec failonerror="true"
-	      executable="${test.jre.home}/../bin/java${exe.suffix}"
-	      dir="${tests.output}"
-              outputproperty="java.out.text">
-	    <arg line="-version" />
-        </exec>
-        <fail message="java -version should contain a copyright statement">
-            <condition>
-                <not>
-                    <contains string="${java.out.text}"
-                              substring="Copyright 1991"/>
-                </not>
-            </condition>
-        </fail>
-        <fail message="java -version should contain svn revision information">
-            <condition>
-                <not>
-                    <contains string="${java.out.text}" substring="svn = r"/>
-                </not>
-            </condition>
-        </fail>
-
-        <echo message="Run jdk/bin/javac -version in ${tests.output}"/>
-        <exec failonerror="true"
-	        executable="${test.jre.home}/../bin/javac${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="-version" />
-        </exec>
-
-        <echo message="Run jdk/bin/javah in ${tests.output}"/>
-        <exec failonerror="false"
-	        executable="${test.jre.home}/../bin/javah${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="" />
-        </exec>
-
-        <echo message="Run jdk/bin/javadoc in ${tests.output}"/>
-        <exec failonerror="false"
-	        executable="${test.jre.home}/../bin/javadoc${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="" />
-        </exec>
-
-        <echo message="Run jdk/bin/jarsigner in ${tests.output}"/>
-        <exec failonerror="false"
-	        executable="${test.jre.home}/../bin/jarsigner${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="" />
-        </exec>
-
-        <echo message="Run jdk/jre/bin/keytool -help in ${tests.output}"/>
-        <exec failonerror="true"
-	        executable="${test.jre.home}/bin/keytool${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="-help" />
-        </exec>
-
-        <echo message="Run jdk/jre/bin/unpack200 in ${tests.output}"/>
-        <exec failonerror="true"
-	        executable="${test.jre.home}/bin/unpack200${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="" />
-        </exec>
-
-        <echo message="Run jdk/jre/bin/pack200 in ${tests.output}"/>
-        <exec failonerror="true"
-	        executable="${test.jre.home}/bin/pack200${exe.suffix}"
-	        dir="${tests.output}">
-	    <arg line="" />
-        </exec>
-
+    <target name="-test-jar" unless="skip.test.build">
+        <mkdir dir="${tests.hdk.dir}" />
+        <copy file="make/run-test.xml" tofile="${tests.hdk.dir}/build.xml" />
+    </target>
 
+    <target name="run-tests" depends="-test-jar">
+        <ant dir="${tests.hdk.dir}" target="test-module" />
     </target>
 
     <!-- Clean natives -->
-    <target name="clean-native">
-        <echo message="Cleaning SAMSA natives" />
+    <target name="clean-native" unless="skip.native.build">
+        <echo message="Cleaning ${hy.module} natives" />
         <make dir="src/main/native/samsa/${hy.os.family}"
               target="clean" />
     </target>