aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChien Yang <[email protected]>2005-02-24 18:14:14 +0000
committerChien Yang <[email protected]>2005-02-24 18:14:14 +0000
commit43229fa4d35888f080e4b46c7610f69980f48251 (patch)
tree409c15f0a9ef06f7767783ec5e33ce1f0bf9ce74
parentd918f6e6ca177a2f591fa0c4338a306d2c54ac5d (diff)
Fixed issue 105 : Build for IA64 (Itanium) 64-bit Linux.
Thanks to Ian (dr_grim) for his code contribution. git-svn-id: https://svn.java.net/svn/j3d-core~svn/trunk@137 ba19aa83-45c5-6ac9-afd3-db810772062c
-rw-r--r--build.xml11
-rw-r--r--src/native/build.xml16
-rw-r--r--src/native/ogl/build-linux-ia64.xml57
-rw-r--r--src/native/share/build-linux-ia64.xml56
4 files changed, 137 insertions, 3 deletions
diff --git a/build.xml b/build.xml
index 5f2044d..27d6b4a 100644
--- a/build.xml
+++ b/build.xml
@@ -164,6 +164,11 @@
<property name="platform" value="linux-amd64"/>
</target>
+ <target name="setupLinuxIA64" if="isLinuxOnIA64">
+ <property name="ostype" value="linux"/>
+ <property name="platform" value="linux-ia64"/>
+ </target>
+
<!-- win32 should be rename as windows -->
<target name="setupWindows" if="isWindowsOnX86">
<property name="ostype" value="win32"/>
@@ -171,7 +176,7 @@
</target>
<target name="setupPlatform"
- depends="init, setupBuildType, setupSolaris, setupLinux, setupLinuxAmd64, setupWindows">
+ depends="init, setupBuildType, setupSolaris, setupLinux, setupLinuxAmd64, setupLinuxIA64, 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"/>
@@ -305,6 +310,10 @@
<os name="linux" arch="amd64"/>
</condition>
+ <condition property="isLinuxOnIA64">
+ <os name="linux" arch="ia64"/>
+ </condition>
+
<condition property="isSolarisOnSparc">
<os name="SunOS" arch="sparc"/>
</condition>
diff --git a/src/native/build.xml b/src/native/build.xml
index 285fa3b..8bd6b91 100644
--- a/src/native/build.xml
+++ b/src/native/build.xml
@@ -35,6 +35,12 @@
<property name="coreUtilsLibDependency" value="lib/amd64/libj3dutils.so"/>
</target>
+ <target name="nativeSetup-debug-linux-ia64" if="isLinuxOnIA64">
+ <property name="bldFlag" value="g"/>
+ <property name="coreLibDependency" value="lib/ia64/libj3dcore-ogl.so"/>
+ <property name="coreUtilsLibDependency" value="lib/ia64/libj3dutils.so"/>
+ </target>
+
<target name="nativeSetup-debug-win32" if="isWindowsOnX86">
<property name="bldFlag"
value="-DWIN32 -DDEBUG -D_WINDOWS"/>
@@ -43,7 +49,7 @@
</target>
- <target name="nativeSetup-debug" depends="nativeSetup-debug-solaris, nativeSetup-debug-linux, nativeSetup-debug-linux-amd64, nativeSetup-debug-win32">
+ <target name="nativeSetup-debug" depends="nativeSetup-debug-solaris, nativeSetup-debug-linux, nativeSetup-debug-linux-amd64, nativeSetup-debug-linux-ia64, nativeSetup-debug-win32">
<property name="bldType" value="debug"/>
<property name="javahCoreSrc"
location="${src}/classes/share/javax/media/j3d"/>
@@ -73,6 +79,12 @@
<property name="coreUtilsLibDependency" value="lib/amd64/libj3dutils.so"/>
</target>
+ <target name="nativeSetup-opt-linux-ia64" if="isLinuxOnIA64">
+ <property name="bldFlag" value="O"/>
+ <property name="coreLibDependency" value="lib/ia64/libj3dcore-ogl.so"/>
+ <property name="coreUtilsLibDependency" value="lib/ia64/libj3dutils.so"/>
+ </target>
+
<target name="nativeSetup-opt-win32" if="isWindowsOnX86">
<property name="bldFlag"
value="-DWIN32 -DNDEBUG -D_WINDOWS"/>
@@ -80,7 +92,7 @@
<property name="coreUtilsLibDependency" value="bin/j3dutils.dll"/>
</target>
- <target name="nativeSetup-opt" depends="nativeSetup-opt-solaris, nativeSetup-opt-linux, nativeSetup-opt-linux-amd64, nativeSetup-opt-win32">
+ <target name="nativeSetup-opt" depends="nativeSetup-opt-solaris, nativeSetup-opt-linux, nativeSetup-opt-linux-amd64, nativeSetup-opt-linux-ia64, 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-ia64.xml b/src/native/ogl/build-linux-ia64.xml
new file mode 100644
index 0000000..ff24611
--- /dev/null
+++ b/src/native/ogl/build-linux-ia64.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<!--
+/*
+ * $RCSfile$
+ *
+ * Copyright (c) 2005 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 IA64 -->
+<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/ia64"/>
+
+ <property name="oglsrc" location="${src}/native/ogl"/>
+
+ <!-- Compile the c source files; based on build-linux-amd64.xml-->
+ <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="gcc">
+ <arg line="-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; based on build-linux-amd64.xml-->
+ <!-- Must use gcc to link, not ld, hence also need -shared; refer to http://www.gelato.unsw.edu.au/linux-ia64/0006/0212.html -->
+ <!-- Removed -R/usr/openwin/lib - an ld specific option (should be a filename, not a dir?!?) -->
+ <exec dir="${build}/${platform}/${bldType}/native/ogl/objs" executable="gcc">
+ <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 defs -shared -L/usr/X11R6/lib -ldl -lGL -lX11 -lXext -lm -lnsl -lc -L${java.home}/lib/ia64 -ljawt -L${java.home}/lib/ia64/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/ia64"/>
+
+ </target>
+
+ <target name="dist">
+ <!-- Create the distribution directory -->
+ <mkdir dir="${dist}/${platform}/lib/ia64"/>
+
+ <!-- Copy the library files -->
+ <copy file="${build}/${platform}/opt/lib/ia64/libj3dcore-ogl.so"
+ todir="${dist}/${platform}/lib/ia64"/>
+
+ </target>
+
+</project>
diff --git a/src/native/share/build-linux-ia64.xml b/src/native/share/build-linux-ia64.xml
new file mode 100644
index 0000000..8188048
--- /dev/null
+++ b/src/native/share/build-linux-ia64.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+
+<!--
+/*
+ * $RCSfile$
+ *
+ * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
+ *
+ * Use is subject to license terms.
+ *
+ * $Revision$
+ * $Date$
+ * $State$
+ */
+ -->
+
+<!-- Ant file for building native utilities files for Linux -->
+<project name="Java 3D" default="compile">
+
+ <target name="compile">
+
+ <echo message="Executing 64 bit native utilities build [${bldType}]"/>
+
+ <!-- Create the build directories linux -->
+ <mkdir dir="${build}/${platform}/${bldType}/native/share/objs"/>
+ <mkdir dir="${build}/${platform}/${bldType}/lib/ia64"/>
+
+ <!-- Compile the c source files; based on build-linux-amd64.xml-->
+ <exec dir="${build}/${platform}/${bldType}/native/share/objs" executable="gcc">
+ <arg line=" -I/include -I${java.home}/../include -I${java.home}/../include/linux -I/usr/openwin/include -I${javahUtilsTarget} -${bldFlag} -DLINUX -c ${core_utils_src}/native/share/J3DTimer.c"/>
+ </exec>
+
+ <!-- Create the library file; based on build-linux-amd64.xml-->
+ <!-- Must use gcc to link, not ld, hence also need -shared; refer to http://www.gelato.unsw.edu.au/linux-ia64/0006/0212.html -->
+ <!-- Removed -R/usr/openwin/lib - an ld specific option (should be a filename, not a dir?!?) -->
+ <exec dir="${build}/${platform}/${bldType}/native/share/objs" executable="gcc">
+ <arg line="J3DTimer.o -G -z lazyload -lc -shared -o libj3dutils.so"/>
+ </exec>
+
+ <!-- Copy the copyright library file -->
+ <copy file="${build}/${platform}/${bldType}/native/share/objs/libj3dutils.so"
+ todir="${build}/${platform}/${bldType}/lib/ia64"/>
+
+ </target>
+
+ <target name="dist">
+ <!-- Create the distribution directory -->
+ <mkdir dir="${dist}/${platform}/lib/ia64"/>
+
+ <!-- Copy the library files -->
+ <copy file="${build}/${platform}/opt/lib/ia64/libj3dutils.so"
+ todir="${dist}/${platform}/lib/ia64"/>
+ </target>
+
+
+</project>