From 5338deb5f80aa63e7e8a0557e7f317f2db0b5261 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Sep 15 2015 11:41:56 +0000 Subject: import java-1.8.0-openjdk-1.8.0.60-2.b27.el7_1 --- diff --git a/.gitignore b/.gitignore index 5b19e8e..203a3f9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ -SOURCES/jdk8u-aarch64-jdk8u51-b16.tar.xz -SOURCES/jdk8u-jdk8u51-b16.tar.xz +SOURCES/jdk8-aarch64-jdk8u60-b24.2.tar.xz +SOURCES/jdk8u60-jdk8u60-b27.tar.xz SOURCES/systemtap-tapset.tar.gz diff --git a/.java-1.8.0-openjdk.metadata b/.java-1.8.0-openjdk.metadata index ad50a0e..1430689 100644 --- a/.java-1.8.0-openjdk.metadata +++ b/.java-1.8.0-openjdk.metadata @@ -1,3 +1,3 @@ -bda042c6d22c3e76e2e4c2ac397ed060da881e8d SOURCES/jdk8u-aarch64-jdk8u51-b16.tar.xz -925574e738f57cd5f34fb6d15d119a8d9b631410 SOURCES/jdk8u-jdk8u51-b16.tar.xz +571055abf6051d0c413186af3719a22b0d8e41fe SOURCES/jdk8-aarch64-jdk8u60-b24.2.tar.xz +bd62f637b2e488389850afc9ed8d9d33500e7ceb SOURCES/jdk8u60-jdk8u60-b27.tar.xz 8dd5345808d840741a9619becc84302f44b54e78 SOURCES/systemtap-tapset.tar.gz diff --git a/SOURCES/1182011_JavaPrintApiDoesNotPrintUmlautCharsWithPostscriptOutputCorrectly.patch b/SOURCES/1182011_JavaPrintApiDoesNotPrintUmlautCharsWithPostscriptOutputCorrectly.patch deleted file mode 100644 index ab6c3b6..0000000 --- a/SOURCES/1182011_JavaPrintApiDoesNotPrintUmlautCharsWithPostscriptOutputCorrectly.patch +++ /dev/null @@ -1,148 +0,0 @@ - -# HG changeset patch -# User neugens -# Date 1421686672 -3600 -# Node ID 868404fc8be0163f50c242f473ecfbe4eccfe519 -# Parent 36c8318010acb190176744eb0a67a321ae23e711 -8067364: Printing to Postscript doesn't support dieresis -Summary: Fix regression caused by fix for 8023990 -Reviewed-by: bae, prr -Contributed-by: neugens@redhat.com, philip.race@oracle.com - -diff -r 36c8318010ac -r 868404fc8be0 src/solaris/classes/sun/font/FcFontConfiguration.java ---- jdk8/jdk/src/solaris/classes/sun/font/FcFontConfiguration.java Tue Dec 16 19:46:22 2014 +0000 -+++ jdk8/jdk/src/solaris/classes/sun/font/FcFontConfiguration.java Mon Jan 19 17:57:52 2015 +0100 -@@ -180,7 +180,7 @@ - String[] componentFaceNames = cfi[idx].getComponentFaceNames(); - FontDescriptor[] ret = new FontDescriptor[componentFaceNames.length]; - for (int i = 0; i < componentFaceNames.length; i++) { -- ret[i] = new FontDescriptor(componentFaceNames[i], StandardCharsets.UTF_8.newEncoder(), new int[0]); -+ ret[i] = new FontDescriptor(componentFaceNames[i], StandardCharsets.ISO_8859_1.newEncoder(), new int[0]); - } - - return ret; -diff -r 36c8318010ac -r 868404fc8be0 test/javax/print/PrintSEUmlauts/PrintSEUmlauts.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ jdk8/jdk/test/javax/print/PrintSEUmlauts/PrintSEUmlauts.java Mon Jan 19 17:57:52 2015 +0100 -@@ -0,0 +1,120 @@ -+/* -+ * Copyright (c) 2014, 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. -+ */ -+import java.awt.Graphics; -+import java.awt.GraphicsEnvironment; -+import java.awt.print.PageFormat; -+import java.awt.print.Printable; -+import java.io.File; -+import java.io.FileInputStream; -+import java.io.FileOutputStream; -+import java.io.IOException; -+import java.nio.charset.StandardCharsets; -+import javax.print.DocFlavor; -+import javax.print.DocPrintJob; -+import javax.print.SimpleDoc; -+import javax.print.StreamPrintService; -+import javax.print.StreamPrintServiceFactory; -+import javax.print.attribute.HashDocAttributeSet; -+import javax.print.attribute.HashPrintRequestAttributeSet; -+import javax.print.event.PrintJobAdapter; -+import javax.print.event.PrintJobEvent; -+ -+/* -+ * @test -+ * @bug 8067364 -+ * @summary Printing to Postscript doesn't support dieresis -+ * @build PrintSEUmlauts -+ * @run main/othervm PrintSEUmlauts -+ */ -+public class PrintSEUmlauts implements Printable { -+ -+ public static void main(String[] args) throws Exception { -+ -+ GraphicsEnvironment.getLocalGraphicsEnvironment(); -+ -+ DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE; -+ String mime = DocFlavor.BYTE_ARRAY.POSTSCRIPT.getMimeType(); -+ -+ StreamPrintServiceFactory[] factories = -+ StreamPrintServiceFactory. -+ lookupStreamPrintServiceFactories(flavor, mime); -+ if (factories.length == 0) { -+ System.out.println("No print service found."); -+ return; -+ } -+ -+ FileOutputStream output = new FileOutputStream("out.ps"); -+ StreamPrintService service = factories[0].getPrintService(output); -+ -+ SimpleDoc doc = -+ new SimpleDoc(new PrintSEUmlauts(), -+ DocFlavor.SERVICE_FORMATTED.PRINTABLE, -+ new HashDocAttributeSet()); -+ DocPrintJob job = service.createPrintJob(); -+ job.addPrintJobListener(new PrintJobAdapter() { -+ @Override -+ public void printJobCompleted(PrintJobEvent pje) { -+ testPrintAndExit(); -+ } -+ }); -+ -+ job.print(doc, new HashPrintRequestAttributeSet()); -+ } -+ -+ private static final boolean DEBUG = false; -+ private static void testPrintAndExit() { -+ String expected = " 7.44 100.0 100.0 S"; -+ String content = ""; -+ -+ File file = new File("out.ps"); -+ if (!DEBUG) { -+ file.deleteOnExit(); -+ } -+ -+ try (FileInputStream stream = new FileInputStream(file)) { -+ byte[] data = new byte[(int) file.length()]; -+ stream.read(data); -+ content = new String(data, StandardCharsets.ISO_8859_1); -+ } catch (IOException ex) { -+ ex.printStackTrace(); -+ } -+ -+ if (!content.contains(expected)) { -+ System.err.println("FAIL"); -+ if (DEBUG) { -+ System.err.println("printing content"); -+ System.err.println(content); -+ } -+ throw new RuntimeException("Expected to represent 'ä' but not found!"); -+ } -+ System.err.println("SUCCESS"); -+ } -+ -+ public int print(Graphics g, PageFormat pf, int pg) { -+ if (pg > 0) return NO_SUCH_PAGE; -+ g.drawString("ä", 100, 100); -+ return PAGE_EXISTS; -+ } -+} - diff --git a/SOURCES/1182694_javaApplicationMenuMisbehave.patch b/SOURCES/1182694_javaApplicationMenuMisbehave.patch deleted file mode 100644 index 55da997..0000000 --- a/SOURCES/1182694_javaApplicationMenuMisbehave.patch +++ /dev/null @@ -1,232 +0,0 @@ -changeset: 10519:e1ca700aaa1f -tag: tip -user: neugens -date: Fri Feb 27 15:50:03 2015 +0100 -summary: 8071705: Java application menu misbehaves when running multiple screen stacked vertically - -diff --git jdk8/jdk/src/share/classes/javax/swing/JMenu.java jdk8/jdk/src/share/classes/javax/swing/JMenu.java ---- jdk8/jdk/src/share/classes/javax/swing/JMenu.java -+++ jdk8/jdk/src/share/classes/javax/swing/JMenu.java -@@ -475,7 +475,8 @@ - } - // Then the y: - y = s.height + yOffset; // Prefer dropping down -- if (position.y + y + pmSize.height >= screenBounds.height && -+ if (position.y + y + pmSize.height >= screenBounds.height -+ + screenBounds.y && - // popup doesn't fit - place it wherever there's more room - screenBounds.height - s.height < 2*(position.y - - screenBounds.y)) { -diff --git jdk8/jdk/test/javax/swing/JMenu/8071705/bug8071705.java jdk8/jdk/test/javax/swing/JMenu/8071705/bug8071705.java -new file mode 100644 ---- /dev/null -+++ jdk8/jdk/test/javax/swing/JMenu/8071705/bug8071705.java -@@ -0,0 +1,207 @@ -+/* -+ * Copyright (c) 2015, 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. -+ * -+ * 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. -+ */ -+ -+/* -+ * @test -+ * @bug 8071705 -+ * @summary Java application menu misbehaves when running multiple screen stacked vertically -+ * @build bug8071705 -+ * @run main/othervm bug8071705 -+ */ -+ -+import java.awt.Dimension; -+import java.awt.GraphicsConfiguration; -+import java.awt.GraphicsDevice; -+import java.awt.GraphicsEnvironment; -+import java.awt.Point; -+import java.awt.Rectangle; -+import java.awt.Toolkit; -+import java.awt.event.ComponentAdapter; -+import java.awt.event.ComponentEvent; -+import java.awt.event.KeyEvent; -+import java.util.concurrent.CountDownLatch; -+ -+import javax.swing.JFrame; -+import javax.swing.JMenu; -+import javax.swing.JMenuBar; -+import javax.swing.JMenuItem; -+import javax.swing.JPopupMenu; -+import javax.swing.SwingUtilities; -+import javax.swing.UIManager; -+ -+public class bug8071705 { -+ -+ public static void main(String[] args) throws Exception { -+ -+ final CountDownLatch latch = new CountDownLatch(1); -+ final boolean [] result = new boolean[1]; -+ -+ SwingUtilities.invokeLater(new Runnable() { -+ @Override -+ public void run() { -+ JFrame frame = createGUI(); -+ GraphicsDevice[] devices = checkScreens(); -+ -+ // check if we have more than one and if they are stacked -+ // vertically -+ GraphicsDevice device = checkConfigs(devices); -+ if (device == null) { -+ // just pass the test -+ frame.dispose(); -+ result[0] = true; -+ latch.countDown(); -+ } else { -+ FrameListener listener = -+ new FrameListener(device, latch, result); -+ frame.addComponentListener(listener); -+ frame.setVisible(true); -+ } -+ } -+ }); -+ -+ latch.await(); -+ -+ if (result[0] == false) { -+ throw new RuntimeException("popup menu rendered in wrong position"); -+ } -+ -+ System.out.println("OK"); -+ } -+ -+ private static GraphicsDevice[] checkScreens() { -+ GraphicsEnvironment ge = -+ GraphicsEnvironment.getLocalGraphicsEnvironment(); -+ return ge.getScreenDevices(); -+ } -+ -+ private static JFrame createGUI() { -+ JMenuBar menuBar = new JMenuBar(); -+ JMenu menu = new JMenu("Some menu"); -+ menuBar.add(menu); -+ -+ for (int i = 0; i < 10; i++) { -+ menu.add(new JMenuItem("Some menu #" + i)); -+ } -+ -+ JFrame frame = new JFrame(); -+ frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); -+ frame.setMinimumSize(new Dimension(200, 200)); -+ frame.setJMenuBar(menuBar); -+ return frame; -+ } -+ -+ private static GraphicsDevice checkConfigs(GraphicsDevice[] devices) { -+ -+ GraphicsDevice correctDevice = null; -+ if (devices.length < 2) { -+ return correctDevice; -+ } -+ -+ Toolkit toolkit = Toolkit.getDefaultToolkit(); -+ Rectangle screenBounds = new Rectangle(toolkit.getScreenSize()); -+ int halfScreen = screenBounds.height/2; -+ -+ for(int i = 0; i < devices.length; i++) { -+ if(devices[i].getType() == GraphicsDevice.TYPE_RASTER_SCREEN) { -+ GraphicsConfiguration conf = -+ devices[i].getDefaultConfiguration(); -+ Rectangle bounds = conf.getBounds(); -+ if (bounds.y >= halfScreen) { -+ // found -+ correctDevice = devices[i]; -+ break; -+ } -+ } -+ } -+ return correctDevice; -+ } -+ -+ private static class FrameListener extends ComponentAdapter { -+ -+ private GraphicsDevice device; -+ private CountDownLatch latch; -+ private boolean [] result; -+ public FrameListener(GraphicsDevice device, -+ CountDownLatch latch, -+ boolean [] result) -+ { -+ this.device = device; -+ this.latch = latch; -+ this.result = result; -+ } -+ -+ @Override -+ public void componentShown(ComponentEvent e) { -+ JFrame frame = (JFrame) e.getComponent(); -+ -+ runActualTest(device, latch, frame, result); -+ -+ frame.setVisible(false); -+ frame.dispose(); -+ latch.countDown(); -+ } -+ } -+ -+ private static Rectangle setLocation(JFrame frame, GraphicsDevice device) { -+ GraphicsConfiguration conf = device.getDefaultConfiguration(); -+ Rectangle bounds = conf.getBounds(); -+ -+ // put just below half screen -+ int x = bounds.x + bounds.width/2; -+ int y = bounds.y + bounds.height/2; -+ frame.setLocation(x, y); -+ -+ return bounds; -+ } -+ -+ private static void runActualTest(GraphicsDevice device, -+ CountDownLatch latch, -+ JFrame frame, -+ boolean [] result) -+ { -+ Rectangle screenBounds = setLocation(frame, device); -+ JMenu menu = frame.getJMenuBar().getMenu(0); -+ menu.doClick(); -+ -+ Point location = menu.getLocationOnScreen(); -+ JPopupMenu pm = menu.getPopupMenu(); -+ Dimension pmSize = pm.getSize(); -+ -+ int yOffset = UIManager.getInt("Menu.submenuPopupOffsetY"); -+ int height = location.y + yOffset + pmSize.height + menu.getHeight(); -+ int available = screenBounds.y + screenBounds.height - height; -+ if (available > 0) { -+ Point origin = pm.getLocationOnScreen(); -+ if (origin.y < location.y) { -+ // growing upward, wrong! -+ result[0] = false; -+ } else { -+ // growing downward, ok! -+ result[0] = true; -+ } -+ } else { -+ // there is no space, growing upward would be ok, so we pass -+ result[0] = true; -+ } -+ } -+} - diff --git a/SOURCES/atomic_linux_zero.inline.hpp.patch b/SOURCES/atomic_linux_zero.inline.hpp.patch deleted file mode 100644 index 78be93e..0000000 --- a/SOURCES/atomic_linux_zero.inline.hpp.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff --git a/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp b/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp ---- jdk8/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp -+++ jdk8/hotspot/src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp -@@ -222,31 +222,35 @@ - - inline jint Atomic::xchg(jint exchange_value, volatile jint* dest) { - #ifdef ARM -- return arm_lock_test_and_set(dest, exchange_value); -+ jint result = arm_lock_test_and_set(dest, exchange_value); - #else - #ifdef M68K -- return m68k_lock_test_and_set(dest, exchange_value); -+ jint result = m68k_lock_test_and_set(dest, exchange_value); - #else - // __sync_lock_test_and_set is a bizarrely named atomic exchange - // operation. Note that some platforms only support this with the - // limitation that the only valid value to store is the immediate - // constant 1. There is a test for this in JNI_CreateJavaVM(). -- return __sync_lock_test_and_set (dest, exchange_value); -+ jint result = __sync_lock_test_and_set (dest, exchange_value); -+ __sync_synchronize(); - #endif // M68K - #endif // ARM -+ return result; - } - - inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, - volatile intptr_t* dest) { - #ifdef ARM -- return arm_lock_test_and_set(dest, exchange_value); -+ intptr_t result = arm_lock_test_and_set(dest, exchange_value); - #else - #ifdef M68K -- return m68k_lock_test_and_set(dest, exchange_value); -+ intptr_t result = m68k_lock_test_and_set(dest, exchange_value); - #else -- return __sync_lock_test_and_set (dest, exchange_value); -+ intptr_t result = __sync_lock_test_and_set (dest, exchange_value); -+ __sync_synchronize(); - #endif // M68K - #endif // ARM -+ return result; - } - - inline void* Atomic::xchg_ptr(void* exchange_value, volatile void* dest) { diff --git a/SOURCES/enableArm64.patch b/SOURCES/enableArm64.patch index a62d224..bb5863b 100644 --- a/SOURCES/enableArm64.patch +++ b/SOURCES/enableArm64.patch @@ -17,32 +17,6 @@ program_prefix=${target_alias}- # Figure out the build and target systems. # Note that in autoconf terminology, "build" is obvious, but "target" -@@ -6816,6 +6817,12 @@ - VAR_CPU=arm - VAR_CPU_ARCH=arm - VAR_CPU_BITS=32 -+ VAR_CPU_ENDIAN=little -+ ;; -+ aarch64) -+ VAR_CPU=aarch64 -+ VAR_CPU_ARCH=aarch64 -+ VAR_CPU_BITS=64 - VAR_CPU_ENDIAN=little - ;; - powerpc) -@@ -6949,6 +6956,12 @@ - VAR_CPU_BITS=32 - VAR_CPU_ENDIAN=little - ;; -+ aarch64) -+ VAR_CPU=aarch64 -+ VAR_CPU_ARCH=aarch64 -+ VAR_CPU_BITS=64 -+ VAR_CPU_ENDIAN=little -+ ;; - powerpc) - VAR_CPU=ppc - VAR_CPU_ARCH=ppc @@ -7950,6 +7963,9 @@ if test "x$JVM_VARIANT_ZEROSHARK" = xtrue ; then INCLUDE_SA=false @@ -86,7 +60,7 @@ + if test "x$OPENJDK_TARGET_CPU" = xaarch64; then INCLUDE_SA=false fi - AC_SUBST(INCLUDE_SA) + if test "x$OPENJDK_TARGET_CPU" = xaarch64; then @@ -460,12 +458,6 @@ AC_MSG_ERROR([Update version must have a value]) elif test "x$with_update_version" != x; then @@ -100,21 +74,6 @@ fi AC_ARG_WITH(user-release-suffix, [AS_HELP_STRING([--with-user-release-suffix], ---- jdk8/common/autoconf/platform.m4 -+++ jdk8/common/autoconf/platform.m4 -@@ -46,6 +46,12 @@ - VAR_CPU=arm - VAR_CPU_ARCH=arm - VAR_CPU_BITS=32 -+ VAR_CPU_ENDIAN=little -+ ;; -+ aarch64) -+ VAR_CPU=aarch64 -+ VAR_CPU_ARCH=aarch64 -+ VAR_CPU_BITS=64 - VAR_CPU_ENDIAN=little - ;; - powerpc) --- jdk8/common/autoconf/toolchain.m4 +++ jdk8/common/autoconf/toolchain.m4 @@ -1158,6 +1158,9 @@ diff --git a/SOURCES/fix_ZERO_ARCHDEF_ppc.patch b/SOURCES/fix_ZERO_ARCHDEF_ppc.patch deleted file mode 100644 index e7724ae..0000000 --- a/SOURCES/fix_ZERO_ARCHDEF_ppc.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/common/autoconf/platform.m4 b/common/autoconf/platform.m4 ---- jdk8/common/autoconf/platform.m4 -+++ jdk8/common/autoconf/platform.m4 -@@ -367,7 +367,8 @@ - - # ZERO_ARCHDEF is used to enable architecture-specific code - case "${OPENJDK_TARGET_CPU}" in -- ppc*) ZERO_ARCHDEF=PPC ;; -+ ppc) ZERO_ARCHDEF=PPC32 ;; -+ ppc64) ZERO_ARCHDEF=PPC64 ;; - s390*) ZERO_ARCHDEF=S390 ;; - sparc*) ZERO_ARCHDEF=SPARC ;; - x86_64*) ZERO_ARCHDEF=AMD64 ;; diff --git a/SOURCES/java-1.8.0-openjdk-rh1191652-hotspot.patch b/SOURCES/java-1.8.0-openjdk-rh1191652-hotspot.patch index cc4aced..dd76f2d 100644 --- a/SOURCES/java-1.8.0-openjdk-rh1191652-hotspot.patch +++ b/SOURCES/java-1.8.0-openjdk-rh1191652-hotspot.patch @@ -2,7 +2,7 @@ diff -r 9d6eb2757167 make/defs.make --- openjdk/hotspot/make/defs.make Wed Feb 11 18:56:26 2015 -0800 +++ openjdk/hotspot/make/defs.make Tue Feb 17 16:39:22 2015 +0000 @@ -317,6 +317,13 @@ - LIBARCH/arm = arm + LIBARCH/ppc64 = ppc64 LIBARCH/zero = $(ZERO_LIBARCH) + # Override LIBARCH for ppc64le @@ -12,21 +12,6 @@ diff -r 9d6eb2757167 make/defs.make + endif + endif + - LP64_ARCH = sparcv9 amd64 ia64 ppc64 zero + LP64_ARCH += sparcv9 amd64 ia64 ppc64 zero endif - -diff -r 9d6eb2757167 src/os/linux/vm/os_linux.cpp ---- openjdk/hotspot/src/os/linux/vm/os_linux.cpp Wed Feb 11 18:56:26 2015 -0800 -+++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp Tue Feb 17 16:39:22 2015 +0000 -@@ -265,7 +265,11 @@ - #elif defined(PPC32) - static char cpu_arch[] = "ppc"; - #elif defined(PPC64) -+#if defined(VM_LITTLE_ENDIAN) -+static char cpu_arch[] = "ppc64le"; -+#else - static char cpu_arch[] = "ppc64"; -+#endif - #elif defined(SPARC) - # ifdef _LP64 - static char cpu_arch[] = "sparcv9"; + \ No newline at end of file diff --git a/SOURCES/java-1.8.0-openjdk-size_t.patch b/SOURCES/java-1.8.0-openjdk-size_t.patch index eb6aea5..406372a 100644 --- a/SOURCES/java-1.8.0-openjdk-size_t.patch +++ b/SOURCES/java-1.8.0-openjdk-size_t.patch @@ -1,6 +1,6 @@ -diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2015-03-23 12:58:50.138672164 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -2659,7 +2659,7 @@ void CFLS_LAB::get_from_global_pool(size if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); @@ -10,9 +10,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compact } assert(n_blks > 0, "Error"); _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); -diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2015-03-23 12:58:50.141672172 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -957,7 +957,7 @@ void ConcurrentMarkSweepGeneration::comp if (free_percentage < desired_free_percentage) { size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); @@ -31,7 +31,7 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurr _markBitMap.clear_large_range(chunk); if (ConcurrentMarkSweepThread::should_yield() && !foregroundGCIsActive() && -@@ -6874,7 +6874,7 @@ void CMSMarkStack::expand() { +@@ -6873,7 +6873,7 @@ void CMSMarkStack::expand() { return; } // Double capacity if possible @@ -40,9 +40,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurr // Do not give up existing stack until we have managed to // get the double capacity that we desired. ReservedSpace rs(ReservedSpace::allocation_align_size_up( -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2015-03-23 12:58:50.143672177 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -3902,7 +3902,7 @@ void CMTask::drain_local_queue(bool part // of things to do) or totally (at the very end). size_t target_size; @@ -61,10 +61,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.s390 *hum_bytes -= bytes; } return bytes; -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp 2015-03-23 12:58:50.144672180 +0100 -@@ -1738,7 +1738,7 @@ HeapWord* G1CollectedHeap::expand_and_al +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp 2015-06-09 10:21:39.000000000 -0400 +@@ -1726,7 +1726,7 @@ HeapWord* G1CollectedHeap::expand_and_al verify_region_sets_optional(); @@ -73,9 +73,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.s390 ergo_verbose1(ErgoHeapSizing, "attempt heap expansion", ergo_format_reason("allocation request failed") -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp 2015-03-23 12:58:50.145672183 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -38,7 +38,7 @@ G1StringDedupQueue::G1StringDedupQueue() _cancel(false), _empty(true), @@ -85,9 +85,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s _queues = NEW_C_HEAP_ARRAY(G1StringDedupWorkerQueue, _nqueues, mtGC); for (size_t i = 0; i < _nqueues; i++) { new (_queues + i) G1StringDedupWorkerQueue(G1StringDedupWorkerQueue::default_segment_size(), _max_cache_size, _max_size); -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp 2015-03-23 12:58:50.145672183 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -110,7 +110,7 @@ public: }; @@ -97,10 +97,10 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.s _lists = PaddedArray::create_unfreeable((uint)_nlists); } -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp 2015-03-23 12:58:50.146672185 +0100 -@@ -147,7 +147,7 @@ void HeapRegion::setup_heap_region_size( +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp 2015-06-09 10:21:39.000000000 -0400 +@@ -109,7 +109,7 @@ void HeapRegion::setup_heap_region_size( if (FLAG_IS_DEFAULT(G1HeapRegionSize)) { size_t average_heap_size = (initial_heap_size + max_heap_size) / 2; region_size = MAX2(average_heap_size / HeapRegionBounds::target_number(), @@ -109,9 +109,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.s390 jdk8 } int region_size_log = log2_long((jlong) region_size); -diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2015-03-23 12:58:50.146672185 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -833,7 +833,7 @@ OtherRegionsTable::do_cleanup_work(HRRSC // This can be done by either mutator threads together with the // concurrent refinement threads or GC threads. @@ -121,9 +121,21 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.s39 } HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa, -diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2015-03-23 12:58:50.146672185 +0100 +diff -up jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2015-06-09 10:21:39.000000000 -0400 +@@ -194,7 +194,7 @@ bool ParScanThreadState::take_from_overf + const size_t num_overflow_elems = of_stack->size(); + const size_t space_available = queue->max_elems() - queue->size(); + const size_t num_take_elems = MIN3(space_available / 4, +- ParGCDesiredObjsFromOverflowList, ++ (size_t)ParGCDesiredObjsFromOverflowList, + num_overflow_elems); + // Transfer the most recent num_take_elems from the overflow + // stack to our work queue. +diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -910,8 +910,8 @@ void PSParallelCompact::initialize_space void PSParallelCompact::initialize_dead_wood_limiter() { @@ -135,21 +147,9 @@ diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallel _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); DEBUG_ONLY(_dwl_initialized = true;) _dwl_adjustment = normal_distribution(1.0); -diff -up jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ---- jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2015-03-23 12:58:50.147672188 +0100 -@@ -194,7 +194,7 @@ bool ParScanThreadState::take_from_overf - const size_t num_overflow_elems = of_stack->size(); - const size_t space_available = queue->max_elems() - queue->size(); - const size_t num_take_elems = MIN3(space_available / 4, -- ParGCDesiredObjsFromOverflowList, -+ (size_t)ParGCDesiredObjsFromOverflowList, - num_overflow_elems); - // Transfer the most recent num_take_elems from the overflow - // stack to our work queue. -diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.s390 jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp ---- jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp 2015-03-23 12:58:50.147672188 +0100 +diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp +--- jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -385,7 +385,7 @@ void TwoGenerationCollectorPolicy::initi uintx calculated_size = NewSize + OldSize; double shrink_factor = (double) MaxHeapSize / calculated_size; @@ -207,9 +207,9 @@ diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.s390 jdk8/hotspot/ _initial_gen1_size = OldSize; // If the user has explicitly set an OldSize that is inconsistent -diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.s390 jdk8/hotspot/src/share/vm/memory/metaspace.cpp ---- jdk8/hotspot/src/share/vm/memory/metaspace.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/memory/metaspace.cpp 2015-03-23 12:58:50.147672188 +0100 +diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t jdk8/hotspot/src/share/vm/memory/metaspace.cpp +--- jdk8/hotspot/src/share/vm/memory/metaspace.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/memory/metaspace.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -1455,7 +1455,7 @@ void MetaspaceGC::initialize() { void MetaspaceGC::post_initialize() { @@ -246,9 +246,9 @@ diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.s390 jdk8/hotspot/src/sh _first_class_chunk_word_size = align_word_size_up(_first_class_chunk_word_size); // Arbitrarily set the initial virtual space to a multiple // of the boot class loader size. -diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.s390 jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp ---- jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2015-03-23 12:58:50.148672191 +0100 +diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.size_t jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp +--- jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -238,13 +238,13 @@ size_t ThreadLocalAllocBuffer::initial_d size_t init_sz = 0; @@ -266,9 +266,9 @@ diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.s390 jdk8/h init_sz = align_object_size(init_sz); } init_sz = MIN2(MAX2(init_sz, min_size()), max_size()); -diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.s390 jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp ---- jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2015-03-23 12:58:50.148672191 +0100 +diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp +--- jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2015-06-09 10:21:39.000000000 -0400 @@ -48,7 +48,7 @@ void ObjArrayKlass::objarray_follow_cont const size_t beg_index = size_t(index); assert(beg_index < len || len == 0, "index too large"); @@ -287,9 +287,9 @@ diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.s390 jdk8/hotsp const size_t end_index = beg_index + stride; T* const base = (T*)a->base(); T* const beg = base + beg_index; -diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.s390 jdk8/hotspot/src/share/vm/runtime/arguments.cpp ---- jdk8/hotspot/src/share/vm/runtime/arguments.cpp.s390 2015-02-04 21:14:39.000000000 +0100 -+++ jdk8/hotspot/src/share/vm/runtime/arguments.cpp 2015-03-23 12:58:50.148672191 +0100 +diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t jdk8/hotspot/src/share/vm/runtime/arguments.cpp +--- jdk8/hotspot/src/share/vm/runtime/arguments.cpp.size_t 2015-05-19 12:16:26.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/runtime/arguments.cpp 2015-06-09 10:21:39.000000000 -0400 @@ -1277,7 +1277,7 @@ void Arguments::set_cms_and_parnew_gc_fl // NewSize was set on the command line and it is larger than // preferred_max_new_size. @@ -319,3 +319,15 @@ diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.s390 jdk8/hotspot/src/s if (PrintGCDetails && Verbose) { // Too early to use gclog_or_tty tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize); +diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.size_t jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp +--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.size_t 2015-06-09 10:35:04.000000000 -0400 ++++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp 2015-06-09 10:33:21.000000000 -0400 +@@ -117,7 +117,7 @@ size_t G1PageBasedVirtualSpace::uncommit + return reserved_size() - committed_size(); + } + +-size_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const { ++uintptr_t G1PageBasedVirtualSpace::addr_to_page_index(char* addr) const { + return (addr - _low_boundary) / _page_size; + } + diff --git a/SOURCES/libjpeg-turbo-1.4-compat.patch b/SOURCES/libjpeg-turbo-1.4-compat.patch new file mode 100644 index 0000000..26ffc7b --- /dev/null +++ b/SOURCES/libjpeg-turbo-1.4-compat.patch @@ -0,0 +1,33 @@ +Remove uses of FAR in jpeg code + +Upstream libjpeg-trubo removed the (empty) FAR macro: +http://sourceforge.net/p/libjpeg-turbo/code/1312/ + +Adjust our code to not use the undefined FAR macro anymore. + +diff --git a/src/share/native/sun/awt/image/jpeg/imageioJPEG.c b/src/share/native/sun/awt/image/jpeg/imageioJPEG.c +--- jdk8/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c ++++ jdk8/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c +@@ -1385,7 +1385,7 @@ + /* and fill it in */ + dst_ptr = icc_data; + for (seq_no = first; seq_no < last; seq_no++) { +- JOCTET FAR *src_ptr = icc_markers[seq_no]->data + ICC_OVERHEAD_LEN; ++ JOCTET *src_ptr = icc_markers[seq_no]->data + ICC_OVERHEAD_LEN; + unsigned int length = + icc_markers[seq_no]->data_length - ICC_OVERHEAD_LEN; + +diff --git a/src/share/native/sun/awt/image/jpeg/jpegdecoder.c b/src/share/native/sun/awt/image/jpeg/jpegdecoder.c +--- jdk8/jdk/src/share/native/sun/awt/image/jpeg/jpegdecoder.c ++++ jdk8/jdk/src/share/native/sun/awt/image/jpeg/jpegdecoder.c +@@ -41,9 +41,8 @@ + #include "jni.h" + #include "jni_util.h" + +-/* undo "system_boolean" hack and undef FAR since we don't use it anyway */ ++/* undo "system_boolean" hack since we don't use it anyway */ + #undef boolean +-#undef FAR + #include + #include "jerror.h" + diff --git a/SOURCES/ppc_stack_overflow_fix.patch b/SOURCES/ppc_stack_overflow_fix.patch deleted file mode 100644 index 754797a..0000000 --- a/SOURCES/ppc_stack_overflow_fix.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git a/src/cpu/zero/vm/stack_zero.hpp b/src/cpu/zero/vm/stack_zero.hpp ---- jdk8/hotspot/src/cpu/zero/vm/stack_zero.hpp -+++ jdk8/hotspot/src/cpu/zero/vm/stack_zero.hpp -@@ -99,7 +99,7 @@ - int shadow_pages_size() const { - return _shadow_pages_size; - } -- int abi_stack_available(Thread *thread) const; -+ ssize_t abi_stack_available(Thread *thread) const; - - public: - void overflow_check(int required_words, TRAPS); -diff --git a/src/cpu/zero/vm/stack_zero.inline.hpp b/src/cpu/zero/vm/stack_zero.inline.hpp ---- jdk8/hotspot/src/cpu/zero/vm/stack_zero.inline.hpp -+++ jdk8/hotspot/src/cpu/zero/vm/stack_zero.inline.hpp -@@ -47,10 +47,11 @@ - // This method returns the amount of ABI stack available for us - // to use under normal circumstances. Note that the returned - // value can be negative. --inline int ZeroStack::abi_stack_available(Thread *thread) const { -- int stack_used = thread->stack_base() - (address) &stack_used; -- int stack_free = thread->stack_size() - stack_used; -- return stack_free - shadow_pages_size(); -+inline ssize_t ZeroStack::abi_stack_available(Thread *thread) const { -+ ssize_t stack_used = thread->stack_base() - (address) &stack_used -+ + (StackYellowPages+StackRedPages+StackShadowPages) * os::vm_page_size(); -+ ssize_t stack_free = thread->stack_size() - stack_used; -+ return stack_free; - } - - #endif // CPU_ZERO_VM_STACK_ZERO_INLINE_HPP -diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp ---- jdk8/hotspot/src/os/linux/vm/os_linux.cpp -+++ jdk8/hotspot/src/os/linux/vm/os_linux.cpp -@@ -4700,6 +4700,13 @@ - os::Linux::min_stack_allowed = MAX2(os::Linux::min_stack_allowed, - (size_t)(StackYellowPages+StackRedPages+StackShadowPages) * Linux::page_size() + - (2*BytesPerWord COMPILER2_PRESENT(+1)) * Linux::vm_default_page_size()); -+#ifdef ZERO -+ // If this is Zero, allow at the very minimum one page each for the -+ // Zero stack and the native stack. This won't make any difference -+ // for 4k pages, but is significant for large pages. -+ os::Linux::min_stack_allowed = MAX2(os::Linux::min_stack_allowed, -+ (size_t)(StackYellowPages+StackRedPages+StackShadowPages+2) * Linux::page_size()); -+#endif - - size_t threadStackSizeInBytes = ThreadStackSize * K; - if (threadStackSizeInBytes != 0 && diff --git a/SOURCES/pr2444.patch b/SOURCES/pr2444.patch deleted file mode 100644 index a7d721f..0000000 --- a/SOURCES/pr2444.patch +++ /dev/null @@ -1,40 +0,0 @@ -# HG changeset patch -# User omajid -# Date 1434565087 14400 -# Wed Jun 17 14:18:07 2015 -0400 -# Node ID 44d6e4ff3770e0d272cc5d5e5cf88762e108e2c5 -# Parent d4d7a3107d2039e6077391cf83b70ff7074653b0 -8087156, PR2444: SetupNativeCompilation ignores CFLAGS_release for cpp files -Reviewed-by: erikj, ihse - -diff -r d4d7a3107d20 -r 44d6e4ff3770 make/common/NativeCompilation.gmk ---- openjdk///make/common/NativeCompilation.gmk Fri Jun 12 21:25:45 2015 +0100 -+++ openjdk///make/common/NativeCompilation.gmk Wed Jun 17 14:18:07 2015 -0400 -@@ -323,6 +323,13 @@ - $1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(OPENJDK_TARGET_OS)_release) - endif - -+ ifeq ($$($1_CXXFLAGS),) -+ $1_CXXFLAGS:=$$($1_CFLAGS) -+ endif -+ ifeq ($$(strip $$($1_EXTRA_CXXFLAGS)),) -+ $1_EXTRA_CXXFLAGS:=$$($1_EXTRA_CFLAGS) -+ endif -+ - ifneq (,$$($1_DEBUG_SYMBOLS)) - ifeq ($(ENABLE_DEBUG_SYMBOLS), true) - ifdef OPENJDK -@@ -340,13 +347,6 @@ - endif - endif - -- ifeq ($$($1_CXXFLAGS),) -- $1_CXXFLAGS:=$$($1_CFLAGS) -- endif -- ifeq ($$(strip $$($1_EXTRA_CXXFLAGS)),) -- $1_EXTRA_CXXFLAGS:=$$($1_EXTRA_CFLAGS) -- endif -- - ifneq (,$$($1_REORDER)) - $1_EXTRA_CFLAGS += $$(C_FLAG_REORDER) - $1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER) diff --git a/SOURCES/removeSunEcProvider-RH1154143.patch b/SOURCES/removeSunEcProvider-RH1154143.patch index a94fd7a..e549a9c 100644 --- a/SOURCES/removeSunEcProvider-RH1154143.patch +++ b/SOURCES/removeSunEcProvider-RH1154143.patch @@ -26,8 +26,8 @@ diff -r 135101850ef1 src/share/lib/security/java.security-linux # # Example: # jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 --jdk.tls.disabledAlgorithms=SSLv3, DH keySize < 768 -+jdk.tls.disabledAlgorithms=SSLv3, DH keySize < 768, EC, ECDHE, ECDH +-jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 768 ++jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 768, EC, ECDHE, ECDH # Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS) # processing in JSSE implementation. diff --git a/SOURCES/repackReproduciblePolycies.sh b/SOURCES/repackReproduciblePolycies.sh index 33a46b8..271cb74 100644 --- a/SOURCES/repackReproduciblePolycies.sh +++ b/SOURCES/repackReproduciblePolycies.sh @@ -7,7 +7,7 @@ for f in local_policy.jar US_export_policy.jar ; do ORIG=$P/$f echo "processing $f ($ORIG)" if [ ! -f $ORIG ]; then - echo "File not found!" + echo "File not found! $ORIG" continue fi d=`mktemp -d` @@ -22,13 +22,16 @@ NW=$d/$f zip -rX $f * popd echo "replacing $ORIG" + touch -t 201401010000 $ORIG md5sum $ORIG sha256sum $ORIG echo "by $NW" md5sum $NW sha256sum $NW + touch -t 201401010000 $NW cp $NW $ORIG md5sum $ORIG sha256sum $ORIG + touch -t 201401010000 $ORIG rm -rfv $d done diff --git a/SOURCES/rh1163501.patch b/SOURCES/rh1163501.patch index 9d6f581..51cd4b9 100644 --- a/SOURCES/rh1163501.patch +++ b/SOURCES/rh1163501.patch @@ -1,22 +1,13 @@ -# HG changeset patch -# User andrew -# Date 1433441408 -3600 -# Thu Jun 04 19:10:08 2015 +0100 -# Node ID 7401b7ccfd7548fa09ea5febb28cb1d6a518ccfd -# Parent 96fda20ef25170640321c3c3e021ead0c4c09acd -PR2095, RH1163501: 2048-bit DH upper bound too small for Fedora infrastructure - -diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Thu Feb 12 09:45:08 2015 -0800 -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Thu Jun 04 19:10:08 2015 +0100 -@@ -1,5 +1,6 @@ +--- jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Tue Mar 17 00:09:12 2015 +0300 ++++ jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHKeyPairGenerator.java Wed Apr 08 14:25:54 2015 +0100 +@@ -1,5 +1,6 @@ /* * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014 Red Hat Inc. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it -@@ -80,10 +81,10 @@ +@@ -80,10 +81,10 @@ * @param random the source of randomness */ public void initialize(int keysize, SecureRandom random) { @@ -29,7 +20,7 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/com/sun/crypto/provider/D + "(inclusive)"); } this.pSize = keysize; -@@ -115,11 +116,11 @@ +@@ -115,11 +116,11 @@ params = (DHParameterSpec)algParams; pSize = params.getP().bitLength(); @@ -43,17 +34,16 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/com/sun/crypto/provider/D } // exponent size is optional, could be 0 -diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Thu Feb 12 09:45:08 2015 -0800 -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Thu Jun 04 19:10:08 2015 +0100 -@@ -1,5 +1,6 @@ +--- jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Tue Mar 17 00:09:12 2015 +0300 ++++ jdk8/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java Wed Apr 08 14:25:54 2015 +0100 +@@ -1,5 +1,6 @@ /* * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014 Red Hat Inc. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it -@@ -60,11 +61,11 @@ +@@ -60,11 +61,11 @@ private static void checkKeySize(int keysize) throws InvalidAlgorithmParameterException { @@ -67,10 +57,9 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/com/sun/crypto/provider/D } } -diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java ---- openjdk/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Thu Feb 12 09:45:08 2015 -0800 -+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Thu Jun 04 19:10:08 2015 +0100 -@@ -278,11 +278,11 @@ +--- jdk8/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Tue Mar 17 00:09:12 2015 +0300 ++++ jdk8/jdk/src/share/classes/sun/security/pkcs11/P11KeyPairGenerator.java Wed Apr 08 14:25:54 2015 +0100 +@@ -278,11 +278,11 @@ // this restriction is in the spec for DSA // since we currently use DSA parameters for DH as well, // it also applies to DH if no parameters are specified @@ -84,17 +73,16 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 src/share/classes/sun/security/pkcs11/P11Ke } } } -diff -r 96fda20ef251 -r 7401b7ccfd75 test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java ---- openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Thu Feb 12 09:45:08 2015 -0800 -+++ openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Thu Jun 04 19:10:08 2015 +0100 -@@ -1,5 +1,6 @@ +--- jdk8/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Tue Mar 17 00:09:12 2015 +0300 ++++ jdk8/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java Wed Apr 08 14:25:54 2015 +0100 +@@ -1,5 +1,6 @@ /* * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014 Red Hat Inc. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it -@@ -58,7 +59,7 @@ +@@ -58,7 +59,7 @@ */ private enum Sizes { two56(256), three84(384), five12(512), seven68(768), ten24(1024), @@ -103,7 +91,7 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 test/com/sun/crypto/provider/KeyAgreement/T private final int intSize; private final BigInteger bigIntValue; -@@ -130,6 +131,19 @@ +@@ -130,6 +131,19 @@ kp = kpg.generateKeyPair(); checkKeyPair(kp, Sizes.twenty48, Sizes.five12); @@ -123,3 +111,4 @@ diff -r 96fda20ef251 -r 7401b7ccfd75 test/com/sun/crypto/provider/KeyAgreement/T System.out.println("OK"); } + diff --git a/SOURCES/rh1173326.patch b/SOURCES/rh1173326.patch deleted file mode 100644 index 07b7e4d..0000000 --- a/SOURCES/rh1173326.patch +++ /dev/null @@ -1,30 +0,0 @@ -# HG changeset patch -# User aph -# Date 1421396122 -3600 -# Fri Jan 16 09:15:22 2015 +0100 -# Node ID e7991ccab2eee66771f5e9dd644a35961848097f -# Parent 967ae4d849eb20b4b63c399bc3f376dfc0f9d2cc -6584008, PR2192, RH1173326: jvmtiStringPrimitiveCallback should not be invoked when string value is null -Reviewed-by: sla, sspitsyn - -diff -r 967ae4d849eb -r e7991ccab2ee src/share/vm/prims/jvmtiTagMap.cpp ---- openjdk/hotspot/src/share/vm/prims/jvmtiTagMap.cpp Tue Jul 15 22:55:15 2014 +0100 -+++ openjdk/hotspot/src/share/vm/prims/jvmtiTagMap.cpp Fri Jan 16 09:15:22 2015 +0100 -@@ -1045,10 +1045,16 @@ - { - assert(str->klass() == SystemDictionary::String_klass(), "not a string"); - -+ typeArrayOop s_value = java_lang_String::value(str); -+ -+ // JDK-6584008: the value field may be null if a String instance is -+ // partially constructed. -+ if (s_value == NULL) { -+ return 0; -+ } - // get the string value and length - // (string value may be offset from the base) - int s_len = java_lang_String::length(str); -- typeArrayOop s_value = java_lang_String::value(str); - int s_offset = java_lang_String::offset(str); - jchar* value; - if (s_len > 0) { diff --git a/SOURCES/rh1194226.patch b/SOURCES/rh1194226.patch deleted file mode 100644 index 06a385c..0000000 --- a/SOURCES/rh1194226.patch +++ /dev/null @@ -1,168 +0,0 @@ -# HG changeset patch -# User omajid -# Date 1429811282 14400 -# Thu Apr 23 13:48:02 2015 -0400 -# Node ID f0137fa5ba5298a73f14ae508463dc7e890a70a5 -# Parent c73cca6a510dd3f269c85263e18141c850a37fdb -8074761, PR2471: Empty optional parameters of LDAP query are not interpreted as empty -Reviewed-by: vinnie -Contributed-by: Stanislav Baiduzhyi - -diff -r c73cca6a510d -r f0137fa5ba52 src/share/classes/com/sun/jndi/ldap/LdapURL.java ---- openjdk/jdk/src/share/classes/com/sun/jndi/ldap/LdapURL.java Wed Jan 07 00:02:43 2015 +0000 -+++ openjdk/jdk/src/share/classes/com/sun/jndi/ldap/LdapURL.java Thu Apr 23 13:48:02 2015 -0400 -@@ -26,9 +26,6 @@ - package com.sun.jndi.ldap; - - import javax.naming.*; --import javax.naming.directory.*; --import javax.naming.spi.*; --import java.net.URL; - import java.net.MalformedURLException; - import java.io.UnsupportedEncodingException; - import java.util.StringTokenizer; -@@ -211,43 +208,52 @@ - - // query begins with a '?' or is null - -- if (query == null) { -+ if (query == null || query.length() < 2) { - return; - } - -- int qmark2 = query.indexOf('?', 1); -+ int currentIndex = 1; -+ int nextQmark; -+ int endIndex; - -- if (qmark2 < 0) { -- attributes = query.substring(1); -+ // attributes: -+ nextQmark = query.indexOf('?', currentIndex); -+ endIndex = nextQmark == -1 ? query.length() : nextQmark; -+ if (endIndex - currentIndex > 0) { -+ attributes = query.substring(currentIndex, endIndex); -+ } -+ currentIndex = endIndex + 1; -+ if (currentIndex >= query.length()) { - return; -- } else if (qmark2 != 1) { -- attributes = query.substring(1, qmark2); - } - -- int qmark3 = query.indexOf('?', qmark2 + 1); -- -- if (qmark3 < 0) { -- scope = query.substring(qmark2 + 1); -+ // scope: -+ nextQmark = query.indexOf('?', currentIndex); -+ endIndex = nextQmark == -1 ? query.length() : nextQmark; -+ if (endIndex - currentIndex > 0) { -+ scope = query.substring(currentIndex, endIndex); -+ } -+ currentIndex = endIndex + 1; -+ if (currentIndex >= query.length()) { - return; -- } else if (qmark3 != qmark2 + 1) { -- scope = query.substring(qmark2 + 1, qmark3); - } - -- int qmark4 = query.indexOf('?', qmark3 + 1); -+ // filter: -+ nextQmark = query.indexOf('?', currentIndex); -+ endIndex = nextQmark == -1 ? query.length() : nextQmark; -+ if (endIndex - currentIndex > 0) { -+ filter = query.substring(currentIndex, endIndex); -+ filter = UrlUtil.decode(filter, "UTF8"); -+ } -+ currentIndex = endIndex + 1; -+ if (currentIndex >= query.length()) { -+ return; -+ } - -- if (qmark4 < 0) { -- filter = query.substring(qmark3 + 1); -- } else { -- if (qmark4 != qmark3 + 1) { -- filter = query.substring(qmark3 + 1, qmark4); -- } -- extensions = query.substring(qmark4 + 1); -- if (extensions.length() > 0) { -- extensions = UrlUtil.decode(extensions, "UTF8"); -- } -- } -- if (filter != null && filter.length() > 0) { -- filter = UrlUtil.decode(filter, "UTF8"); -+ // extensions: -+ if (query.length() - currentIndex > 0) { -+ extensions = query.substring(currentIndex); -+ extensions = UrlUtil.decode(extensions, "UTF8"); - } - } - -diff -r c73cca6a510d -r f0137fa5ba52 test/com/sun/jndi/ldap/LdapURLOptionalFields.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ openjdk/jdk/test/com/sun/jndi/ldap/LdapURLOptionalFields.java Thu Apr 23 13:48:02 2015 -0400 -@@ -0,0 +1,62 @@ -+/* -+ * Copyright (c) 2015, Red Hat, Inc. -+ * 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. -+ * -+ * 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. -+ */ -+ -+/** -+ * @test -+ * @bug 8074761 -+ * @summary RFC-2255 allows attribute, scope and filter to be empty. -+ */ -+ -+import com.sun.jndi.ldap.LdapURL; -+ -+public class LdapURLOptionalFields { -+ -+ private static final String[] TEST_URLS = { -+ "ldap://localhost:10389/ou=RefPeople,dc=example,dc=com", -+ "ldap://localhost:10389/ou=RefPeople,dc=example,dc=com?", -+ "ldap://localhost:10389/ou=RefPeople,dc=example,dc=com??", -+ "ldap://localhost:10389/ou=RefPeople,dc=example,dc=com???", -+ "ldap://localhost:10389/ou=RefPeople,dc=example,dc=com????" -+ }; -+ -+ public static void main(String[] args) throws Exception { -+ for (int i = 0; i < TEST_URLS.length; i++) { -+ String url = TEST_URLS[i]; -+ checkEmptyAttributes(url); -+ } -+ } -+ -+ private static void checkEmptyAttributes(String urlString) throws Exception { -+ LdapURL url = new LdapURL(urlString); -+ if (url.getAttributes() != null) { -+ throw new Exception("Expected null attributes for url: '" + urlString + "'"); -+ } -+ if (url.getScope() != null) { -+ throw new Exception("Expected null scope for url: '" + urlString + "'"); -+ } -+ if (url.getFilter() != null) { -+ throw new Exception("Expected null filter for url: '" + urlString + "'"); -+ } -+ } -+ -+} diff --git a/SOURCES/rh1201393.patch b/SOURCES/rh1201393.patch deleted file mode 100644 index 20c47c2..0000000 --- a/SOURCES/rh1201393.patch +++ /dev/null @@ -1,64 +0,0 @@ -# HG changeset patch -# User goetz -# Date 1430299335 -7200 -# Wed Apr 29 11:22:15 2015 +0200 -# Node ID c4bfba1711bad17f743648f775870864dbe1c2e3 -# Parent 1da8d6e3bcfeecabc3c13d37f44eced2d7fef521 -8078482, PR2398, RH1201393: ppc: pass thread to throw_AbstractMethodError -Summary: Also improve check for Safepoints in signal handler. -Reviewed-by: kvn, simonis - -diff -r 1da8d6e3bcfe -r c4bfba1711ba src/cpu/ppc/vm/interpreter_ppc.cpp ---- openjdk/hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp Wed Apr 29 12:23:48 2015 -0700 -+++ openjdk/hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp Wed Apr 29 11:22:15 2015 +0200 -@@ -1,6 +1,6 @@ - /* -- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. -- * Copyright 2012, 2014 SAP AG. All rights reserved. -+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2015 SAP AG. 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 -@@ -459,7 +459,8 @@ - - // This is not a leaf but we have a JavaFrameAnchor now and we will - // check (create) exceptions afterward so this is ok. -- __ call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_AbstractMethodError)); -+ __ call_VM_leaf(CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_AbstractMethodError), -+ R16_thread); - - // Pop the C frame and restore LR. - __ pop_frame(); -diff -r 1da8d6e3bcfe -r c4bfba1711ba src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp ---- openjdk/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp Wed Apr 29 12:23:48 2015 -0700 -+++ openjdk/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp Wed Apr 29 11:22:15 2015 +0200 -@@ -1,6 +1,6 @@ - /* -- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. -- * Copyright 2012, 2014 SAP AG. All rights reserved. -+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2015 SAP AG. 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 -@@ -290,6 +290,7 @@ - goto report_and_die; - } - -+ CodeBlob *cb = NULL; - // Handle signal from NativeJump::patch_verified_entry(). - if (( TrapBasedNotEntrantChecks && sig == SIGTRAP && nativeInstruction_at(pc)->is_sigtrap_zombie_not_entrant()) || - (!TrapBasedNotEntrantChecks && sig == SIGILL && nativeInstruction_at(pc)->is_sigill_zombie_not_entrant())) { -@@ -305,7 +306,10 @@ - // especially when we try to read from the safepoint polling page. So the check - // (address)info->si_addr == os::get_standard_polling_page() - // doesn't work for us. We use: -- ((NativeInstruction*)pc)->is_safepoint_poll()) { -+ ((NativeInstruction*)pc)->is_safepoint_poll() && -+ CodeCache::contains((void*) pc) && -+ ((cb = CodeCache::find_blob(pc)) != NULL) && -+ cb->is_nmethod()) { - if (TraceTraps) { - tty->print_cr("trap: safepoint_poll at " INTPTR_FORMAT " (SIGSEGV)", p2i(pc)); - } diff --git a/SOURCES/rh1210739.patch b/SOURCES/rh1210739.patch deleted file mode 100644 index db5a174..0000000 --- a/SOURCES/rh1210739.patch +++ /dev/null @@ -1,137 +0,0 @@ -# HG changeset patch -# User robm -# Date 1430151427 -3600 -# Mon Apr 27 17:17:07 2015 +0100 -# Node ID 25793dbc656988d6e20c9b2653790ce25b8bee03 -# Parent ea26a8f4db7e20b97340b7e76e3126b3a3493307 -6991580, PR2403: IPv6 Nameservers in resolv.conf throws NumberFormatException -Reviewed-by: michaelm, andrew, alanb, rriggs -Contributed-by: sgehwolf@redhat.com - -diff -r ea26a8f4db7e -r 25793dbc6569 src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java ---- openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java Thu Jun 04 20:13:40 2015 +0100 -+++ openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java Mon Apr 27 17:17:07 2015 +0100 -@@ -85,6 +85,15 @@ - if (val.charAt(0) == '#' || val.charAt(0) == ';') { - break; - } -+ if ("nameserver".equals(keyword)) { -+ if (val.indexOf(':') >= 0 && -+ val.indexOf('.') < 0 && // skip for IPv4 literals with port -+ val.indexOf('[') < 0 && -+ val.indexOf(']') < 0 ) { -+ // IPv6 literal, in non-BSD-style. -+ val = "[" + val + "]"; -+ } -+ } - ll.add(val); - if (--maxvalues == 0) { - break; -diff -r ea26a8f4db7e -r 25793dbc6569 test/com/sun/jndi/dns/IPv6NameserverPlatformParsingTest.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ openjdk/jdk/test/com/sun/jndi/dns/IPv6NameserverPlatformParsingTest.java Mon Apr 27 17:17:07 2015 +0100 -@@ -0,0 +1,104 @@ -+/* -+ * Copyright (c) 2015, Red Hat, Inc. -+ * 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. -+ * -+ * 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. -+ */ -+ -+import java.lang.reflect.Field; -+import java.util.Hashtable; -+ -+import javax.naming.Context; -+import javax.naming.NamingException; -+import javax.naming.spi.NamingManager; -+ -+import com.sun.jndi.dns.DnsContext; -+ -+/** -+ * @test -+ * @bug 6991580 -+ * @summary IPv6 Nameservers in resolv.conf throws NumberFormatException -+ * @run main/manual IPv6NameserverPlatformParsingTest -+ * -+ * In order to run this test be sure to place, for example, the following -+ * snippet into your platform's {@code /etc/resolv.conf}: -+ *
-+ * nameserver 127.0.0.1
-+ * nameserver 2001:4860:4860::8888
-+ * nameserver [::1]:5353
-+ * nameserver 127.0.0.1:5353
-+ * 
-+ * -+ * Then, run this test as manual jtreg test. -+ * -+ * @author Severin Gehwolf -+ * -+ */ -+public class IPv6NameserverPlatformParsingTest { -+ -+ private static boolean foundIPv6 = false; -+ -+ public static void main(String[] args) { -+ Hashtable env = new Hashtable<>(); -+ env.put(Context.INITIAL_CONTEXT_FACTORY, com.sun.jndi.dns.DnsContextFactory.class.getName()); -+ -+ String[] servers; -+ try { -+ Context ctx = NamingManager.getInitialContext(env); -+ if (!com.sun.jndi.dns.DnsContextFactory.platformServersAvailable()) { -+ throw new RuntimeException("FAIL: no platform servers available, test does not make sense"); -+ } -+ DnsContext context = (DnsContext)ctx; -+ servers = getServersFromContext(context); -+ } catch (NamingException e) { -+ throw new RuntimeException(e); -+ } -+ for (String server: servers) { -+ System.out.println("DEBUG: 'nameserver = " + server + "'"); -+ if (server.indexOf(':') >= 0 && server.indexOf('.') < 0) { -+ System.out.println("DEBUG: ==> Found IPv6 address in servers list: " + server); -+ foundIPv6 = true; -+ } -+ } -+ try { -+ new com.sun.jndi.dns.DnsClient(servers, 100, 1); -+ } catch (NumberFormatException e) { -+ throw new RuntimeException("FAIL: Tried to parse non-[]-encapsulated IPv6 address.", e); -+ } catch (Exception e) { -+ throw new RuntimeException("ERROR: Something unexpected happened."); -+ } -+ if (!foundIPv6) { -+ // This is a manual test, since it requires changing /etc/resolv.conf on Linux/Unix -+ // platforms. See comment as to how to run this test. -+ throw new RuntimeException("ERROR: No IPv6 address returned from platform."); -+ } -+ System.out.println("PASS: Found IPv6 address and DnsClient parsed it correctly."); -+ } -+ -+ private static String[] getServersFromContext(DnsContext context) { -+ try { -+ Field serversField = DnsContext.class.getDeclaredField("servers"); -+ serversField.setAccessible(true); -+ return (String[])serversField.get(context); -+ } catch (Exception e) { -+ throw new RuntimeException(e); -+ } -+ } -+ -+} diff --git a/SOURCES/rh1212268.patch b/SOURCES/rh1212268.patch deleted file mode 100644 index 0b1de4a..0000000 --- a/SOURCES/rh1212268.patch +++ /dev/null @@ -1,42 +0,0 @@ -# HG changeset patch -# User prr -# Date 1430428826 25200 -# Thu Apr 30 14:20:26 2015 -0700 -# Node ID c257a563155f2ca635ffc39ce0850b49eb54fb44 -# Parent 7741f8bf304773a9159a63f3b811630b5a4483c3 -8078654, PR2332: CloseTTFontFileFunc callback should be removed -Reviewed-by: prr, martin - -diff -r 7741f8bf3047 -r c257a563155f src/share/native/sun/font/freetypeScaler.c ---- openjdk/jdk/src/share/native/sun/font/freetypeScaler.c Mon Jan 19 17:57:52 2015 +0100 -+++ openjdk/jdk/src/share/native/sun/font/freetypeScaler.c Thu Apr 30 14:20:26 2015 -0700 -@@ -147,20 +147,6 @@ - - #define FILEDATACACHESIZE 1024 - --/* NB: is it ever called? */ --static void CloseTTFontFileFunc(FT_Stream stream) { -- FTScalerInfo *scalerInfo = (FTScalerInfo *) stream->pathname.pointer; -- JNIEnv* env = scalerInfo->env; -- jclass tmpClass = (*env)->FindClass(env, "sun/font/TrueTypeFont"); -- jfieldID platNameField = -- (*env)->GetFieldID(env, tmpClass, "platName", "Ljava/lang/String;"); -- jstring platName = (*env)->GetObjectField(env, -- scalerInfo->font2D, -- platNameField); -- const char *name = JNU_GetStringPlatformChars(env, platName, NULL); -- JNU_ReleaseStringPlatformChars(env, platName, name); --} -- - static unsigned long ReadTTFontFileFunc(FT_Stream stream, - unsigned long offset, - unsigned char* destBuffer, -@@ -305,7 +291,7 @@ - ftstream->size = filesize; - ftstream->pos = 0; - ftstream->read = (FT_Stream_IoFunc) ReadTTFontFileFunc; -- ftstream->close = (FT_Stream_CloseFunc) CloseTTFontFileFunc; -+ ftstream->close = NULL; - ftstream->pathname.pointer = (void *) scalerInfo; - - memset(&ft_open_args, 0, sizeof(FT_Open_Args)); diff --git a/SOURCES/rh1213280.patch b/SOURCES/rh1213280.patch deleted file mode 100644 index 1e1cdd4..0000000 --- a/SOURCES/rh1213280.patch +++ /dev/null @@ -1,74 +0,0 @@ -# HG changeset patch -# User dl -# Date 1429882781 -7200 -# Fri Apr 24 15:39:41 2015 +0200 -# Node ID 948ef7cac69115d4f36ddf1c5293acbe8e14e0a9 -# Parent adf1b3700c5ba6c13eb8f9d8eb4d6d32085bd483 -8078490, PR2431, RH1213280: Missed submissions in ForkJoinPool -Reviewed-by: psandoz, shade, martin, chegar - -diff -r adf1b3700c5b -r 948ef7cac691 src/share/classes/java/util/concurrent/ForkJoinPool.java ---- openjdk/jdk/src/share/classes/java/util/concurrent/ForkJoinPool.java Wed Jun 17 00:37:45 2015 +0100 -+++ openjdk/jdk/src/share/classes/java/util/concurrent/ForkJoinPool.java Fri Apr 24 15:39:41 2015 +0200 -@@ -2406,7 +2406,7 @@ - int j = ((am & s) << ASHIFT) + ABASE; - U.putOrderedObject(a, j, task); - U.putOrderedInt(q, QTOP, s + 1); -- U.putOrderedInt(q, QLOCK, 0); -+ U.putIntVolatile(q, QLOCK, 0); - if (n <= 1) - signalWork(ws, q); - return; -diff -r adf1b3700c5b -r 948ef7cac691 test/java/util/concurrent/forkjoin/SubmissionTest.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ openjdk/jdk/test/java/util/concurrent/forkjoin/SubmissionTest.java Fri Apr 24 15:39:41 2015 +0200 -@@ -0,0 +1,49 @@ -+/* -+ * Copyright (c) 2015, 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. -+ * -+ * 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. -+ */ -+ -+import java.util.concurrent.ForkJoinPool; -+import java.util.concurrent.TimeUnit; -+import java.util.concurrent.atomic.AtomicBoolean; -+ -+/* -+ * @test -+ * @bug 8078490 -+ * @summary Test submission and execution of task without joining -+ */ -+public class SubmissionTest { -+ public static void main(String[] args) throws Throwable { -+ final ForkJoinPool e = new ForkJoinPool(1); -+ final AtomicBoolean b = new AtomicBoolean(); -+ final Runnable setFalse = () -> b.set(false); -+ for (int i = 0; i < 100000; i++) { -+ b.set(true); -+ e.execute(setFalse); -+ long st = System.nanoTime(); -+ while (b.get()) { -+ if (System.nanoTime() - st >= TimeUnit.SECONDS.toNanos(10)) { -+ throw new RuntimeException("Submitted task failed to execute"); -+ } -+ } -+ } -+ } -+} diff --git a/SOURCES/zero-interpreter-fix.patch b/SOURCES/zero-interpreter-fix.patch deleted file mode 100644 index 8fdbd90..0000000 --- a/SOURCES/zero-interpreter-fix.patch +++ /dev/null @@ -1,25 +0,0 @@ -# HG changeset patch -# User roland -# Date 1418632606 -3600 -# Node ID a733dad6fc1e2572ed227e898da35e0053cbb7c5 -# Parent db035d4ba1bd25ac8803bb2d177cb35681eb6907 -8067231: Zero builds fails after JDK-6898462 -Summary: Interpreter::remove_activation_entry() is not defined for the C++ interpreter -Reviewed-by: roland, coleenp -Contributed-by: Severin Gehwolf - ---- jdk8/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Sat Dec 13 01:24:10 2014 +0300 -+++ jdk8/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Mon Dec 15 09:36:46 2014 +0100 -@@ -394,7 +394,11 @@ - // during deoptimization so the interpreter needs to skip it when - // the frame is popped. - thread->set_do_not_unlock_if_synchronized(true); -+#ifdef CC_INTERP -+ return (address) -1; -+#else - return Interpreter::remove_activation_entry(); -+#endif - } - - // Need to do this check first since when _do_not_unlock_if_synchronized - diff --git a/SPECS/java-1.8.0-openjdk.spec b/SPECS/java-1.8.0-openjdk.spec index 389ee83..3709eee 100644 --- a/SPECS/java-1.8.0-openjdk.spec +++ b/SPECS/java-1.8.0-openjdk.spec @@ -84,11 +84,11 @@ # Standard JPackage naming and versioning defines. %global origin openjdk -%global updatever 51 -%global buildver b16 -%global aarch64_updatever 51 -%global aarch64_buildver b16 -%global aarch64_changesetid aarch64-jdk8u51-b16 +%global updatever 60 +%global buildver b27 +%global aarch64_updatever 60 +%global aarch64_buildver b24.2 +%global aarch64_changesetid aarch64-jdk8u%{aarch64_updatever}-%{aarch64_buildver} # priority must be 7 digits in total %global priority 00000%{updatever} %global javaver 1.8.0 @@ -126,7 +126,7 @@ Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever} -Release: 1.%{buildver}%{?dist} +Release: 2.%{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 @@ -147,8 +147,8 @@ URL: http://openjdk.java.net/ # Source from upstrem OpenJDK8 project. To regenerate, use # ./generate_source_tarball.sh jdk8u jdk8u jdk8u%%{updatever}-%%{buildver} # ./generate_source_tarball.sh aarch64-port jdk8 %%{aarch64_hg_tag} -Source0: jdk8u-jdk8u%{updatever}-%{buildver}.tar.xz -Source1: jdk8u-%{aarch64_changesetid}.tar.xz +Source0: jdk8u60-jdk8u%{updatever}-%{buildver}.tar.xz +Source1: jdk8-%{aarch64_changesetid}.tar.xz # Custom README for -src subpackage Source2: README.src @@ -193,10 +193,12 @@ Patch5: multiple-pkcs11-library-init.patch Patch7: include-all-srcs.patch # Problem discovered with make 4.0 Patch12: removeSunEcProvider-RH1154143.patch +Patch13: libjpeg-turbo-1.4-compat.patch # # OpenJDK specific patches # + # JVM heap size changes for s390 (thanks to aph) Patch100: %{name}-s390-java-opts.patch # Type fixing for s390 @@ -205,42 +207,14 @@ Patch102: %{name}-size_t.patch Patch201: system-libjpeg.patch Patch202: system-libpng.patch Patch203: system-lcms.patch -Patch204: zero-interpreter-fix.patch Patch300: jstack-pr1845.patch -# Fixed in upstream 9. See upstream bug: -# https://bugs.openjdk.java.net/browse/JDK-8064815 -Patch400: ppc_stack_overflow_fix.patch -# Fixed in upstream 9. See upstream bug: -# https://bugs.openjdk.java.net/browse/JDK-8067330 -Patch401: fix_ZERO_ARCHDEF_ppc.patch -# Fixed in upstream 9. See upstream bug: -# https://bugs.openjdk.java.net/browse/JDK-8067331 -Patch402: atomic_linux_zero.inline.hpp.patch # Fixes StackOverflowError on ARM32 bit Zero. See RHBZ#1206656 Patch403: rhbz1206656_fix_current_stack_pointer.patch -#both upstreamed, will fly away in u60 -Patch501: 1182011_JavaPrintApiDoesNotPrintUmlautCharsWithPostscriptOutputCorrectly.patch -Patch502: 1182694_javaApplicationMenuMisbehave.patch - -# S8087156, PR2444: SetupNativeCompilation ignores CFLAGS_release for cpp files (in 8u60) -Patch503: pr2444.patch # PR2095, RH1163501: 2048-bit DH upper bound too small for Fedora infrastructure (sync with IcedTea 2.x) Patch504: rh1163501.patch -# 6584008, PR2192, RH1173326: jvmtiStringPrimitiveCallback should not be invoked when string value is null (in 8u60) -Patch505: rh1173326.patch -# S8074761, PR2471: Empty optional parameters of LDAP query are not interpreted as empty (in 8u60) -Patch506: rh1194226.patch -# S8078482, PR2398, RH1201393: ppc: pass thread to throw_AbstractMethodError (in 8u60) -Patch507: rh1201393.patch -# S6991580, PR2403, RH1210739: IPv6 Nameservers in resolv.conf throws NumberFormatException (in 8u60) -Patch508: rh1210739.patch -# S8078654, PR2332, RH1212268: CloseTTFontFileFunc callback should be removed (in 8u60) -Patch509: rh1212268.patch -# S8078490, PR2431, RH1213280: Missed submissions in ForkJoinPool -Patch510: rh1213280.patch # S4890063, PR2304, RH1214835: HPROF: default text truncated when using doe=n option (upstreaming post-CPU 2015/07) Patch511: rh1214835.patch @@ -444,14 +418,17 @@ if [ $prioritylength -ne 7 ] ; then exit 14 fi # For old patches -ln -s openjdk jdk8 # Swap HotSpot for AArch64 port %ifarch %{aarch64} -pushd openjdk -rm -r hotspot +#pushd openjdk +#rm -r hotspot +# tmp - containing whole aarch64 forest +rm -r openjdk tar xf %{SOURCE1} -popd +#popd %endif +ln -s openjdk jdk8 + cp %{SOURCE2} . # replace outdated configure guess script @@ -466,14 +443,17 @@ cp %{SOURCE101} openjdk/common/autoconf/build-aux/ # Remove libraries that are linked sh %{SOURCE12} +#pure aarch64 forest does not have them +%ifnarch %{aarch64} # Add AArch64 support to configure & JDK build %patch9999 +%endif %patch201 %patch202 %patch203 + %ifnarch %{aarch64} -%patch204 %endif %patch1 @@ -482,6 +462,7 @@ sh %{SOURCE12} %patch5 %patch7 %patch12 +%patch13 # s390 build fixes %ifarch s390 @@ -490,10 +471,6 @@ sh %{SOURCE12} %endif # Zero PPC fixes. -# TODO: propose them upstream -%patch400 -%patch401 -%patch402 %patch403 # HotSpot ppc64le patch is different depending @@ -503,28 +480,21 @@ sh %{SOURCE12} %else %patch600 %endif + +#pure aarch64 forest does not have them +%ifnarch %{aarch64} %patch601 %patch602 +%endif + +%patch504 +%patch511 # Extract systemtap tapsets %if %{with_systemtap} - tar xzf %{SOURCE8} - %patch300 -%patch501 -%patch502 -%patch503 -%patch504 -%patch505 -%patch506 -%patch507 -%patch508 -%patch509 -%patch510 -%patch511 - for file in tapset/*.in; do OUTPUT_FILE=`echo $file | sed -e s:%{javaver}\.stp\.in$:%{version}-%{release}.%{_arch}.stp:g` @@ -585,9 +555,6 @@ bash ../../configure \ %ifnarch %{jit_arches} --with-jvm-variants=zero \ %endif -%ifarch %{ppc64le} - --with-jvm-interpreter=cpp \ -%endif --disable-zip-debug-info \ --with-milestone="fcs" \ --with-update-version=%{updatever} \ @@ -1039,7 +1006,6 @@ for i,file in pairs(caredFiles) do end end - %post update-desktop-database %{_datadir}/applications &> /dev/null || : /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : @@ -1059,6 +1025,7 @@ if [ "$1" -gt 1 ]; then sum=$(md5sum "${javasecurity}" | cut -d' ' -f1) # This is the md5sum of an unmodified java.security file if [ "${sum}" = '1690ac33955594f71dc952c9e83fd396' -o \ + "${sum}" = 'b138695d0c0ea947e64a21a627d973ba' -o \ "${sum}" = 'd17958676bdb9f9d941c8a59655311fb' ]; then if [ -f "${javasecurity}.rpmnew" ]; then mv -f "${javasecurity}.rpmnew" "${javasecurity}" @@ -1409,6 +1376,14 @@ exit 0 %{_jvmdir}/%{jredir}/lib/accessibility.properties %changelog +* Tue Sep 08 2015 Jiri Vanek - 1:1.8.0.60-1.b27 +- removed double slash forgotten when sciplet mved out of macro +- Resolves: rhbz#1260077 + +* Fri Sep 04 2015 Jiri Vanek - 1:1.8.0.60-1.b27 +- updated to u60 +- Resolves: rhbz#1260077 + * Thu Jul 02 2015 Andrew Hughes - 1:1.8.0.51-1.b16 - Add md5sum for January 2015 java.security update so it gets updated this time. - Resolves: rhbz#1235162