changeset in /hg/icedtea: 2007-11-07 Gary Benson <gbenson at redh...

Gary Benson gbenson at redhat.com
Thu Nov 8 09:38:06 PST 2007


changeset 7130794f3f47 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=7130794f3f47
description:
	2007-11-07  Gary Benson  <gbenson at redhat.com>

		* patches/icedtea-bytecodeInterpreter.patch: New file.
		* patches/icedtea-signature-iterator.patch: Likewise.
		* patches/icedtea-signed-types.patch: Likewise.
		* patches/icedtea-test-atomic-operations.patch: Likewise.
		* patches/icedtea-core-build.patch: Likewise.
		* patches/icedtea-linker-options.patch: Likewise.
		* patches/icedtea-ports.patch: Likewise.
		* Makefile.am (ICEDTEA_PATCHES): Added the above.
		* Makefile.in: Regenerated.

diffstat:

10 files changed, 713 insertions(+)
ChangeLog                                    |   12 
Makefile.am                                  |    7 
Makefile.in                                  |    7 
patches/icedtea-bytecodeInterpreter.patch    |   36 ++
patches/icedtea-core-build.patch             |  151 ++++++++++
patches/icedtea-linker-options.patch         |   48 +++
patches/icedtea-ports.patch                  |  359 ++++++++++++++++++++++++++
patches/icedtea-signature-iterator.patch     |   44 +++
patches/icedtea-signed-types.patch           |   24 +
patches/icedtea-test-atomic-operations.patch |   25 +

diffs (truncated from 768 to 500 lines):

diff -r cd2a405502f1 -r 7130794f3f47 ChangeLog
--- a/ChangeLog	Thu Nov 08 10:57:58 2007 -0500
+++ b/ChangeLog	Thu Nov 08 17:37:58 2007 +0000
@@ -1,3 +1,15 @@ 2007-11-07  Lillian Angel  <langel at redha
+2007-11-07  Gary Benson  <gbenson at redhat.com>
+
+	* patches/icedtea-bytecodeInterpreter.patch: New file.
+	* patches/icedtea-signature-iterator.patch: Likewise.
+	* patches/icedtea-signed-types.patch: Likewise.
+	* patches/icedtea-test-atomic-operations.patch: Likewise.
+	* patches/icedtea-core-build.patch: Likewise.
+	* patches/icedtea-linker-options.patch: Likewise.
+	* patches/icedtea-ports.patch: Likewise.
+	* Makefile.am (ICEDTEA_PATCHES): Added the above.
+	* Makefile.in: Regenerated.
+
 2007-11-07  Lillian Angel  <langel at redhat.com>
 
 	* Makefile.am: Removed docs patch.
diff -r cd2a405502f1 -r 7130794f3f47 Makefile.am
--- a/Makefile.am	Thu Nov 08 10:57:58 2007 -0500
+++ b/Makefile.am	Thu Nov 08 17:37:58 2007 +0000
@@ -186,6 +186,13 @@ ICEDTEA_PATCHES = \
 	patches/icedtea-javafiles.patch \
 	patches/icedtea-bytecodeInterpreterWithChecks.patch \
 	patches/icedtea-corba.patch \
+	patches/icedtea-bytecodeInterpreter.patch \
+	patches/icedtea-signature-iterator.patch \
+	patches/icedtea-signed-types.patch \
+	patches/icedtea-test-atomic-operations.patch \
+	patches/icedtea-core-build.patch \
+	patches/icedtea-linker-options.patch \
+	patches/icedtea-ports.patch \
 	$(FAST_BUILD_PATCH) \
 	$(DISTRIBUTION_PATCHES)
 
diff -r cd2a405502f1 -r 7130794f3f47 Makefile.in
--- a/Makefile.in	Thu Nov 08 10:57:58 2007 -0500
+++ b/Makefile.in	Thu Nov 08 17:37:58 2007 +0000
@@ -305,6 +305,13 @@ ICEDTEA_PATCHES = \
 	patches/icedtea-javafiles.patch \
 	patches/icedtea-bytecodeInterpreterWithChecks.patch \
 	patches/icedtea-corba.patch \
+	patches/icedtea-bytecodeInterpreter.patch \
+	patches/icedtea-signature-iterator.patch \
+	patches/icedtea-signed-types.patch \
+	patches/icedtea-test-atomic-operations.patch \
+	patches/icedtea-core-build.patch \
+	patches/icedtea-linker-options.patch \
+	patches/icedtea-ports.patch \
 	$(FAST_BUILD_PATCH) \
 	$(DISTRIBUTION_PATCHES)
 
diff -r cd2a405502f1 -r 7130794f3f47 patches/icedtea-bytecodeInterpreter.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-bytecodeInterpreter.patch	Thu Nov 08 17:37:58 2007 +0000
@@ -0,0 +1,36 @@
+diff -r b3238230c1ef openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp
+--- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp	Fri Nov 02 10:14:32 2007 +0000
++++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp	Fri Nov 02 10:15:45 2007 +0000
+@@ -63,7 +63,6 @@ union frame_manager_message {
+ };
+ 
+ class BytecodeInterpreter : StackObj {
+-friend class SharedRuntime;
+ friend class AbstractInterpreterGenerator;
+ friend class CppInterpreterGenerator;
+ friend class InterpreterGenerator;
+diff -r bae119bcbcd0 openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp
+--- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Nov 02 15:08:47 2007 +0000
++++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Nov 02 15:21:08 2007 +0000
+@@ -521,16 +521,16 @@ BytecodeInterpreter::run(interpreterStat
+ 
+ /* 0xC0 */ &&opc_checkcast,   &&opc_instanceof,     &&opc_monitorenter, &&opc_monitorexit,
+ /* 0xC4 */ &&opc_wide,        &&opc_multianewarray, &&opc_ifnull,       &&opc_ifnonnull,
+-/* 0xC8 */ &&opc_goto_w,      &&opc_jsr_w,          &&opc_breakpoint,   &&opc_fast_igetfield,
+-/* 0xCC */ &&opc_fastagetfield,&&opc_fast_aload_0,  &&opc_fast_iaccess_0, &&opc__fast_aaccess_0,
+-
+-/* 0xD0 */ &&opc_fast_linearswitch, &&opc_fast_binaryswitch, &&opc_return_register_finalizer,      &&opc_default,
++/* 0xC8 */ &&opc_goto_w,      &&opc_jsr_w,          &&opc_breakpoint,   &&opc_default,
++/* 0xCC */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
++
++/* 0xD0 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ /* 0xD4 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ /* 0xD8 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ /* 0xDC */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ 
+ /* 0xE0 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+-/* 0xE4 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
++/* 0xE4 */ &&opc_default,     &&opc_return_register_finalizer, &&opc_default, &&opc_default,
+ /* 0xE8 */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ /* 0xEC */ &&opc_default,     &&opc_default,        &&opc_default,      &&opc_default,
+ 
diff -r cd2a405502f1 -r 7130794f3f47 patches/icedtea-core-build.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-core-build.patch	Thu Nov 08 17:37:58 2007 +0000
@@ -0,0 +1,151 @@
+diff -ru openjdk.orig/control/make/hotspot-rules.gmk openjdk/control/make/hotspot-rules.gmk
+--- openjdk.orig/control/make/hotspot-rules.gmk	2007-10-12 08:45:09.000000000 +0100
++++ openjdk/control/make/hotspot-rules.gmk	2007-11-08 09:40:57.000000000 +0000
+@@ -75,6 +75,11 @@
+   HOTSPOT_TARGET = all_fastdebug
+ endif
+ 
++# Use the special build targets on PPC for now
++ifneq ($(findstring ppc,$(ARCH)),)
++  HOTSPOT_TARGET := $(HOTSPOT_TARGET)core
++endif
++
+ HOTSPOT_BUILD_ARGUMENTS += $(COMMON_BUILD_ARGUMENTS)
+ HOTSPOT_BUILD_ARGUMENTS += ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR)
+ HOTSPOT_BUILD_ARGUMENTS += ALT_EXPORT_PATH=$(HOTSPOT_EXPORT_PATH)
+diff -ru openjdk.orig/hotspot/make/Makefile openjdk/hotspot/make/Makefile
+--- openjdk.orig/hotspot/make/Makefile	2007-10-12 08:45:12.000000000 +0100
++++ openjdk/hotspot/make/Makefile	2007-11-08 09:40:57.000000000 +0000
+@@ -91,6 +91,15 @@
+ all_debug:     jvmg jvmg1 jvmgkernel docs export_debug
+ all_optimized: optimized optimized1 optimizedkernel docs export_optimized
+ 
++# Core (non-compiler) targets made available with this Makefile
++CORE_VM_TARGETS=productcore fastdebugcore optimizedcore jvmgcore
++
++allcore:           all_productcore all_fastdebugcore
++all_productcore:   productcore docs export_product
++all_fastdebugcore: fastdebugcore docs export_fastdebug
++all_debugcore:     jvmgcore docs export_debug
++all_optimizedcore: optimizedcore docs export_optimized
++
+ # Do everything
+ world:         all create_jdk
+ 
+@@ -117,6 +126,10 @@
+ 	$(CD) $(GAMMADIR)/make; \
+ 	$(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT)
+ 
++$(CORE_VM_TARGETS):
++	$(CD) $(GAMMADIR)/make; \
++	$(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT)
++
+ # Build compiler1 (client) rule, different for platforms
+ generic_build1:
+ 	$(MKDIR) -p $(OUTPUTDIR)
+@@ -207,17 +220,24 @@
+ C1_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler1
+ C2_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_compiler2
+ KERNEL_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_kernel
++CORE_BASE_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_core
+ C1_DIR=$(C1_BASE_DIR)/$(VM_SUBDIR)
+ C2_DIR=$(C2_BASE_DIR)/$(VM_SUBDIR)
+ KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR)
++CORE_DIR=$(CORE_BASE_DIR)/$(VM_SUBDIR)
+ 
+-# Misc files and generated files need to come from C1 or C2 area
+-ifeq ($(ARCH_DATA_MODEL), 32)
+-  MISC_DIR=$(C1_DIR)
+-  GEN_DIR=$(C1_BASE_DIR)/generated
++# Misc files and generated files need to come from the correct area
++ifneq ($(findstring ppc,$(ARCH)),)
++  MISC_DIR=$(CORE_DIR)
++  GEN_DIR=$(CORE_BASE_DIR)/generated
+ else
+-  MISC_DIR=$(C2_DIR)
+-  GEN_DIR=$(C2_BASE_DIR)/generated
++  ifeq ($(ARCH_DATA_MODEL), 32)
++    MISC_DIR=$(C1_DIR)
++    GEN_DIR=$(C1_BASE_DIR)/generated
++  else
++    MISC_DIR=$(C2_DIR)
++    GEN_DIR=$(C2_BASE_DIR)/generated
++  endif
+ endif
+ 
+ # Bin files (windows)
+@@ -268,8 +288,13 @@
+ 	$(install-file)
+ $(EXPORT_CLIENT_DIR)/64/%.so:    $(C1_DIR)/%.so
+ 	$(install-file)
++ifneq ($(findstring ppc,$(ARCH)),)
++$(EXPORT_SERVER_DIR)/%.so:       $(CORE_DIR)/%.so
++	$(install-file)
++else
+ $(EXPORT_SERVER_DIR)/%.so:       $(C2_DIR)/%.so
+ 	$(install-file)
++endif
+ $(EXPORT_SERVER_DIR)/64/%.so:    $(C2_DIR)/%.so
+ 	$(install-file)
+ endif
+diff -ru openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp openjdk/hotspot/src/share/vm/runtime/vm_version.cpp
+--- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp	2007-10-12 08:46:18.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp	2007-11-08 09:40:57.000000000 +0000
+@@ -95,8 +95,12 @@
+ #ifdef TIERED
+   #define VMTYPE "Server"
+ #else
++#if defined(COMPILER1) || defined(COMPILER2)
+   #define VMTYPE COMPILER1_PRESENT("Client")   \
+                  COMPILER2_PRESENT("Server")   
++#else
++  #define VMTYPE "Core"
++#endif // COMPILER1 || COMPILER2
+ #endif // TIERED
+ #endif // KERNEL
+ 
+diff -ru openjdk.orig/j2se/make/java/redist/Makefile openjdk/j2se/make/java/redist/Makefile
+--- openjdk.orig/j2se/make/java/redist/Makefile	2007-10-12 08:54:05.000000000 +0100
++++ openjdk/j2se/make/java/redist/Makefile	2007-11-08 09:40:57.000000000 +0000
+@@ -94,8 +94,14 @@
+   endif
+ endif # INCLUDE_SA
+ 
+-# Hotspot client is only available on 32-bit builds
+-ifeq ($(ARCH_DATA_MODEL), 32)
++# Include the client VM on platforms where it is supported.
++INCLUDE_CLIENT := $(shell if [ -r $(HOTSPOT_CLIENT_PATH)/$(JVM_NAME) ]; then \
++                            $(ECHO) true; \
++                          else \
++                            $(ECHO) false; \
++                          fi)
++
++ifeq ($(INCLUDE_CLIENT), true)
+   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \
+                  $(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt
+ endif
+@@ -119,8 +125,7 @@
+ 	$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
+ 	$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME)
+ 
+-# Hotspot client is only available on 32-bit builds
+-ifeq ($(ARCH_DATA_MODEL), 32)
++ifeq ($(INCLUDE_CLIENT), true)
+   IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
+                  $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME)
+ endif
+@@ -158,10 +163,11 @@
+   IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME)
+ endif 
+ 
+-ifeq ($(ARCH_DATA_MODEL), 32)
+-
+-IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
++ifeq ($(INCLUDE_CLIENT), true)
++  IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
++endif
+ 
++ifeq ($(ARCH_DATA_MODEL), 32)
+ ifeq ($(PLATFORM), solaris)
+ #  solaris   vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv  solaris
+ 
diff -r cd2a405502f1 -r 7130794f3f47 patches/icedtea-linker-options.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-linker-options.patch	Thu Nov 08 17:37:58 2007 +0000
@@ -0,0 +1,48 @@
+diff -ru openjdk.orig/corba/make/common/Defs-linux.gmk openjdk/corba/make/common/Defs-linux.gmk
+--- openjdk.orig/corba/make/common/Defs-linux.gmk	2007-11-08 13:45:46.000000000 +0000
++++ openjdk/corba/make/common/Defs-linux.gmk	2007-11-08 13:44:13.000000000 +0000
+@@ -196,7 +196,7 @@
+ 
+ EXTRA_LIBS += -lc
+ 
+-LDFLAGS_DEFS_OPTION  = -z defs
++LDFLAGS_DEFS_OPTION  = -Xlinker -z -Xlinker defs
+ LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
+ 
+ #
+diff -ru openjdk.orig/j2se/make/common/Defs-linux.gmk openjdk/j2se/make/common/Defs-linux.gmk
+--- openjdk.orig/j2se/make/common/Defs-linux.gmk	2007-11-08 13:45:46.000000000 +0000
++++ openjdk/j2se/make/common/Defs-linux.gmk	2007-11-08 13:43:52.000000000 +0000
+@@ -204,7 +204,7 @@
+ 
+ EXTRA_LIBS += -lc
+ 
+-LDFLAGS_DEFS_OPTION  = -z defs
++LDFLAGS_DEFS_OPTION  = -Xlinker -z -Xlinker defs
+ LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
+ 
+ #
+diff -ru openjdk.orig/j2se/make/common/Program.gmk openjdk/j2se/make/common/Program.gmk
+--- openjdk.orig/j2se/make/common/Program.gmk	2007-11-08 13:45:46.000000000 +0000
++++ openjdk/j2se/make/common/Program.gmk	2007-11-08 13:42:44.000000000 +0000
+@@ -85,7 +85,7 @@
+ 	endif
+     endif
+     ifeq ($(PLATFORM), linux)
+-	LDFLAGS += -lz -z origin
++	LDFLAGS += -lz -Wl,-z -Wl,origin
+ 	LDFLAGS += -Wl,--allow-shlib-undefined
+ 	LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/../lib/$(LIBARCH)/jli
+ 	LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/../jre/lib/$(LIBARCH)/jli
+diff -ru openjdk.orig/j2se/make/java/instrument/Makefile openjdk/j2se/make/java/instrument/Makefile
+--- openjdk.orig/j2se/make/java/instrument/Makefile	2007-11-08 13:45:46.000000000 +0000
++++ openjdk/j2se/make/java/instrument/Makefile	2007-11-08 13:42:25.000000000 +0000
+@@ -109,7 +109,7 @@
+     LDFLAGS += -R \$$ORIGIN/jli
+   endif
+   ifeq ($(PLATFORM), linux)
+-    LDFLAGS += -z origin
++    LDFLAGS += -Wl,-z -Wl,origin
+     LDFLAGS += -Wl,--allow-shlib-undefined
+     LDFLAGS += -Wl,-rpath -Wl,\$$ORIGIN/jli
+   endif
diff -r cd2a405502f1 -r 7130794f3f47 patches/icedtea-ports.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/icedtea-ports.patch	Thu Nov 08 17:37:58 2007 +0000
@@ -0,0 +1,359 @@
+diff -ru openjdk.orig/hotspot/build/linux/makefiles/buildtree.make openjdk/hotspot/build/linux/makefiles/buildtree.make
+--- openjdk.orig/hotspot/build/linux/makefiles/buildtree.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/build/linux/makefiles/buildtree.make	2007-11-08 11:36:15.000000000 +0000
+@@ -317,6 +317,8 @@
+ DATA_MODE/sparcv9 = 64
+ DATA_MODE/amd64   = 64
+ DATA_MODE/ia64    = 64
++DATA_MODE/ppc     = 32
++DATA_MODE/ppc64   = 64
+ 
+ JAVA_FLAG/32 = -d32
+ JAVA_FLAG/64 = -d64
+diff -ru openjdk.orig/hotspot/build/linux/makefiles/defs.make openjdk/hotspot/build/linux/makefiles/defs.make
+--- openjdk.orig/hotspot/build/linux/makefiles/defs.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/build/linux/makefiles/defs.make	2007-11-08 11:36:15.000000000 +0000
+@@ -87,6 +87,21 @@
+   HS_ARCH          = x86
+ endif
+ 
++# ppc and ppc64
++ifneq ($(findstring ppc,$(ARCH)),)
++  ifeq ($(ARCH_DATA_MODEL), 64)
++    ARCH_DATA_MODEL  = 64
++    MAKE_ARGS        += LP64=1
++    PLATFORM         = linux-ppc64
++    VM_PLATFORM      = linux_ppc64
++  else
++    ARCH_DATA_MODEL  = 32
++    PLATFORM         = linux-ppc
++    VM_PLATFORM      = linux_ppc
++  endif
++  HS_ARCH            = ppc
++endif
++
+ JDK_INCLUDE_SUBDIR=linux
+ 
+ # FIXUP: The subdirectory for a debug build is NOT the same on all platforms
+@@ -94,20 +109,16 @@
+ 
+ EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
+ EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
++EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjsig.so
+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so
+-ifeq ($(ARCH_DATA_MODEL), 32)
+-  EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
+-  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
+-  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.so
+-  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
++ifneq ($(HS_ARCH), ppc)
++  ifeq ($(ARCH_DATA_MODEL), 32)
++    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
++    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.so
++    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
++  endif
+   EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
+   EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar 
+-else
+-  ifeq ($(ARCH),ia64)
+-    else
+-      EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
+-      EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
+-    endif
+ endif
+diff -ru openjdk.orig/hotspot/build/linux/makefiles/gcc.make openjdk/hotspot/build/linux/makefiles/gcc.make
+--- openjdk.orig/hotspot/build/linux/makefiles/gcc.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/build/linux/makefiles/gcc.make	2007-11-08 11:36:15.000000000 +0000
+@@ -73,6 +73,8 @@
+ ARCHFLAG/ia64    =
+ ARCHFLAG/sparc   = -m32 -mcpu=v9
+ ARCHFLAG/sparcv9 = -m64 -mcpu=v9
++ARCHFLAG/ppc     = -m32
++ARCHFLAG/ppc64   = -m64
+ 
+ CFLAGS     += $(ARCHFLAG)
+ AOUT_FLAGS += $(ARCHFLAG)
+diff -ru openjdk.orig/hotspot/build/linux/makefiles/sa.make openjdk/hotspot/build/linux/makefiles/sa.make
+--- openjdk.orig/hotspot/build/linux/makefiles/sa.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/build/linux/makefiles/sa.make	2007-11-08 11:36:15.000000000 +0000
+@@ -51,10 +51,10 @@
+ SA_PROPERTIES = $(SA_CLASSDIR)/sa.properties
+ 
+ # if $(AGENT_DIR) does not exist, we don't build SA
+-# also, we don't build SA on Itanium.
++# also, we don't build SA on Itanium or PPC.
+ 
+ all: 
+-	if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" ] ; then \
++	if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" -a "$(SRCARCH)" != "ppc" ] ; then \
+ 	   $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
+ 	fi
+ 
+diff -ru openjdk.orig/hotspot/build/linux/makefiles/saproc.make openjdk/hotspot/build/linux/makefiles/saproc.make
+--- openjdk.orig/hotspot/build/linux/makefiles/saproc.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/build/linux/makefiles/saproc.make	2007-11-08 11:36:15.000000000 +0000
+@@ -44,10 +44,10 @@
+ DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC)
+ 
+ # if $(AGENT_DIR) does not exist, we don't build SA
+-# also, we don't build SA on Itanium.
++# also, we don't build SA on Itanium or PPC.
+ 
+ checkAndBuildSA:
+-	$(QUIETLY) if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" ] ; then \
++	$(QUIETLY) if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" -a "$(SRCARCH)" != "ppc" ] ; then \
+ 	   $(MAKE) -f vm.make $(LIBSAPROC); \
+ 	fi
+ 
+diff -ru openjdk.orig/hotspot/make/defs.make openjdk/hotspot/make/defs.make
+--- openjdk.orig/hotspot/make/defs.make	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/make/defs.make	2007-11-08 11:36:15.000000000 +0000
+@@ -191,15 +191,17 @@
+ 
+   # Use uname output for SRCARCH, but deal with platform differences. If ARCH
+   # is not explicitly listed below, it is treated as x86. 
+-  SRCARCH     = $(ARCH/$(filter sparc sparc64 ia64 amd64 x86_64,$(ARCH)))
++  SRCARCH     = $(ARCH/$(filter sparc sparc64 ia64 amd64 x86_64 ppc ppc64,$(ARCH)))
+   ARCH/       = x86
+   ARCH/sparc  = sparc
+   ARCH/sparc64= sparc
+   ARCH/ia64   = ia64
+   ARCH/amd64  = x86
+   ARCH/x86_64 = x86
++  ARCH/ppc    = ppc
++  ARCH/ppc64  = ppc
+ 
+-  # BUILDARCH is usually the same as SRCARCH, except for sparcv9
++  # BUILDARCH is usually the same as SRCARCH, except for sparcv9 and ppc64
+   BUILDARCH = $(SRCARCH)
+   ifeq ($(BUILDARCH), x86)
+     ifdef LP64
+@@ -208,10 +210,13 @@
+       BUILDARCH = i486
+     endif
+   endif
+-  ifeq ($(BUILDARCH), sparc)
+-    ifdef LP64
++  ifdef LP64
++    ifeq ($(BUILDARCH), sparc)
+       BUILDARCH = sparcv9
+     endif
++    ifeq ($(BUILDARCH), ppc)
++      BUILDARCH = ppc64
++    endif
+   endif
+ 
+   # LIBARCH is 1:1 mapping from BUILDARCH
+@@ -221,8 +226,10 @@
+   LIBARCH/sparc   = sparc
+   LIBARCH/sparcv9 = sparcv9
+   LIBARCH/ia64    = ia64
++  LIBARCH/ppc     = ppc
++  LIBARCH/ppc64   = ppc64
+ 
+-  LP64_ARCH = sparcv9 amd64 ia64
++  LP64_ARCH = sparcv9 amd64 ia64 ppc64
+ endif
+ 
+ # Required make macro settings for all platforms
+diff -ru openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp
+--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp	2007-11-08 11:36:15.000000000 +0000
+@@ -174,6 +174,12 @@
+ #  else
+ static char cpu_arch[] = "sparc";
+ #  endif
++#elif defined(PPC)
++#  ifdef _LP64
++static char cpu_arch[] = "ppc64";
++#  else
++static char cpu_arch[] = "ppc";
++#  endif
+ #else
+ #error Add appropriate cpu_arch setting
+ #endif
+@@ -2375,7 +2381,8 @@
+     // format has been changed), we'll use the largest page size supported by
+     // the processor.
+ 
+-    _large_page_size = IA32_ONLY(4 * M) AMD64_ONLY(2 * M) IA64_ONLY(256 * M) SPARC_ONLY(4 * M);
++    _large_page_size = IA32_ONLY(4 * M) AMD64_ONLY(2 * M) IA64_ONLY(256 * M)
++      SPARC_ONLY(4 * M) PPC_ONLY(16 * M);
+ 
+     FILE *fp = fopen("/proc/meminfo", "r");
+     if (fp) {
+diff -ru openjdk.orig/hotspot/src/share/vm/runtime/mutex.hpp openjdk/hotspot/src/share/vm/runtime/mutex.hpp
+--- openjdk.orig/hotspot/src/share/vm/runtime/mutex.hpp	2007-11-08 11:34:54.000000000 +0000
++++ openjdk/hotspot/src/share/vm/runtime/mutex.hpp	2007-11-08 11:36:15.000000000 +0000
+@@ -64,19 +64,15 @@
+ } ; 
+ 
+ // Endian-ness ... index of least-significant byte in SplitWord.Bytes[]
+-#ifdef AMD64        // little
++#if defined(IA32) || defined(AMD64) || defined(IA64) // little
+  #define _LSBINDEX 0



More information about the distro-pkg-dev mailing list