diff options
Diffstat (limited to 'make/build.xml')
-rw-r--r-- | make/build.xml | 138 |
1 files changed, 125 insertions, 13 deletions
diff --git a/make/build.xml b/make/build.xml index ea8c949ca..72d230942 100644 --- a/make/build.xml +++ b/make/build.xml @@ -77,29 +77,141 @@ <ant antfile="${newt.build.xml}" dir="${newt.make}" target="all" inheritRefs="true" inheritAll="true"/> </target> - <target name="one.lib.dir" depends="init,gluegen.cpptasks.detect.os"> + <target name="one.lib.dir" depends="init,gluegen.cpptasks.detect.os" unless="one.dir.skip"> <delete includeEmptyDirs="true" quiet="true" dir="${lib}" failonerror="false" /> <mkdir dir="${lib}" /> <copy todir="${lib}"> - <fileset dir="${gluegen.root}/${rootrel.build}/obj" includes="*.${native.library.suffix}" /> <fileset dir="${build}/jogl/obj" includes="*.${native.library.suffix}" /> <fileset dir="${build}/nativewindow/obj" includes="*.${native.library.suffix}" /> <fileset dir="${build}/newt/obj" includes="*.${native.library.suffix}" /> </copy> </target> - <target name="one.jar.dir" depends="init,gluegen.cpptasks.detect.os"> + <target name="one.jar.dir" depends="one.lib.dir" unless="one.dir.skip"> <delete includeEmptyDirs="true" quiet="true" dir="${jar}" failonerror="false" /> <mkdir dir="${jar}" /> - <copy todir="${jar}"> - <fileset dir="${gluegen.root}/${rootrel.build}" includes="gluegen-rt*.jar" /> - <fileset dir="${build}/jogl" includes="*.jar" /> - <fileset dir="${build}/nativewindow" includes="*.jar" /> - <fileset dir="${build}/newt" includes="*.jar" /> + <mkdir dir="${jar}/atomic" /> + <copy todir="${jar}/atomic"> + <fileset dir="${build.jogl}" includes="*.jar" /> + <fileset dir="${build.nativewindow}" includes="*.jar" /> + <fileset dir="${build.newt}" includes="*.jar" /> </copy> + <jar manifest="${build.jogl}/manifest.mf" destfile="${jogl.all.jar}" filesonly="true" excludes="META-INF/*"> + <archives> + <zips> + <path refid="nativewindow_all_atoms.classpath"/> + <path refid="jogl_all_atoms.classpath"/> + <path refid="newt_all_atoms.classpath"/> + </zips> + </archives> + </jar> + <jar manifest="${build.jogl}/manifest.mf" destfile="${jogl.all-noawt.jar}" filesonly="true" excludes="META-INF/*"> + <archives> + <zips> + <path refid="nativewindow_all-noawt_atoms.classpath"/> + <path refid="jogl_all-noawt_atoms.classpath"/> + <path refid="newt_all-noawt_atoms.classpath"/> + </zips> + </archives> + </jar> + <jar manifest="${build.jogl}/manifest.mf" destfile="${jogl.all-mobile.jar}" filesonly="true" excludes="META-INF/*"> + <archives> + <zips> + <path refid="nativewindow_all-mobile_atoms.classpath"/> + <path refid="jogl_all-mobile_atoms.classpath"/> + <path refid="newt_all-mobile_atoms.classpath"/> + </zips> + </archives> + </jar> + <jar manifest="${build.jogl}/manifest.mf" destfile="${jogl.all-android.jar}" filesonly="true" excludes="META-INF/*"> + <archives> + <zips> + <path refid="nativewindow_all-mobile_atoms.classpath"/> + <path refid="jogl_all-mobile_atoms.classpath"/> + <path refid="newt_all-android_atoms.classpath"/> + </zips> + </archives> + </jar> + <jar manifest="${build.jogl}/manifest.mf" destfile="${jar}/jogl-all-natives-${os.and.arch}.jar" filesonly="true"> + <fileset dir="${lib}"> + <include name="*.${native.library.suffix}" /> + </fileset> + </jar> + </target> + + <target name="android.package.skip.check" depends="init,gluegen.cpptasks.detect.os"> + <uptodate property="android.package.skip" targetfile="${jar}/jogl.all-android.apk"> + <srcfiles dir="${jar}" includes="jogl.all-android.jar" /> + <srcfiles dir="resources/android" includes="**" /> + </uptodate> + </target> + + <target name="android.package" depends="init,gluegen.cpptasks.detect.os,android.package.skip.check" if="isAndroid" unless="android.package.skip"> + <aapt.signed + jarbuilddir="${jar}" + jarbasename="jogl.all-android" + nativebuilddir="${lib}" + nativebasename="" + androidmanifest.path="resources/android/AndroidManifest-jogl.xml" + androidresources.path="resources/android/res-jogl" + jarmanifest.path="${build.jogl}/manifest.mf" + version.code="${jogl_int_version}" + version.name="${jogl.version.plus}" /> + </target> + + <target name="android.launcher" depends="init,gluegen.cpptasks.detect.os" if="isAndroid"> + <mkdir dir="${build}/android/classes" /> + <mkdir dir="${build}/android/jar" /> + <mkdir dir="${build}/android/lib" /> + <javac destdir="${build}/android/classes" + includes="com/jogamp/android/launcher/**" + source="${target.sourcelevel}" + fork="yes" + includeAntRuntime="false" + memoryMaximumSize="${javac.memorymax}" + debug="${javacdebug}" debuglevel="${javacdebuglevel}"> + <src path="${project.root}/src/android" /> + <classpath location="${android.jar}"/> + </javac> + <jar destfile="${build}/android/jar/jogllauncher.jar" filesonly="true"> + <fileset dir="${build}/android/classes" + includes="com/jogamp/android/launcher/**"/> + </jar> + <aapt.signed + jarbuilddir="${build}/android/jar" + jarbasename="jogllauncher" + nativebuilddir="${build}/android/lib" + nativebasename="non-existing" + androidmanifest.path="resources/android/AndroidManifest-launcher.xml" + androidresources.path="resources/android/res-launcher" + version.code="1" + version.name="version 1" /> + </target> + + <target name="one.dir.skip.check" depends="init,gluegen.cpptasks.detect.os"> + <uptodate property="one.dir.skip.native" targetfile="${jar}/jogl-all-natives-${os.and.arch}.jar"> + <srcfiles dir="${lib}" includes="*.${native.library.suffix}" /> + </uptodate> + <uptodate property="one.dir.skip.all" targetfile="${jogl.all.jar}"> + <srcfiles dir="${build.nativewindow}" includes="*.jar"/> + <srcfiles dir="${build.jogl}" includes="*.jar"/> + <srcfiles dir="${build.newt}" includes="*.jar"/> + </uptodate> + <uptodate property="one.dir.skip.android" targetfile="${jogl.all-android.jar}"> + <srcfiles dir="${build.nativewindow}" includes="*.jar"/> + <srcfiles dir="${build.jogl}" includes="*.jar"/> + <srcfiles dir="${build.newt}" includes="*.jar"/> + </uptodate> + <condition property="one.dir.skip"> + <and> + <isset property="one.dir.skip.native"/> + <isset property="one.dir.skip.all"/> + <isset property="one.dir.skip.android"/> + </and> + </condition> </target> - <target name="one.dir" depends="one.lib.dir,one.jar.dir"/> + <target name="one.dir" depends="one.dir.skip.check, one.jar.dir, android.package, android.launcher"/> <target name="repack-jars" depends="one.jar.dir"> <!-- Re-pack jars we have the intent to compress later, after signing --> @@ -286,7 +398,7 @@ source="${target.sourcelevel}" maxmemory="1024m" bottom="${javadoc.bottom}" > - <classpath refid="jogl_newt_all.classpath"/> + <classpath refid="jogl_all.classpath"/> <link offline="true" href="${javadoc.link}" packagelistLoc="${gluegen.root}/make/142-packages" /> <link offline="false" href="${gluegen.link}" /> <arg line="-J-Dnativetaglet.mapping=${basedir}/native-taglet.properties"/> @@ -307,7 +419,7 @@ source="${target.sourcelevel}" maxmemory="1024m" bottom="${javadoc.bottom}" > - <classpath refid="jogl_newt_all.classpath"/> + <classpath refid="jogl_all.classpath"/> <link offline="true" href="${javadoc.link}" packagelistLoc="${gluegen.root}/make/142-packages" /> <link offline="false" href="${gluegen.link}" /> <arg line="-J-Dnativetaglet.mapping=${basedir}/native-taglet.properties"/> @@ -329,7 +441,7 @@ source="${target.sourcelevel}" maxmemory="1024m" bottom="${javadoc.bottom}" > - <classpath refid="jogl_newt_all.classpath"/> + <classpath refid="jogl_all.classpath"/> <link offline="true" href="${javadoc.link}" packagelistLoc="${gluegen.root}/make/142-packages" /> <link offline="false" href="${gluegen.link}" /> <arg line="-J-Dnativetaglet.mapping=${basedir}/native-taglet.properties"/> @@ -350,7 +462,7 @@ source="${target.sourcelevel}" maxmemory="1024m" bottom="${javadoc.bottom}" > - <classpath refid="jogl_newt_all.classpath"/> + <classpath refid="jogl_all.classpath"/> <link offline="true" href="${javadoc.link}" packagelistLoc="${gluegen.root}/make/142-packages" /> <link offline="false" href="${gluegen.link}" /> <arg line="-J-Dnativetaglet.mapping=${basedir}/native-taglet.properties"/> |