diff options
author | sg215889 <[email protected]> | 2009-07-15 02:01:48 -0700 |
---|---|---|
committer | sg215889 <[email protected]> | 2009-07-15 02:01:48 -0700 |
commit | f5389b978ffb8fb229ad1b6db4cb7c957818e5f4 (patch) | |
tree | b864a678972f95a502309b11814b8e4b57fa4d7d /make/build.xml | |
parent | 27b11223399cba943018a2f18908c4e8e5696b8f (diff) |
Build CDC named JARs for CVM in default build, no more specialized build necessary. Fix PointerBuffer allocateDirect()
Diffstat (limited to 'make/build.xml')
-rwxr-xr-x | make/build.xml | 110 |
1 files changed, 65 insertions, 45 deletions
diff --git a/make/build.xml b/make/build.xml index 4537582..90319d6 100755 --- a/make/build.xml +++ b/make/build.xml @@ -43,46 +43,49 @@ <property name="gluegen.excludes" value="com/sun/gluegen/runtime/BufferFactoryInternal.java,com/sun/gluegen/nativesig/**" /> </target> - <target name="init.javame.cdc.fp" if="isCDCFP"> - <property name="javac.bootclasspath.jar" value="lib/cdc_fp.jar" /> + <target name="setup.javase"> + <copy file="../src/java/com/sun/gluegen/runtime/BufferFactory.java.javase" tofile="${src.generated.java}/com/sun/gluegen/runtime/BufferFactory.java" /> + <copy file="../src/java/com/sun/gluegen/runtime/StructAccessor.java.javase" tofile="${src.generated.java}/com/sun/gluegen/runtime/StructAccessor.java" /> + <copy file="../src/java/com/sun/gluegen/runtime/PointerBuffer.java.javase" tofile="${src.generated.java}/com/sun/gluegen/runtime/PointerBuffer.java" /> </target> - <target name="setup.javase" unless="isCDCFP"> - <copy file="../src/java/com/sun/gluegen/runtime/BufferFactory.java.javase" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/BufferFactory.java" /> - <copy file="../src/java/com/sun/gluegen/runtime/StructAccessor.java.javase" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/StructAccessor.java" /> - <copy file="../src/java/com/sun/gluegen/runtime/PointerBuffer.java.javase" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/PointerBuffer.java" /> + <target name="setup.javacdc"> + <copy file="../src/java/com/sun/gluegen/runtime/BufferFactory.java.javame_cdc_fp" tofile="${src.generated-cdc.java}/com/sun/gluegen/runtime/BufferFactory.java" /> + <copy file="../src/java/com/sun/gluegen/runtime/StructAccessor.java.javame_cdc_fp" tofile="${src.generated-cdc.java}/com/sun/gluegen/runtime/StructAccessor.java" /> + <copy file="../src/java/com/sun/gluegen/runtime/PointerBuffer.java.javame_cdc_fp" tofile="${src.generated-cdc.java}/com/sun/gluegen/runtime/PointerBuffer.java" /> </target> - <target name="setup.javame.cdc.fp" if="isCDCFP"> - <copy file="../src/java/com/sun/gluegen/runtime/BufferFactory.java.javame_cdc_fp" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/BufferFactory.java" /> - <copy file="../src/java/com/sun/gluegen/runtime/StructAccessor.java.javame_cdc_fp" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/StructAccessor.java" /> - <copy file="../src/java/com/sun/gluegen/runtime/PointerBuffer.java.javame_cdc_fp" tofile="../${rootrel.build}/gensrc/java/com/sun/gluegen/runtime/PointerBuffer.java" /> - </target> - - <target name="init" depends="load.user.properties,setup-excludes-1,setup-excludes-2,init.javame.cdc.fp"> + <target name="init" depends="load.user.properties,setup-excludes-1,setup-excludes-2"> <!-- Declare all paths and user defined variables. --> + <property name="javac.bootclasspath-cdc.jar" value="lib/cdc_fp.jar" /> + <!-- The source directories. --> <property name="src.java" value="../src/java" /> <property name="build" value="../${rootrel.build}" /> <!-- The generated source directories. --> - <property name="src.generated" value="../${rootrel.build}/gensrc" /> - <property name="src.generated.java" value="../${rootrel.build}/gensrc/java" /> + <property name="src.generated" value="${build}/gensrc" /> + <property name="src.generated-cdc" value="${build}/gensrc-cdc" /> + <property name="src.generated.java" value="${src.generated}/java" /> + <property name="src.generated-cdc.java" value="${src.generated-cdc}/java" /> <!-- The compiler output directories. --> <property name="classes" value="${build}/classes" /> + <property name="classes-cdc" value="${build}/classes-cdc" /> <!-- Call the external config validator script to make sure the config is ok and consistent --> <ant antfile="validate-properties.xml" inheritall="true"/> <!-- Create the required output directories. --> <mkdir dir="${src.generated.java}" /> + <mkdir dir="${src.generated-cdc.java}" /> <mkdir dir="${classes}" /> + <mkdir dir="${classes-cdc}" /> - <!-- Set up compilation for either Java SE or Java ME / CDC / FP. --> - <antcall target="setup.javase" inheritRefs="true" /> - <antcall target="setup.javame.cdc.fp" inheritRefs="true" /> + <!-- Set up compilation for either Java SE or Java CDC --> + <antcall target="setup.javase" inheritRefs="true" /> + <antcall target="setup.javacdc" inheritRefs="true" /> <!-- Create the classpath for ANTLR. This requires the user-defined - "antlr.jar" property. --> @@ -324,18 +327,17 @@ <target name="c.rename.lib.mingw" if="isMingW"> <!-- FIXME: this is a hack; the cpptask should have an option to change the suffix or at least understand the override from .so to .dll --> - <move file="../${rootrel.build}/obj/libgluegen-rt.so" tofile="../${rootrel.build}/obj/gluegen-rt.dll" /> + <move file="${build}/obj/libgluegen-rt.so" tofile="${build}/obj/gluegen-rt.dll" /> </target> <target name="c.rename.lib.macosx" if="isOSX"> - <!-- FIXME: this is a hack; the cpptask should have an option to change the - suffix or at least understand the override from dylib to jnilib --> - <move file="../${rootrel.build}/obj/libgluegen-rt.dylib" tofile="../${rootrel.build}/obj/libgluegen-rt.jnilib" /> + <move file="${build}/obj/libgluegen-rt.dylib" tofile="${build}/obj/libgluegen-rt.jnilib" /> + <copy file="${build}/obj/libgluegen-rt.jnilib" tofile="${build}/obj/libgluegen-rt.so" /> </target> <target name="c.manifest" if="isVC8Family"> <!-- exec mt, the Microsoft Manifest Tool, to include DLL manifests in order to resolve the location of msvcr80.dll --> - <msvc.manifest objdir="../${rootrel.build}/obj" dllname="gluegen-rt" /> + <msvc.manifest objdir="${build}/obj" dllname="gluegen-rt" /> </target> <target name="c.build" depends="c.configure" unless="build.javaonly" > @@ -353,14 +355,14 @@ <condition property="c.compiler.use-debug"><istrue value="${c.compiler.debug}"/></condition> - <mkdir dir="../${rootrel.build}/obj" /> + <mkdir dir="${build}/obj" /> <echo message="Compiling ${c.compiler.src.files}" /> <echo message="user.dir=${user.dir}" /> <cc outtype="shared" - objdir="../${rootrel.build}/obj" - outfile="../${rootrel.build}/obj/${output.lib.name}" + objdir="${build}/obj" + outfile="${build}/obj/${output.lib.name}" optimize="${c.compiler.optimise}" debug="${c.compiler.debug}" multithreaded="true" @@ -393,30 +395,39 @@ <antcall target="c.rename.lib.macosx" inheritRefs="true" /> <antcall target="c.manifest" inheritRefs="true" /> <!-- Create Java Web Start jar file from built file --> - <jar destfile="../${rootrel.build}/gluegen-rt-natives-${os.and.arch}.jar"> - <fileset dir="../${rootrel.build}/obj"> + <jar destfile="${build}/gluegen-rt-natives-${os.and.arch}.jar"> + <fileset dir="${build}/obj"> <include name="*gluegen-rt.${native.library.suffix}" /> </fileset> </jar> + <jar destfile="${build}/gluegen-rt-cdc-natives-${os.and.arch}.jar"> + <fileset dir="${build}/obj"> + <include name="*gluegen-rt.${native.library.suffix-cdc}" /> + </fileset> + </jar> </target> <target name="build.nativelibrary" unless="build.javaonly" > <antcall target="c.build" inheritRefs="true" /> </target> + <target name="gluegen.build.gluegen-rt-cdc" > + <!-- Build just the gluegen-rt-cdc.jar classes using the Java CDC + boot classes --> + <copy todir="${classes-cdc}"> + <fileset dir="${classes}" + includes="com/** net/**" + excludes="com/sun/gluegen/runtime/** com/sun/gluegen/test/**" /> + </copy> - <target name="gluegen.rebuild.gluegen-rt" if="isCDCFP"> - <!-- Re-build just the gluegen-rt.jar classes using the Java ME - boot classes, if they're in use. --> - <delete dir="../${rootrel.build}/classes/com/sun/gluegen/runtime" /> - <javac destdir="${classes}" + <javac destdir="${classes-cdc}" source="1.4" debug="true" debuglevel="source,lines" excludes="${gluegen.excludes}" - bootclasspath="${javac.bootclasspath.jar}"> + bootclasspath="${javac.bootclasspath-cdc.jar}"> <src path="${src.java}" /> - <src path="${src.generated.java}" /> + <src path="${src.generated-cdc.java}" /> <classpath refid="antlr.classpath" /> </javac> </target> @@ -485,14 +496,6 @@ <classpath refid="antlr.classpath" /> </javac> - <!-- Re-build just the gluegen-rt.jar classes using the Java ME - boot classes, if they're in use. --> - <antcall target="gluegen.rebuild.gluegen-rt" inheritRefs="true" /> - - <!-- Build the (native code) NativeLibrary support for - gluegen-rt.jar using the just-built GlueGen. --> - <antcall target="build.nativelibrary" inheritRefs="true" /> - <!-- Build gluegen.jar. --> <jar destfile="${build}/gluegen.jar" manifest="Manifest"> <fileset dir="${classes}"> @@ -500,7 +503,6 @@ </fileset> </jar> - <!-- Build gluegen-rt.jar. --> <copy file="Manifest-rt" tofile="${build}/Manifest-rt.temp" overwrite="true"> @@ -508,6 +510,8 @@ <filter token="BASEVERSION" value="${gluegen_base_version}"/> </filterset> </copy> + + <!-- Build gluegen-rt.jar. --> <jar destfile="${build}/gluegen-rt.jar" manifest="${build}/Manifest-rt.temp"> <fileset dir="${classes}"> <include name="com/sun/gluegen/runtime/*.class" /> @@ -515,6 +519,22 @@ </fileset> </jar> + <!-- Build the (native code) NativeLibrary support for + gluegen-rt[-cdc].jar using the just-built GlueGen. --> + <antcall target="build.nativelibrary" inheritRefs="true" /> + + <!-- Build just the gluegen-rt-cdc.jar classes using the Java CDC + boot classes. --> + <antcall target="gluegen.build.gluegen-rt-cdc" inheritRefs="true" /> + + <!-- Build gluegen-rt-cdc.jar. --> + <jar destfile="${build}/gluegen-rt-cdc.jar" manifest="${build}/Manifest-rt.temp"> + <fileset dir="${classes-cdc}"> + <include name="com/sun/gluegen/runtime/*.class" /> + <include name="com/sun/gluegen/runtime/opengl/*.class" /> + </fileset> + </jar> + <!-- Copy antlr.jar into build directory for convenience so gluegen.jar can be run via "java -jar". antlr.jar is referenced via a Class-Path entry in the Manifest of @@ -526,7 +546,7 @@ <target name="clean"> <delete includeEmptyDirs="true" quiet="true"> - <fileset dir="../${rootrel.build}" /> + <fileset dir="${build}" /> </delete> </target> </project> |