Blob Blame Raw
# HG changeset patch
# User sgehwolf
# Date 1537884792 -7200
#      Tue Sep 25 16:13:12 2018 +0200
# Node ID fd140d7550992267e3f0f08a20b461b2ce9fa740
# Parent  21056af0d1eabbd04d7a223c01a28320c7010bfe
8073139: PPC64: User-visible arch directory and os.arch value on ppc64le cause issues with Java tooling
Reviewed-by: erikj, goetz, dholmes

diff --git openjdk.orig/jdk/make/lib/SoundLibraries.gmk openjdk/jdk/make/lib/SoundLibraries.gmk
--- openjdk/jdk/make/lib/SoundLibraries.gmk	Tue Jan 12 21:01:12 2016 +0000
+++ openjdk/jdk/make/lib/SoundLibraries.gmk	Wed Jan 13 00:18:02 2016 +0000
@@ -140,6 +140,10 @@
        LIBJSOUND_CFLAGS += -DX_ARCH=X_PPC64
   endif
 
+  ifeq ($(OPENJDK_TARGET_CPU), ppc64le)
+       LIBJSOUND_CFLAGS += -DX_ARCH=X_PPC64LE
+  endif
+
   ifeq ($(OPENJDK_TARGET_CPU), aarch64)
 	LIBJSOUND_CFLAGS += -DX_ARCH=X_AARCH64
   endif
diff -r 1fe56343ecc8 openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h
--- openjdk.orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h	Tue Jan 12 21:01:12 2016 +0000
+++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h	Wed Jan 13 00:18:02 2016 +0000
@@ -44,6 +44,8 @@
 #define X_ARM           7
 #define X_PPC           8
 #define X_AARCH64	9
+#define X_PPC64        10
+#define X_PPC64LE      11
 
 // **********************************
 // Make sure you set X_PLATFORM and X_ARCH defines correctly.
diff --git openjdk.orig/jdk/src/solaris/bin/ppc64le/jvm.cfg openjdk/jdk/src/solaris/bin/ppc64le/jvm.cfg
new file mode 100644
--- /dev/null
+++ openjdk/jdk/src/solaris/bin/ppc64le/jvm.cfg
@@ -0,0 +1,34 @@
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+# List of JVMs that can be used as an option to java, javac, etc.
+# Order is important -- first in this list is the default JVM.
+# NOTE that this both this file and its format are UNSUPPORTED and
+# WILL GO AWAY in a future release.
+#
+# You may also select a JVM in an arbitrary location with the
+# "-XXaltjvm=<jvm_dir>" option, but that too is unsupported
+# and may not be available in a future release.
+#
+-server KNOWN
+-client IGNORE
diff --git openjdk.orig/test/sun/security/pkcs11/PKCS11Test.java openjdk/test/sun/security/pkcs11/PKCS11Test.java
--- openjdk.orig/jdk/test/sun/security/pkcs11/PKCS11Test.java
+++ openjdk/jdk/test/sun/security/pkcs11/PKCS11Test.java
@@ -505,6 +505,8 @@
         osMap.put("Linux-amd64-64", new String[]{
             "/usr/lib/x86_64-linux-gnu/", "/usr/lib/x86_64-linux-gnu/nss/",
             "/usr/lib64/"});
+        osMap.put("Linux-ppc64-64", new String[]{"/usr/lib64/"});
+        osMap.put("Linux-ppc64le-64", new String[]{"/usr/lib64/"});
         osMap.put("Windows-x86-32", new String[]{
             PKCS11_BASE + "/nss/lib/windows-i586/".replace('/', SEP)});
         osMap.put("Windows-amd64-64", new String[]{
diff --git openjdk.orig/jdk/test/tools/launcher/Settings.java openjdk/jdk/test/tools/launcher/Settings.java
--- openjdk.orig/jdk/test/tools/launcher/Settings.java
+++ openjdk/jdk/test/tools/launcher/Settings.java
@@ -74,7 +74,7 @@
 
     static void runTestOptionDefault() throws IOException {
         String stackSize = "256"; // in kb
-        if (getArch().equals("ppc64")) {
+        if (getArch().equals("ppc64") || getArch().equals("ppc64le")) {
             stackSize = "800";
         }
         TestResult tr = null;