|
From: Brian M. <ma...@us...> - 2003-11-13 23:17:04
|
Update of /cvsroot/java-game-lib/LWJGL In directory sc8-pr-cvs1:/tmp/cvs-serv12490 Modified Files: build.xml Log Message: getting there :) Index: build.xml CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/build.xml =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/build.xml,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- build.xml 24 Aug 2003 20:47:00 -0000 1.10 +++ build.xml 13 Nov 2003 23:16:58 -0000 1.11 @@ -1,308 +1,352 @@ <project name="LWJGL" default="compile" basedir="."> - <!-- set global properties for this build --> - <property name="lwjgl.src" value="./src"/> - <property name="lwjgl.bin" value="./bin"/> - <property name="lwjgl.lib" value="./lib"/> - <property name="lwjgl.dist" value="./dist"/> - <property name="lwjgl.docs" value="./doc"/> - <property name="lwjgl.temp" value="./temp"/> - <property name="lwjgl.res" value="./res"/> - <property name="lwjgl.version" value="0.7"/> - <property name="lwjgl.src.headers" value="${lwjgl.src}/native/common"/> - - <!-- Creates a splash screen --> - <target name="splash"> - <splash imageurl="http://java-game-lib.sourceforge.net/images/logo.png" showduration="0" taskname="progressscreen"/> - </target> - - <!-- Initializes whatever needs to be done before any targets are executed --> - <target name="initialize"> - <mkdir dir="${lwjgl.bin}" taskname="initialiazing bin folder"/> - <mkdir dir="${lwjgl.lib}" taskname="initialiazing lib folder"/> - <mkdir dir="${lwjgl.dist}" taskname="initialiazing dist folder"/> - <mkdir dir="${lwjgl.docs}/javadoc" taskname="initialiazing docs folder"/> - <mkdir dir="${lwjgl.res}" taskname="initialiazing res folder"/> - <mkdir dir="${lwjgl.temp}" taskname="initialiazing temp folder"/> - </target> - - <target name="all" depends="splash" description="compile. package. javadoc and distribute"> - - <!-- - Though we perform all targets, we do it in somewhat mixed. - This is because we want the 'distribution_application' target to be - executed as soon as possible, since this target is most likely to fail. - That way we don't spend time doing javadocs, if the 'distribution_application' - target is going to fail anyway. However we cannot call the 'distribution' before - the javadoc target, since the 'distribution' target will try to create the javadoc - archive. - --> + <!-- ================================================================== --> + <!-- Global properties for build --> + <!-- ================================================================== --> + <property name="lwjgl.src.headers" value="${lwjgl.src}/native/common"/> + <property name="lwjgl.src" value="./src"/> + <property name="lwjgl.bin" value="./bin"/> + <property name="lwjgl.lib" value="./lib"/> + <property name="lwjgl.dist" value="./dist"/> + <property name="lwjgl.docs" value="./doc"/> + <property name="lwjgl.temp" value="./temp"/> + <property name="lwjgl.res" value="./res"/> + <property name="lwjgl.version" value="0.8"/> + + <!-- ================================================================== --> + <!-- Initialize build --> + <!-- ================================================================== --> + <mkdir dir="${lwjgl.bin}" taskname="initialiazing bin folder"/> + <mkdir dir="${lwjgl.lib}" taskname="initialiazing lib folder"/> + <mkdir dir="${lwjgl.dist}" taskname="initialiazing dist folder"/> + <mkdir dir="${lwjgl.docs}/javadoc" taskname="initialiazing docs folder"/> + <mkdir dir="${lwjgl.res}" taskname="initialiazing res folder"/> + <mkdir dir="${lwjgl.temp}" taskname="initialiazing temp folder"/> - <antcall target="clean"/> - <antcall target="compile"/> - <antcall target="package"/> - <antcall target="distribution_application"/> - <antcall target="javadoc"/> - <antcall target="distribution_javadoc"/> - <antcall target="distribution_source"/> - <antcall target="internal_clean"/> - </target> - - <target name="clean" description="Cleans the diectories controlled by this ant script (temp, dist, lib, javadoc, class files in bin)"> - <delete dir="${lwjgl.temp}" quiet="true" taskname="cleaning temp folder"/> - <delete dir="${lwjgl.dist}" quiet="true" taskname="cleaning dist folder"/> - <delete dir="${lwjgl.docs}/javadoc" quiet="true" taskname="cleaning javadoc folder"/> - <delete dir="${lwjgl.bin}/org" quiet="true" taskname="cleaning bin folder"/> - <delete taskname="cleaning bin folder"> - <fileset dir="${lwjgl.bin}" includes="*.class"/> - </delete> - </target> - - <target name="compile" depends="initialize" description="Compiles the java source directory"> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/**.java" source="1.4" taskname="lwjgl"/> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/input/**" source="1.4" taskname="input"/> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/openal/**" source="1.4" taskname="openal"/> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/opengl/**" source="1.4" taskname="opengl"/> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/test/**" source="1.4" taskname="test"/> - <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/vector/**" source="1.4" taskname="vector"/> - </target> + <!-- ================================================================== --> + <!-- Filesets used for targets --> + <!-- ================================================================== --> + + <!-- Files to include in the lwjgl.jar file --> + <fileset id="lwjgl.fileset" dir="${lwjgl.bin}"> + <include name="**"/> + <exclude name="**.*"/> + <exclude name="org/lwjgl/test/**"/> + </fileset> + + <!-- Files to include in the lwjgl_test.jar file --> + <fileset id="lwjgl_test.fileset" dir="${lwjgl.bin}"> + <exclude name="**.*"/> + <include name="org/lwjgl/test/**"/> + </fileset> - <target name="package" depends="compile" description="packages the java source files"> - <!-- Create lwjgl.jar --> - <jar destfile="${lwjgl.lib}/lwjgl.jar" taskname="lwjgl.jar"> - <fileset dir="${lwjgl.bin}"> - <include name="**"/> - <exclude name="**.*"/> - <exclude name="org/lwjgl/test/**"/> - </fileset> - </jar> - - <!-- Create lwjgl_test.jar --> - <jar destfile="${lwjgl.lib}/lwjgl_test.jar" taskname="lwjgl_test.jar"> - <fileset dir="${lwjgl.bin}"> - <exclude name="**.*"/> - <include name="org/lwjgl/test/**"/> - </fileset> - </jar> - </target> + <!-- Files to make Javadoc from --> + <fileset id="lwjgl.javadoc.fileset" dir="${lwjgl.src}/java"> + <include name="**/*.java" /> + <exclude name="org/lwjgl/test/**"/> + </fileset> + + <!-- Files to include in common package --> + <patternset id="lwjgl-common.fileset"> + <include name="*.jar"/> + <include name="CREDITS"/> + <include name="LICENSE"/> + <include name="README"/> + </patternset> - <target name="javadoc" description="Creates javadoc from java source code"> - <javadoc destdir="${lwjgl.docs}/javadoc" author="true" version="true" use="true" source="1.4" windowtitle="LWJGL API"> - - <fileset dir="${lwjgl.src}/java"> - <include name="**/*.java" /> - <exclude name="org/lwjgl/test/**"/> - </fileset> - - <doctitle><![CDATA[<h1>Lightweight Java Game Toolkit</h1>]]></doctitle> - <bottom><![CDATA[<i>Copyright © 2003 lwjgl.org. All Rights Reserved.</i>]]></bottom> - </javadoc> - </target> + <!-- Files to include in win32 package --> + <patternset id="lwjgl-win32.fileset"> + <patternset refid="lwjgl-common.fileset"/> + <include name="lwjgl.dll"/> + <include name="lwjgl_d.dll"/> + <include name="lwjglaudio.dll"/> + </patternset> - <target name="distribution" depends="package" description="Creates a versioned distribution of lwjgl"> - <antcall target="distribution_application"/> - <antcall target="distribution_javadoc"/> - <antcall target="distribution_source"/> - <antcall target="internal_clean"/> - </target> + <!-- Files to include in linux, glibc2.3 package --> + <patternset id="lwjgl-linux-glibc2.3.fileset"> + <patternset refid="lwjgl-common.fileset"/> + <include name="liblwjgl.so"/> + <include name="liblwjgl_d.so"/> + <include name="libopenal.so"/> + </patternset> + + <!-- Files to include in mac os x package --> + <patternset id="lwjgl-macosx.fileset"> + <patternset refid="lwjgl-common.fileset"/> + <include name="liblwjgl.jnilib"/> + <include name="liblwjgl_d.jnilib"/> + <include name="openal.dylib"/> + </patternset> + + <!-- Files to include in source distribution --> + <fileset id="lwjgl.source.fileset" dir="."> + <include name="build.xml"/> + <include name="src/**"/> + <exclude name="**/*CVS*"/> + <exclude name="native/projb/**"/> + </fileset> + + <!-- Files to include in media distribution --> + <fileset id="lwjgl.media.fileset" dir="${lwjgl.res}"> + <include name="**"/> + <exclude name="**/*CVS*"/> + </fileset> + + <!-- ================================================================== --> + <!-- Everything below this line is targets. --> + <!-- Do not modify, unless you know what you're doing --> + <!-- ================================================================== --> - <target name="cvsbuild" description="Builds lwjgl, by exporting files from cvs into a LWJGL folder and executing the package target on that folders build file"> - <available file="LWJGL/build.xml" property="lwjgl.preexistingfiles"/> - <available file="${lwjgl.src}/java/org/lwjgl/Sys.java" property="lwjgl.preexistingfiles"/> - <fail if="lwjgl.preexistingfiles" message="Cannot perform webbuild from nonempty folder"/> - <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/build.xml" dest="."/> - <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/src" dest="."/> - <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/doc" dest="."/> - <ant dir="LWJGL" target="package"/> - </target> + <!-- Creates a splash screen --> + <target name="splash"> + <splash imageurl="http://java-game-lib.sourceforge.net/images/logo.png" showduration="0" taskname="progressscreen"/> + </target> - <target name="headers" description="invokes javah on java classes, producing the headers needed for native compilation" depends="compile"> - <javah classpath="${lwjgl.bin}" destdir="${lwjgl.src.headers}" force="yes"> - <class name="org.lwjgl.Display"/> - <class name="org.lwjgl.Sys"/> - <class name="org.lwjgl.Window"/> - - <class name="org.lwjgl.input.Controller"/> - <class name="org.lwjgl.input.Cursor"/> - <class name="org.lwjgl.input.Keyboard"/> - <class name="org.lwjgl.input.Mouse"/> - - <class name="org.lwjgl.openal.ALC"/> - <class name="org.lwjgl.openal.BaseAL"/> - <class name="org.lwjgl.openal.CoreAL"/> - <class name="org.lwjgl.openal.eax.BaseEAX"/> - <class name="org.lwjgl.openal.eax.CoreEAX"/> - <class name="org.lwjgl.openal.eax.EAXBufferProperties"/> - <class name="org.lwjgl.openal.eax.EAXListenerProperties"/> - - <class name="org.lwjgl.opengl.CoreGL11"/> - <class name="org.lwjgl.opengl.CoreGL12"/> - <class name="org.lwjgl.opengl.CoreGL13"/> - <class name="org.lwjgl.opengl.CoreGL14"/> - <class name="org.lwjgl.opengl.GL"/> - <class name="org.lwjgl.opengl.GLU"/> - <class name="org.lwjgl.opengl.GLCaps"/> - <class name="org.lwjgl.opengl.GLWindow"/> - <class name="org.lwjgl.opengl.Pbuffer"/> - </javah> - </target> + <!-- Performs all the tasks needed for a distribution of LWJGL --> + <target name="all" depends="splash" description="compile. make jars. javadoc and distribute"> - <!-- Creates a versioned distribution for all supported platforms --> - <target name="distribution_application"> - <!-- check for file presence --> - <available file="${lwjgl.lib}/lwjglaudio.dll" property="lwjgl.lwjglaudio_dll.exists"/> - <fail unless="lwjgl.lwjglaudio_dll.exists" message="Missing lwjglaudio.dll in lib directory"/> - - <available file="${lwjgl.lib}/libopenal.so" property="lwjgl.libopenal_so.exists"/> - <fail unless="lwjgl.libopenal_so.exists" message="Missing libopenal.so in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl.dll" property="lwjgl.lwjgl_dll.exists"/> - <fail unless="lwjgl.lwjgl_dll.exists" message="Missing lwjgl.dll in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl_d.dll" property="lwjgl.lwjgl_d_dll.exists"/> - <fail unless="lwjgl.lwjgl_d_dll.exists" message="Missing lwjgl_d.dll in lib directory"/> - - <available file="${lwjgl.lib}/liblwjgl.so" property="lwjgl.liblwjgl_so.exists"/> - <fail unless="lwjgl.liblwjgl_so.exists" message="Missing liblwjgl.so in lib directory"/> - - <available file="${lwjgl.lib}/liblwjgl_d.so" property="lwjgl.liblwjgl_d_so.exists"/> - <fail unless="lwjgl.liblwjgl_d_so.exists" message="Missing liblwjgl_d.so in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl.jar" property="lwjgl.lwjgl_jar.exists"/> - <fail unless="lwjgl.lwjgl_jar.exists" message="Missing lwjgl.jar in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl_test.jar" property="lwjgl.lwjgl_test_jar.exists"/> - <fail unless="lwjgl.lwjgl_test_jar.exists" message="Missing lwjgl_test.jar in lib directory"/> - - <mkdir dir="${lwjgl.temp}/lwjgl-${lwjgl.version}"/> - - <!-- copy files to lwjgl directory for proper zipping --> - <copy todir="${lwjgl.temp}/lwjgl-${lwjgl.version}"> - <fileset dir="${lwjgl.lib}/"> - <include name="lwjgl.dll"/> - <include name="lwjgl_d.dll"/> - <include name="lwjglaudio.dll"/> - <include name="liblwjgl.so"/> - <include name="liblwjgl_d.so"/> - <include name="libopenal.so"/> - <include name="lwjgl.jar"/> - <include name="lwjgl_test.jar"/> - </fileset> - <fileset dir="${lwjgl.docs}"> - <include name="CREDITS"/> - <include name="LICENSE"/> - <include name="README"/> - </fileset> - </copy> - - <!-- zip 'em up --> - <zip destfile="${lwjgl.dist}/lwjgl-${lwjgl.version}.zip" basedir="${lwjgl.temp}/"/> - </target> - - <!-- Creates a versioned distribution for win32 --> - <target name="distribution_application_win32"> - <!-- check for file presence --> - <available file="${lwjgl.lib}/lwjglaudio.dll" property="lwjgl.lwjglaudio_dll.exists"/> - <fail unless="lwjgl.lwjglaudio_dll.exists" message="Missing lwjglaudio.dll in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl.dll" property="lwjgl.lwjgl_dll.exists"/> - <fail unless="lwjgl.lwjgl_dll.exists" message="Missing lwjgl.dll in lib directory"/> + <!-- Though we perform all targets, we do it in somewhat mixed. --> + <!-- This is because we want the 'distribution_application' target to be --> + <!-- executed as soon as possible, since this target is most likely to fail. --> + <!-- That way we don't spend time doing javadocs, if the 'distribution_application' --> + <!-- target is going to fail anyway. However we cannot call the 'distribution' before --> + <!-- the javadoc target, since the 'distribution' target will try to create the javadoc --> + <!-- archive. --> + <antcall target="clean"/> + <antcall target="compile"/> + <antcall target="jars"/> + <antcall target="distribution_application"/> + <antcall target="javadoc"/> + <antcall target="distribution_javadoc"/> + <antcall target="distribution_source"/> + <antcall target="internal_clean"/> + </target> - <available file="${lwjgl.lib}/lwjgl_d.dll" property="lwjgl.lwjgl_d_dll.exists"/> - <fail unless="lwjgl.lwjgl_d_dll.exists" message="Missing lwjgl_d.dll in lib directory"/> + <!-- Cleans up any files created during the execution of this script --> + <target name="clean" description="Cleans the diectories controlled by this ant script (temp, dist, lib, javadoc, class files in bin)"> + <delete dir="${lwjgl.temp}" quiet="true" taskname="cleaning temp folder"/> + <delete dir="${lwjgl.dist}" quiet="true" taskname="cleaning dist folder"/> + <delete dir="${lwjgl.docs}/javadoc" quiet="true" taskname="cleaning javadoc folder"/> + <delete dir="${lwjgl.bin}/org" quiet="true" taskname="cleaning bin folder"/> + <delete taskname="cleaning bin folder"> + <fileset dir="${lwjgl.bin}" includes="*.class"/> + </delete> + </target> - <available file="${lwjgl.lib}/lwjgl.jar" property="lwjgl.lwjgl_jar.exists"/> - <fail unless="lwjgl.lwjgl_jar.exists" message="Missing lwjgl.jar in lib directory"/> + <!-- Compiles the code for LWJGL --> + <target name="compile" description="Compiles code"> + <antcall target="compile_java"/> + <antcall target="compile_native"/> + </target> + + <!-- Compiles the Java source code --> + <target name="compile_java" description="Compiles the java source code"> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/**.java" source="1.4" taskname="lwjgl"/> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/input/**" source="1.4" taskname="input"/> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/openal/**" source="1.4" taskname="openal"/> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/opengl/**" source="1.4" taskname="opengl"/> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/vector/**" source="1.4" taskname="vector"/> + <javac srcdir="${lwjgl.src}/java/" destdir="${lwjgl.bin}" includes="org/lwjgl/test/**" source="1.4" taskname="test"/> + </target> + + <!-- Compiles the native files --> + <target name="compile_native" description="Compiles the native files"> + <!-- check each platform, and run their build target --> + <condition property="lwjgl.platform.windows"> + <os family="windows"/> + </condition> + <antcall target="compile_native_win32"/> - <available file="${lwjgl.lib}/lwjgl_test.jar" property="lwjgl.lwjgl_test_jar.exists"/> - <fail unless="lwjgl.lwjgl_test_jar.exists" message="Missing lwjgl_test.jar in lib directory"/> - - <mkdir dir="${lwjgl.temp}/lwjgl-${lwjgl.version}"/> - - <!-- copy files to lwjgl directory for proper zipping --> - <copy todir="${lwjgl.temp}/lwjgl-${lwjgl.version}"> - <fileset dir="${lwjgl.lib}/"> - <include name="lwjgl.dll"/> - <include name="lwjgl_d.dll"/> - <include name="lwjglaudio.dll"/> - <include name="lwjgl.jar"/> - <include name="lwjgl_test.jar"/> - </fileset> - <fileset dir="${lwjgl.docs}"> - <include name="CREDITS"/> - <include name="LICENSE"/> - <include name="README"/> - </fileset> - </copy> + <condition property="lwjgl.platform.linux"> + <os name="Linux"/> + </condition> + <antcall target="compile_native_linux"/> - <!-- zip 'em up --> - <zip destfile="${lwjgl.dist}/lwjgl-${lwjgl.version}.zip" basedir="${lwjgl.temp}/"/> - </target> + <condition property="lwjgl.platform.mac"> + <os name="Mac OS X"/> + </condition> + <antcall target="compile_native_mac"/> + </target> + + <!-- Compiles LWJGL on Win32 platforms --> + <target name="compile_native_win32" description="Compiles LWJGL on Win32 platforms" if="lwjgl.platform.windows"> + <echo>Sorry, LWJGL does not yet allow compilation of the win32 version via commandline</echo> + </target> + + <!-- Compiles LWJGL on Linux platforms --> + <target name="compile_native_linux" description="Compiles LWJGL on Linux platforms" if="lwjgl.platform.linux"> + <echo>Compiling Linux LWJGL version</echo> + <apply executable="make"/> + </target> + + <!-- Compiles LWJGL on Mac OS X platforms --> + <target name="compile_native_mac" description="Compiles LWJGL on Mac OS X platforms" if="lwjgl.platform.mac"> + <echo>Compiling Mac OS X LWJGL version</echo> + <apply executable="make"/> + </target> + + <!-- Packages the files --> + <target name="jars" depends="compile" description="packages the java source files"> + <!-- Create lwjgl.jar --> + <jar destfile="${lwjgl.lib}/lwjgl.jar" taskname="lwjgl.jar"> + <fileset refid="lwjgl.fileset"/> + </jar> + + <!-- Create lwjgl_test.jar --> + <jar destfile="${lwjgl.lib}/lwjgl_test.jar" taskname="lwjgl_test.jar"> + <fileset refid="lwjgl_test.fileset"/> + </jar> + </target> - <!-- Creates a versioned distribution for linux --> - <target name="distribution_application_linux"> - <!-- check for file presence --> - <available file="${lwjgl.lib}/libopenal.so" property="lwjgl.libopenal_so.exists"/> - <fail unless="lwjgl.libopenal_so.exists" message="Missing libopenal.so in lib directory"/> - - <available file="${lwjgl.lib}/liblwjgl.so" property="lwjgl.liblwjgl_so.exists"/> - <fail unless="lwjgl.liblwjgl_so.exists" message="Missing liblwjgl.so in lib directory"/> + <!-- Creates the Javadoc --> + <target name="javadoc" description="Creates javadoc from java source code"> + <javadoc destdir="${lwjgl.docs}/javadoc" author="true" version="true" use="true" source="1.4" windowtitle="LWJGL API"> + <fileset refid="lwjgl.javadoc.fileset"/> + <doctitle><![CDATA[<h1>Lightweight Java Game Toolkit</h1>]]></doctitle> + <bottom><![CDATA[<i>Copyright © 2003 lwjgl.org. All Rights Reserved.</i>]]></bottom> + </javadoc> + </target> + + <!-- Creates a distribution from the compiled files --> + <target name="distribution" depends="jars" description="Creates a versioned distribution of lwjgl"> + <antcall target="distribution_application"/> + <antcall target="distribution_javadoc"/> + <antcall target="distribution_source"/> + <antcall target="distribution_resources"/> + <antcall target="internal_clean"/> + </target> + + <!-- Creates a build of LWJGL directly from CVS --> + <target name="cvsbuild" description="Builds lwjgl, by exporting files from cvs into a LWJGL folder and executing the package target on that folders build file"> + <!-- Check that files do not exist BEFORE doing the CVS build --> + <available file="LWJGL/build.xml" property="lwjgl.preexistingfiles"/> + <available file="${lwjgl.src}/java/org/lwjgl/Sys.java" property="lwjgl.preexistingfiles"/> + <fail if="lwjgl.preexistingfiles" message="Cannot perform webbuild from nonempty folder"/> - <available file="${lwjgl.lib}/liblwjgl_d.so" property="lwjgl.liblwjgl_d_so.exists"/> - <fail unless="lwjgl.liblwjgl_d_so.exists" message="Missing liblwjgl_d.so in lib directory"/> - - <available file="${lwjgl.lib}/lwjgl.jar" property="lwjgl.lwjgl_jar.exists"/> - <fail unless="lwjgl.lwjgl_jar.exists" message="Missing lwjgl.jar in lib directory"/> + <!-- checkout files and build using checked out buildfiles 'all' target --> + <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/build.xml" dest="."/> + <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/src" dest="."/> + <cvs command="export -D 'now'" compressionlevel="3" cvsRoot=":pserver:ano...@cv...:/cvsroot/java-game-lib" package="LWJGL/doc" dest="."/> + <ant dir="LWJGL" target="all"/> + </target> + + <!-- Generates the native headers from source files --> + <target name="headers" description="invokes javah on java classes, producing the headers needed for native compilation" depends="compile"> + <javah classpath="${lwjgl.bin}" destdir="${lwjgl.src.headers}" force="yes"> + <class name="org.lwjgl.Display"/> + <class name="org.lwjgl.Sys"/> + <class name="org.lwjgl.Window"/> + + <class name="org.lwjgl.input.Controller"/> + <class name="org.lwjgl.input.Cursor"/> + <class name="org.lwjgl.input.Keyboard"/> + <class name="org.lwjgl.input.Mouse"/> + + <class name="org.lwjgl.openal.ALC"/> + <class name="org.lwjgl.openal.BaseAL"/> + <class name="org.lwjgl.openal.CoreAL"/> + <class name="org.lwjgl.openal.eax.BaseEAX"/> + <class name="org.lwjgl.openal.eax.CoreEAX"/> + <class name="org.lwjgl.openal.eax.EAXBufferProperties"/> + <class name="org.lwjgl.openal.eax.EAXListenerProperties"/> + + <class name="org.lwjgl.opengl.CoreGL11"/> + <class name="org.lwjgl.opengl.CoreGL12"/> + <class name="org.lwjgl.opengl.CoreGL13"/> + <class name="org.lwjgl.opengl.CoreGL14"/> + <class name="org.lwjgl.opengl.GL"/> + <class name="org.lwjgl.opengl.GLU"/> + <class name="org.lwjgl.opengl.GLCaps"/> + <class name="org.lwjgl.opengl.GLWindow"/> + <class name="org.lwjgl.opengl.Pbuffer"/> + </javah> + </target> + + <!-- Creates a versioned distribution for all supported platforms --> + <target name="distribution_application"> + <!-- check each platform, and run their copy target --> + <condition property="lwjgl.platform.windows"> + <os family="windows"/> + </condition> + <antcall target="distribute_win32"/> - <available file="${lwjgl.lib}/lwjgl_test.jar" property="lwjgl.lwjgl_test_jar.exists"/> - <fail unless="lwjgl.lwjgl_test_jar.exists" message="Missing lwjgl_test.jar in lib directory"/> - - <mkdir dir="${lwjgl.temp}/lwjgl-${lwjgl.version}"/> - - <!-- copy files to lwjgl directory for proper zipping --> - <copy todir="${lwjgl.temp}/lwjgl-${lwjgl.version}"> - <fileset dir="${lwjgl.lib}/"> - <include name="lwjgl.so"/> - <include name="lwjgl_d.so"/> - <include name="libopenal.so"/> - <include name="lwjgl.jar"/> - <include name="lwjgl_test.jar"/> - </fileset> - <fileset dir="${lwjgl.docs}"> - <include name="CREDITS"/> - <include name="LICENSE"/> - <include name="README"/> - </fileset> - </copy> + <condition property="lwjgl.platform.linux"> + <os name="Linux"/> + </condition> + <antcall target="distribute_linux"/> - <!-- zip 'em up --> - <zip destfile="${lwjgl.dist}/lwjgl-${lwjgl.version}.zip" basedir="${lwjgl.temp}/"/> - </target> - - <!-- Creates a versioned distribution of javadocs --> - <target name="distribution_javadoc"> - <zip destfile="${lwjgl.dist}/lwjgl-docs-${lwjgl.version}.zip" basedir="${lwjgl.docs}" includes="javadoc/**"/> - </target> + <condition property="lwjgl.platform.mac"> + <os name="Mac OS X"/> + </condition> + <antcall target="distribute_macosx"/> + </target> + + <!-- Distributes win32 files --> + <target name="distribute_win32" description="Distributes win32 files" if="lwjgl.platform.windows"> + <!-- copy files from lib/platform to temp --> + <copy todir="${lwjgl.temp}/lwjgl-win32-${lwjgl.version}"> + <fileset dir="${lwjgl.lib}"> + <patternset refid="lwjgl-win32.fileset"/> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + <fileset dir="${lwjgl.docs}"> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + </copy> + <zip destfile="${lwjgl.dist}/lwjgl-win32-${lwjgl.version}.zip" basedir="${lwjgl.temp}" includes="**"/> + </target> + + <!-- Distributes linux files --> + <target name="distribute_linux" description="Distributes linux files" if="lwjgl.platform.linux"> + <!-- copy files from lib/platform to temp --> + <copy todir="${lwjgl.temp}/lwjgl-linux-${lwjgl.version}"> + <fileset dir="${lwjgl.lib}"> + <patternset refid="lwjgl-linux.fileset"/> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + <fileset dir="${lwjgl.docs}"> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + </copy> + <zip destfile="${lwjgl.dist}/lwjgl-linux-${lwjgl.version}.zip" basedir="${lwjgl.temp}" includes="**"/> + </target> + + <!-- Distributes macosx files --> + <target name="distribute_macosx" description="Distributes macosx files" if="lwjgl.platform.macosx"> + <!-- copy files from lib/platform to temp --> + <copy todir="${lwjgl.temp}/lwjgl-macosx-${lwjgl.version}"> + <fileset dir="${lwjgl.lib}"> + <patternset refid="lwjgl-macosx.fileset"/> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + <fileset dir="${lwjgl.docs}"> + <patternset refid="lwjgl-common.fileset"/> + </fileset> + </copy> + <zip destfile="${lwjgl.dist}/lwjgl-macosx-${lwjgl.version}.zip" basedir="${lwjgl.temp}" includes="**"/> + </target> + + <!-- Creates a versioned distribution of javadocs --> + <target name="distribution_javadoc"> + <zip destfile="${lwjgl.dist}/lwjgl-docs-${lwjgl.version}.zip" basedir="${lwjgl.docs}" includes="javadoc/**"/> + </target> - <!-- Creates a versioned distribution of the source code --> - <target name="distribution_source"> - <zip destfile="${lwjgl.dist}/lwjgl-source-${lwjgl.version}.zip"> - <fileset dir="${lwjgl.src}/"> - <patternset> - <include name="**/*.java"/> - <include name="**/*.cpp"/> - <include name="**/*.c"/> - <include name="**/*.h"/> - <include name="**/*.am"/> - <exclude name="**/*CVS*"/> - <exclude name="**/.*"/> - </patternset> - </fileset> - </zip> - </target> + <!-- Creates a versioned distribution of the source code --> + <target name="distribution_source"> + <zip destfile="${lwjgl.dist}/lwjgl-source-${lwjgl.version}.zip"> + <fileset refid="lwjgl.source.fileset"/> + </zip> + </target> + + <!-- Creates a versioned distribution of the resource files --> + <target name="distribution_resources"> + <zip destfile="${lwjgl.dist}/lwjgl-media-${lwjgl.version}.zip"> + <fileset refid="lwjgl.media.fileset"/> + </zip> + </target> - <!-- clean internal temporary directories --> - <target name="internal_clean"> - <delete dir="${lwjgl.temp}" taskname="cleanup"/> - </target> + <!-- clean internal temporary directories --> + <target name="internal_clean"> + <delete dir="${lwjgl.temp}" taskname="cleanup"/> + </target> </project> |