diff options
-rw-r--r-- | README-build.html | 3 | ||||
-rw-r--r-- | build.xml | 11 | ||||
-rw-r--r-- | src/native/build.xml | 16 | ||||
-rw-r--r-- | src/native/ogl/build-linux-amd64.xml | 56 |
4 files changed, 83 insertions, 3 deletions
diff --git a/README-build.html b/README-build.html index 8246bb2..b82fbb2 100644 --- a/README-build.html +++ b/README-build.html @@ -119,6 +119,9 @@ following directories: <p>The default target, jar-opt, creates an optimized jar files and native libraries. </p> +<p>On Amd64 platform an OutOfMemoryError can be seen. In this case set +the environment variable ANT_OPTS to -Xmx256m.<br> +</p> <p>Steps: </p> <ul> @@ -124,6 +124,11 @@ <property name="platform" value="linux-i586"/> </target> + <target name="setupLinuxAmd64" if="isLinuxOnAmd64"> + <property name="ostype" value="linux"/> + <property name="platform" value="linux-amd64"/> + </target> + <!-- win32 should be rename as windows --> <target name="setupWindows" if="isWindowsOnX86"> <property name="ostype" value="win32"/> @@ -161,7 +166,7 @@ </target> <target name="setupPlatform" - depends="init, setupProduction, setupDevPhase ,setupSolaris, setupLinux, setupWindows"> + depends="init, setupProduction, setupDevPhase ,setupSolaris, setupLinux, setupLinuxAmd64, setupWindows"> <property name="build-debug-gen" location="${build}/${platform}/debug/gen"/> <property name="build-opt-gen" location="${build}/${platform}/opt/gen"/> <property name="docname" value="java3d-${version_file}-doc"/> @@ -189,6 +194,10 @@ <os name="linux" arch="i386"/> </condition> + <condition property="isLinuxOnAmd64"> + <os name="linux" arch="amd64"/> + </condition> + <condition property="isSolarisOnSparc"> <os name="SunOS" arch="sparc"/> </condition> diff --git a/src/native/build.xml b/src/native/build.xml index f2ca9a1..a488504 100644 --- a/src/native/build.xml +++ b/src/native/build.xml @@ -29,6 +29,12 @@ <property name="coreUtilsLibDependency" value="lib/i386/libj3dutils.so"/> </target> + <target name="nativeSetup-debug-linux-amd64" if="isLinuxOnAmd64"> + <property name="bldFlag" value="g -fPIC -march=k8 -msse2 -mfpmath=sse"/> + <property name="coreLibDependency" value="lib/amd64/libj3dcore-ogl.so"/> + <property name="coreUtilsLibDependency" value="lib/amd64/libj3dutils.so"/> + </target> + <target name="nativeSetup-debug-win32" if="isWindowsOnX86"> <property name="bldFlag" value="-DWIN32 -DDEBUG -D_WINDOWS"/> @@ -37,7 +43,7 @@ </target> - <target name="nativeSetup-debug" depends="nativeSetup-debug-solaris, nativeSetup-debug-linux, nativeSetup-debug-win32"> + <target name="nativeSetup-debug" depends="nativeSetup-debug-solaris, nativeSetup-debug-linux, nativeSetup-debug-linux-amd64, nativeSetup-debug-win32"> <property name="bldType" value="debug"/> <property name="javahCoreSrc" location="${src}/classes/share/javax/media/j3d"/> @@ -61,6 +67,12 @@ <property name="coreUtilsLibDependency" value="lib/i386/libj3dutils.so"/> </target> + <target name="nativeSetup-opt-linux-amd64" if="isLinuxOnAmd64"> + <property name="bldFlag" value="O -fPIC -march=k8 -msse2 -mfpmath=sse"/> + <property name="coreLibDependency" value="lib/amd64/libj3dcore-ogl.so"/> + <property name="coreUtilsLibDependency" value="lib/amd64/libj3dutils.so"/> + </target> + <target name="nativeSetup-opt-win32" if="isWindowsOnX86"> <property name="bldFlag" value="-DWIN32 -DNDEBUG -D_WINDOWS"/> @@ -68,7 +80,7 @@ <property name="coreUtilsLibDependency" value="bin/j3dutils.dll"/> </target> - <target name="nativeSetup-opt" depends="nativeSetup-opt-solaris, nativeSetup-opt-linux, nativeSetup-opt-win32"> + <target name="nativeSetup-opt" depends="nativeSetup-opt-solaris, nativeSetup-opt-linux, nativeSetup-opt-linux-amd64, nativeSetup-opt-win32"> <property name="bldType" value="opt"/> <property name="javahCoreSrc" location="${src}/classes/share/javax/media/j3d"/> diff --git a/src/native/ogl/build-linux-amd64.xml b/src/native/ogl/build-linux-amd64.xml new file mode 100644 index 0000000..dc17d2b --- /dev/null +++ b/src/native/ogl/build-linux-amd64.xml @@ -0,0 +1,56 @@ +<?xml version="1.0"?> +<!-- +/* + * $RCSfile$ + * + * Copyright (c) 2004 Sun Microsystems, Inc. All rights reserved. + * + * Use is subject to license terms. + * + * $Revision$ + * $Date$ + * $State$ + */ + --> + +<!-- Ant file for building native ogl renderer files for Linux AMD64 --> +<project name="Java 3D" default="compile"> + + <target name="compile"> + + <echo message="Executing 64 bit native renderer build [${bldType}]"/> + + <!-- Create the build directories for linux --> + <mkdir dir="${build}/${platform}/${bldType}/native/ogl/objs"/> + <mkdir dir="${build}/${platform}/${bldType}/lib/amd64"/> + + <property name="oglsrc" location="${src}/native/ogl"/> + + <!-- Compile the c source files--> + <!-- Inhibit all warning for 32 bit build. Any warning will be caught in the 64 bit build --> + <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="gcc"> + <arg line="-m64 -march=k8 -I${java.home}/../include -I${java.home}/../include/linux -I${javahCoreTarget} -${bldFlag} -DLINUX -c ${oglsrc}/DrawingSurfaceObjectAWT.c ${oglsrc}/Canvas3D.c ${oglsrc}/GraphicsContext3D.c ${oglsrc}/NativeWSInfo.c ${oglsrc}/NativeScreenInfo.c ${oglsrc}/NativeConfigTemplate3D.c ${oglsrc}/MasterControl.c ${oglsrc}/RasterRetained.c ${oglsrc}/CompressedGeometryRetained.c ${oglsrc}/GeometryArrayRetained.c ${oglsrc}/Attributes.c ${oglsrc}/Lights.c ${oglsrc}/NativeAPIInfo.c"/> + </exec> + + <!-- Create the library file--> + <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="ld"> + <arg line="DrawingSurfaceObjectAWT.o Canvas3D.o GraphicsContext3D.o NativeWSInfo.o NativeScreenInfo.o NativeConfigTemplate3D.o MasterControl.o RasterRetained.o CompressedGeometryRetained.o GeometryArrayRetained.o Attributes.o Lights.o NativeAPIInfo.o -G -z lazyload -L/usr/X11R6/lib64 -ldl -lGL -lX11 -lXext -lm -lnsl -lc -R/usr/openwin/lib -L${java.home}/lib/amd64 -ljawt -L${java.home}/lib/amd64/server -ljvm -o libj3dcore-ogl.so"/> + </exec> + + <!-- Copy the copyright library file --> + <copy file="${build}/${platform}/${bldType}/native/ogl/objs/libj3dcore-ogl.so" + todir="${build}/${platform}/${bldType}/lib/amd64"/> + + </target> + + <target name="dist"> + <!-- Create the distribution directory --> + <mkdir dir="${dist}/${platform}/lib/amd64"/> + + <!-- Copy the library files --> + <copy file="${build}/${platform}/opt/lib/amd64/libj3dcore-ogl.so" + todir="${dist}/${platform}/lib/amd64"/> + + </target> + +</project> |