diff --git a/0001-PPC64LE-arch-support-in-openjdk-1.8.patch b/0001-PPC64LE-arch-support-in-openjdk-1.8.patch new file mode 100644 index 0000000..8da775d --- /dev/null +++ b/0001-PPC64LE-arch-support-in-openjdk-1.8.patch @@ -0,0 +1,43 @@ +From ebf2be47870510a6348db5fe3419578ec6fea877 Mon Sep 17 00:00:00 2001 +From: Brent Baude +Date: Thu, 24 Apr 2014 09:32:36 -0500 +Subject: [PATCH] PPC64LE arch support in openjdk-1.8 + +--- + jdk8/common/autoconf/platform.m4 | 6 ++++++ + jdk8/hotspot/src/os/linux/vm/os_linux.cpp | 2 ++ + 2 files changed, 8 insertions(+) + +diff --git a/jdk8/common/autoconf/platform.m4 b/jdk8/common/autoconf/platform.m4 +index 757bf22..2506fc8 100644 +--- a/jdk8/common/autoconf/platform.m4 ++++ b/jdk8/common/autoconf/platform.m4 +@@ -60,6 +60,12 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU], + VAR_CPU_BITS=64 + VAR_CPU_ENDIAN=big + ;; ++ powerpc64le) ++ VAR_CPU=ppc64le ++ VAR_CPU_ARCH=ppc ++ VAR_CPU_BITS=64 ++ VAR_CPU_ENDIAN=little ++ ;; + s390) + VAR_CPU=s390 + VAR_CPU_ARCH=s390 +diff --git a/jdk8/hotspot/src/os/linux/vm/os_linux.cpp b/jdk8/hotspot/src/os/linux/vm/os_linux.cpp +index 68314bb..5885d10 100644 +--- a/jdk8/hotspot/src/os/linux/vm/os_linux.cpp ++++ b/jdk8/hotspot/src/os/linux/vm/os_linux.cpp +@@ -1978,6 +1978,8 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) + static Elf32_Half running_arch_code=EM_SPARC; + #elif (defined __powerpc64__) + static Elf32_Half running_arch_code=EM_PPC64; ++ #elif (defined __powerpc64le__) ++ static Elf32_Half running_arch_code=EM_PPC64LE; + #elif (defined __powerpc__) + static Elf32_Half running_arch_code=EM_PPC; + #elif (defined ARM) +-- +1.9.0 + diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index 9bbb1eb..6600852 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -7,6 +7,10 @@ %global multilib_arches %{power64} sparc64 x86_64 %{aarch64} %global jit_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} +# sometimes we need to distinguish big and little endian PPC64 +# taken from the openjdk-1.7 spec +%global ppc64le ppc64le +%global ppc64be ppc64 ppc64p7 %ifarch x86_64 %global archinstall amd64 @@ -17,6 +21,9 @@ %ifarch %{power64} %global archinstall ppc64 %endif +%ifarch %{ppc64le} +%global archinstall ppc64le +%endif %ifarch %{ix86} %global archinstall i386 %endif @@ -128,7 +135,7 @@ Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever} -Release: 2.%{buildver}%{?dist} +Release: 3.%{buildver}%{?dist} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons, # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -215,6 +222,8 @@ Patch201: system-libjpeg.patch Patch202: system-libpng.patch Patch203: system-lcms.patch +Patch999: 0001-PPC64LE-arch-support-in-openjdk-1.8.patch + BuildRequires: autoconf BuildRequires: automake BuildRequires: alsa-lib-devel @@ -249,7 +258,7 @@ BuildRequires: libffi-devel BuildRequires: openssl # execstack build requirement. # no prelink on ARM yet -%ifnarch %{arm} %{aarch64} +%ifnarch %{arm} %{aarch64} ppc64le BuildRequires: prelink %endif %if %{with_systemtap} @@ -436,6 +445,7 @@ sh %{SOURCE12} %ifarch ppc %{power64} # PPC fixes %patch103 +%patch999 -p1 %endif # Extract systemtap tapsets @@ -1096,6 +1106,9 @@ exit 0 %{_jvmdir}/%{jredir}/lib/accessibility.properties %changelog +* Thu Apr 24 2014 Brent Baude - 1:1.8.0.5-3.b13 +- Add ppc64le support, bz# 1088344 + * Wed Apr 23 2014 Omair Majid - 1:1.8.0.5-2.b13 - Build with -fno-devirtualize - Don't strip debuginfo from files