diff options
Diffstat (limited to 'build.xml')
-rw-r--r-- | build.xml | 277 |
1 files changed, 50 insertions, 227 deletions
@@ -1,259 +1,82 @@ <?xml version="1.0"?> -<!-- -/* - * $RCSfile$ - * - * Copyright (c) 2007 Sun Microsystems, Inc. All rights reserved. - * - * Use is subject to license terms. - * - * $Revision$ - * $Date$ - * $State$ - */ - --> +<project name="vecmath" basedir="." default="jar"> -<project name="vecmath-1.6.0" default="jar-debug" basedir="."> + <property name="src.dir" location="src"/> + <property name="build.dir" location="build"/> + <property name="gen.dir" location="${build.dir}/gen"/> + <property name="class.dir" location="${build.dir}/classes"/> + <property name="javadoc.dir" location="${build.dir}/javadoc"/> - <!-- *************************************** --> - <!-- *** Begin build-specific properties *** --> - <!-- *************************************** --> + <property name="version_base" value="1.6.0"/> + <property name="build.spec.title" value="3D Vector Math Package"/> + <property name="build.spec.vendor" value=""/> + <property name="build.impl.title" value="3D Vector Math Package"/> + <property name="build.impl.vendor" value=""/> + <property name="build.impl.vendor.id" value=""/> - <!-- - * The following properties specify the current version of 3D. - * The "version_base" property specifies the dot-dot base version - * number of 3D; it must contain exactly three integer numbers - * separated by "periods ("."). It should match the version base - * defined in the j3d-core build.xml file. - --> - <property name="version_base" value="1.6.0"/> - - <!-- ************************************* --> - <!-- *** End build-specific properties *** --> - <!-- ************************************* --> - - - <!-- Set global properties for this build --> - <property name="src" location="src"/> - <property name="build" location="build"/> - <property name="dist" location="dist"/> - <property name="version" value="1_6_0"/> - <property name="docname" value="vecmath-${version}-doc"/> - - <property name="build.spec.title" value="3D Vector Math Package"/> - <property name="build.impl.title" value="3D Vector Math Package"/> - <property name="build.spec.vendor" value=""/> - <property name="build.impl.vendor" value=""/> - <property name="build.impl.vendor.id" value=""/> - - <target name="echo"> - <echo message="user.name = ${user.name}"/> - <echo message="user.home = ${user.home}"/> - <echo message="java.home = ${java.home}"/> - <echo message="ant.home = ${ant.home}"/> - <echo message="O/S arch is ${os.arch}"/> - <echo message="O/S name is ${os.name}"/> - </target> - - - <target name="init"> - <!-- Create the time stamp --> - <tstamp> - <format property="buildtime" - pattern="yyyy-MM-dd'T'HH:mm:ss"/> - </tstamp> - - <!-- Create the base build directory --> - <mkdir dir="${build}"/> + <target name="clean"> + <delete dir="${build.dir}"/> </target> - <target name="compile-debug" depends="init"> - - <!-- Create the debug build directory structure used for compile --> - <mkdir dir="${build}/debug/classes"/> - <mkdir dir="${build}/debug/gen"/> - - <!-- Compile the java code from ${src} into ${build}/debug/classes --> - <javac srcdir="${src}" - destdir="${build}/debug/classes" - source="1.5" - target="1.5" - debug="true" - deprecation="on" - /> + <target name="gen"> + <mkdir dir="${gen.dir}"/> + <copy todir="${gen.dir}" overwrite="true"> + <fileset dir="${src.dir}" includes="VECMATH.MF"/> + <filterset> + <filter token="VERSION_BASE" value="${version_base}"/> + <filter token="SPEC_TITLE" value="${build.spec.title}"/> + <filter token="SPEC_VENDOR" value="${build.spec.vendor}"/> + <filter token="IMPL_TITLE" value="${build.impl.title}"/> + <filter token="IMPL_VENDOR" value="${build.impl.vendor}"/> + <filter token="IMPL_VENDOR_ID" value="${build.impl.vendor.id}"/> + </filterset> + </copy> - <!-- Copy the I18N property files while retaining package location --> - <copy todir="${build}/debug/classes"> - <fileset dir="${src}" includes="**/*.properties"/> + <copy todir="${class.dir}/javax"> + <fileset dir="." includes="COPYRIGHT.txt"/> + <fileset dir="." includes="LICENSE.txt"/> </copy> </target> - <target name="compile-opt" depends="init"> - - <!-- Create the opt build directory structure used for compile --> - <mkdir dir="${build}/opt/classes"/> - <mkdir dir="${build}/opt/gen"/> + <target name="compile" depends="gen"> + <mkdir dir="${class.dir}"/> - <!-- Compile the java code from ${src} into ${build}/opt/classes --> - <javac srcdir="${src}" - destdir="${build}/opt/classes" - source="1.5" - target="1.5" + <javac srcdir="${src.dir}" destdir="${class.dir}" + source="1.5" target="1.5" debug="true" debuglevel="lines,source" deprecation="on" + includeantruntime="false" /> - <!-- Copy the I18N property files while retaining package location --> - <copy todir="${build}/opt/classes"> - <fileset dir="${src}" includes="**/*.properties"/> + <copy todir="${class.dir}"> + <fileset dir="${src.dir}" includes="**/*.properties"/> </copy> </target> - <target name="compile" depends="compile-opt,compile-debug"/> - - <target name="jar-debug" depends="compile-debug"> - <!-- Create the jar directory --> - <mkdir dir="${build}/debug/lib/ext"/> - - <copy todir="${build}/debug/gen" - overwrite="true"> - <fileset dir="${src}" includes="VECMATH.MF"/> - <filterset> - <filter token="VERSION_BASE" value="${version_base}"/> - <filter token="SPEC_TITLE" value="${build.spec.title}"/> - <filter token="SPEC_VENDOR" value="${build.spec.vendor}"/> - <filter token="IMPL_TITLE" value="${build.impl.title}"/> - <filter token="IMPL_VENDOR" value="${build.impl.vendor}"/> - <filter token="IMPL_VENDOR_ID" value="${build.impl.vendor.id}"/> - </filterset> - </copy> - - <!-- Copy the copyright file and all license files --> - <copy todir="${build}/debug/classes/javax"> - <fileset dir="." includes="COPYRIGHT.txt"/> - <fileset dir="." includes="*LICENSE*.txt"/> - </copy> - - <!-- Put everything in ${build}/debug/classes into the vecmath.jar file --> - <jar jarfile="${build}/debug/lib/ext/vecmath.jar" - manifest="${build}/debug/gen/VECMATH.MF" compress="false" update="yes"> - <fileset dir="${build}/debug/classes"/> + <target name="jar" depends="compile"> + <jar jarfile="${build.dir}/jars/vecmath.jar" manifest="${gen.dir}/VECMATH.MF" + compress="false" update="yes"> + <fileset dir="${class.dir}"/> </jar> - </target> - - <target name="jar-opt" depends="compile-opt"> - <!-- Create the jar directory --> - <mkdir dir="${build}/opt/lib/ext"/> - <copy todir="${build}/opt/gen" - overwrite="true"> - <fileset dir="${src}" includes="VECMATH.MF"/> - <filterset> - <filter token="VERSION_BASE" value="${version_base}"/> - <filter token="SPEC_TITLE" value="${build.spec.title}"/> - <filter token="SPEC_VENDOR" value="${build.spec.vendor}"/> - <filter token="IMPL_TITLE" value="${build.impl.title}"/> - <filter token="IMPL_VENDOR" value="${build.impl.vendor}"/> - <filter token="IMPL_VENDOR_ID" value="${build.impl.vendor.id}"/> - </filterset> - </copy> - - <!-- Copy the copyright file and all license files --> - <copy todir="${build}/opt/classes/javax"> + <zip destfile="${build.dir}/jars/vecmath-src.zip"> + <fileset dir="${src.dir}" includes="**/*.java"/> <fileset dir="." includes="COPYRIGHT.txt"/> - <fileset dir="." includes="*LICENSE*.txt"/> - </copy> + <fileset dir="." includes="LICENSE.txt"/> + </zip> - <!-- Put everything in ${build}/classes/opt into the vecmath.jar file --> - <jar jarfile="${build}/opt/lib/ext/vecmath.jar" - manifest="${build}/opt/gen/VECMATH.MF" compress="false" update="yes"> - <fileset dir="${build}/opt/classes"/> - </jar> </target> - <target name="jar" depends="jar-opt,jar-debug"/> - - <target name="docs" depends="init"> - <!-- Create the build directory structure used by docs --> - <mkdir dir="${build}/javadocs"/> + <target name="docs" depends="gen"> + <mkdir dir="${javadoc.dir}"/> - <!-- Compile the javadoc from ${src} into ${build}/javadocs --> - <javadoc sourcepath="${src}" + <javadoc sourcepath="${src.dir}" packagenames="javax.vecmath.*" - maxmemory="128m" - destdir="${build}/javadocs" - windowtitle="Vecmath ${version}"> + destdir="${javadoc.dir}" + windowtitle="Vecmath ${version_base}"> </javadoc> - - <!-- Copy the copyright file --> - <copy todir="${build}/javadocs"> - <fileset dir="." includes="COPYRIGHT.txt"/> - </copy> - </target> - - <target name="dist" depends="jar-opt,docs"> - <!-- Create the distribution directory --> - <mkdir dir="${dist}/lib/ext"/> - - <!-- Copy the jar file --> - <copy file="${build}/opt/lib/ext/vecmath.jar" todir="${dist}/lib/ext"/> - - <!-- Create the docs distribution directory --> - <mkdir dir="${dist}/javadocs"/> - - <!-- Put everything in ${build}/javadocs into the zip docname file --> - <zip zipfile="${dist}/javadocs/${docname}.zip" basedir="${build}/javadocs"/> </target> - <target name="all" depends="jar-debug,dist"/> - - <target name="clean-dist"> - <!-- Delete the ${dist} directory tree --> - <delete dir="${dist}"/> - </target> - - <target name="clean"> - <!-- Delete the ${build}, and ${dist} directory trees --> - <delete dir="${build}"/> - <delete dir="${dist}"/> - </target> - - <description> -The following ant targets are available ("jar-debug" is the default): - - all - execute targets jar-debug and dist - - clean - removes WS/build/ and WS/dist/ - - clean-dist - removes WS/dist - - compile - execute targets compile-debug and compile-opt - - compile-debug - builds all classes in WS/src into class files - under WS/build/classes/debug - - compile-opt - builds all classes in WS/src/ into class files - under WS/build/classes/opt - - dist - creates WS/dist/lib/opt/ext/vecmath.jar - from class files under WS/build/classes/opt and - creates WS/dist/doc/vecmath-${version}-doc.zip from - javadoc under WS/build/javadocs - - docs - builds all classes in WS/src into javadoc under - WS/build/javadocs - - echo - echo some useful information, such as user.home, - ant.home and java.home - - jar - execute targets jar-debug and jar-opt - - jar-debug - creates WS/build/lib/debug/ext/vecmath.jar - from class files under WS/build/classes/debug - - jar-opt - creates WS/build/lib/opt/ext/vecmath.jar - from class files under WS/build/classes/opt - </description> </project> |