aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README-build.html3
-rw-r--r--build.xml11
-rw-r--r--src/native/build.xml16
-rw-r--r--src/native/ogl/build-linux-amd64.xml56
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>
diff --git a/build.xml b/build.xml
index 7c94afc..1788280 100644
--- a/build.xml
+++ b/build.xml
@@ -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>