changeset 892:81d73be29ce6

Initial PPC-Port checkin With this change the JDK repository should build on Linux/PPC with a IBM JDK7 boot JDK. Compiled with the following command lines: debug build: ------------ make FT_CFLAGS=-m64 LANG=C ALT_BOOTDIR=/sapmnt/depot/tools/gen/linuxppc64/licenseware/jse/1.7.0 ALT_OUTPUTDIR=/priv/d046063/OpenJDK/output_ppc-aix_jdk_dbg ARCH_DATA_MODEL=64 HOTSPOT_BUILD_JOBS=8 PARALLEL_COMPILE_JOBS=8 ALT_FREETYPE_LIB_PATH=/usr/local/lib ALT_FREETYPE_HEADERS_PATH=/usr/local/include ANT_HOME=/usr/local/apache-ant-1.8.4 ANT_ARGS=-autoproxy IDLJ=$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar com.sun.tools.corba.se.idl.toJavaPortable.Compile RMIC=$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar sun.rmi.rmic.Main VERBOSE=true HOTSPOT_TARGET=all_debugcore CC_INTERP=true OPENJDK=true CORE_BUILD=true debug_build 2>&1 | tee /priv/d046063/OpenJDK/output_ppc-aix_jdk_dbg.log product build: -------------- make FT_CFLAGS=-m64 LANG=C ALT_BOOTDIR=/sapmnt/depot/tools/gen/linuxppc64/licenseware/jse/1.7.0 ALT_OUTPUTDIR=/priv/d046063/OpenJDK/output_ppc-aix_jdk_opt ARCH_DATA_MODEL=64 HOTSPOT_BUILD_JOBS=8 PARALLEL_COMPILE_JOBS=8 ALT_FREETYPE_LIB_PATH=/usr/local/lib ALT_FREETYPE_HEADERS_PATH=/usr/local/include ANT_HOME=/usr/local/apache-ant-1.8.4 ANT_ARGS=-autoproxy IDLJ=$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar com.sun.tools.corba.se.idl.toJavaPortable.Compile RMIC=$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar sun.rmi.rmic.Main VERBOSE=true HOTSPOT_TARGET=all_productcore CC_INTERP=true OPENJDK=true CORE_BUILD=true product_build 2>&1 | tee /priv/d046063/OpenJDK/output_ppc-aix_jdk_opt.log
author simonis
date Mon, 25 Jun 2012 14:48:48 +0200
parents 9b9a6d318e8a
children 82498bce2953
files README-ppc.html
diffstat 1 files changed, 131 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README-ppc.html	Mon Jun 25 14:48:48 2012 +0200
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 
+<head> 
+  <title>OpenJDK PowerPC/AIX Port</title> 
+  <style type="text/css" id="internalStyle">
+    pre.terminal {
+      display: table;
+      color: white;
+      background-color: black;
+      border-style: solid;
+      border-width: 1px;
+      border-color: darkgray;
+      margin: 8px 0px 5px 0px;
+      padding: 2px;
+      width: auto; 
+      overflow: auto;  
+      font-family: monospace;
+    }
+  </style>
+</head>
+<body>
+
+<h1>OpenJDK PowerPC Port</h1>
+
+<p>
+This file contains some information on the <a href="http://openjdk.java.net/projects/ppc-aix-port">
+OpenJDK PowerPC Port for Linux and AIX</a>. 
+</p>
+
+<h2>Building on Linux/PPC64</h2>
+
+<p>
+Currently, after the initial check-in, the JDK will build on
+Linux/PPC64. However, the created JVM will be not functional (i.e. java will
+crash instantly with an "Unimplemented" error) because many of platfrom
+dependent functions are implemented as empty stubs.
+</p>
+
+<p>
+Our current build system is a Power6 box running SLES 10.3 with gcc version
+4.1.2 (in general, more recent Linux distributions should work as well) and an 
+<a href="http://www.ibm.com/developerworks/java/jdk/linux/download.html#java7">IBM JDK 7</a> bootstrap JDK. 
+We've installed the general build dependecies as described in the main
+<a href="http://hg.openjdk.java.net/ppc-aix-port/jdk7u/raw-file/tip/README-builds.html">
+README-builds.html</a> file. We then build the debug and product version of the
+JDK with the following command lines:
+</p>
+
+<pre class="terminal">
+&gt; make FT_CFLAGS=-m64 LANG=C \
+ALT_BOOTDIR=/sapmnt/depot/tools/gen/linuxppc64/licenseware/jse/1.7.0 \
+ALT_OUTPUTDIR=/priv/d046063/OpenJDK/output_ppc-aix-port_dbg \
+ARCH_DATA_MODEL=64 \
+HOTSPOT_BUILD_JOBS=8 \
+PARALLEL_COMPILE_JOBS=8 \
+ALT_FREETYPE_LIB_PATH=/usr/local/lib \
+ALT_FREETYPE_HEADERS_PATH=/usr/local/include \
+ANT_HOME=/usr/local/apache-ant-1.8.4 \
+IDLJ='$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar com.sun.tools.corba.se.idl.toJavaPortable.Compile' \
+RMIC='$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar sun.rmi.rmic.Main' \
+VERBOSE=true \
+HOTSPOT_TARGET=all_debugcore \
+CC_INTERP=true \
+OPENJDK=true \
+CORE_BUILD=true \
+debug_build 2>&1 | tee /priv/d046063/OpenJDK/output_ppc-aix-port_dbg.log
+</pre>
+
+A complete build log is availabele here: <a href="http://cr.openjdk.java.net/~simonis/ppc-aix-port/build-logs/output_ppc-aix-port_dbg.log">output_ppc-aix-port_dbg.log</a>.
+
+<pre class="terminal">
+&gt; make FT_CFLAGS=-m64 LANG=C \
+ALT_BOOTDIR=/sapmnt/depot/tools/gen/linuxppc64/licenseware/jse/1.7.0 \
+ALT_OUTPUTDIR=/priv/d046063/OpenJDK/output_ppc-aix-port_opt \
+ARCH_DATA_MODEL=64 \
+HOTSPOT_BUILD_JOBS=8 \
+PARALLEL_COMPILE_JOBS=8 \
+ALT_FREETYPE_LIB_PATH=/usr/local/lib \
+ALT_FREETYPE_HEADERS_PATH=/usr/local/include \
+ANT_HOME=/usr/local/apache-ant-1.8.4 \
+IDLJ='$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar com.sun.tools.corba.se.idl.toJavaPortable.Compile' \
+RMIC='$(ALT_BOOTDIR)/bin/java -cp $(ALT_BOOTDIR)/lib/tools.jar sun.rmi.rmic.Main' \
+VERBOSE=true \
+HOTSPOT_TARGET=all_productcore \
+CC_INTERP=true \
+OPENJDK=true \
+CORE_BUILD=true \
+product_build 2>&1 | tee /priv/d046063/OpenJDK/output_ppc-aix-port_opt.log
+</pre>
+
+A complete build log is availabele here: <a href="http://cr.openjdk.java.net/~simonis/ppc-aix-port/build-logs/output_ppc-aix-port_opt.log">output_ppc-aix-port_opt.log</a>.
+
+<p>
+Until we integrate and fix all the missing stubs the following or a similar error will occur when the VM will be started:
+</p>
+
+<pre class="terminal">
+&gt; /priv/d046063/OpenJDK/output_ppc-aix-port_dbg-debug/bin/java -version
+# To suppress the following error report, specify this argument
+# after -XX: or in .hotspotrc:  SuppressErrorAt=/icache_ppc.cpp:31
+#
+# A fatal error has been detected by the Java Runtime Environment:
+#
+#  Internal Error (/sapmnt/ld9502/a/priv/d046063/OpenJDK/ppc-aix-port/jdk7u/hotspot/src/cpu/ppc/vm/icache_ppc.cpp:31), pid=15473, tid=4398067565120
+#  Error: Unimplemented()
+#
+# JRE version: 7.0
+# Java VM: OpenJDK 64-Bit  VM (23.2-b04-jvmg interpreted mode linux- )
+# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
+#
+# An error report file with more information is saved as:
+# /sapmnt/ld9502/a/priv/d046063/OpenJDK/ppc-aix-port/jdk7u/hs_err_pid15473.log
+#
+# If you would like to submit a bug report, please visit:
+#   http://bugreport.sun.com/bugreport/crash.jsp
+#
+Current thread is 4398067565120
+Dumping core ...
+Aborted
+</pre>
+
+<h2>Building on AIX/PPC64</h2>
+
+<p>
+TBD.
+</p>
+
+</body>
+</html>