jvanek pushed to java-1.8.0-openjdk (master). "updated to security u45 (..more)"

notifications at fedoraproject.org notifications at fedoraproject.org
Wed Apr 15 07:13:59 UTC 2015


>From f3b229270bc2d341da0047184cc0f908e43d91b8 Mon Sep 17 00:00:00 2001
From: Jiri Vanek <jvanek at redhat.com>
Date: Wed, 15 Apr 2015 09:11:21 +0200
Subject: updated to security u45 - removed patch6:
 disable-doclint-by-default.patch - added patch d318d83c4e74.patch - added 
 rhbz1206656_fix_current_stack_pointer.patch - renamed PStack-808293.patch ->
 java-1.8.0-openjdk-PStack-808293.patch - renamed remove-intree-libraries.sh
 -> java-1.8.0-openjdk-remove-intree-libraries.sh - renamed to preven conflix
 with jdk7


diff --git a/.gitignore b/.gitignore
index 3d21ae8..3d3bb75 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,11 +29,13 @@
 /jdk8u-jdk8u40-b01.tar.xz
 /jdk8u-jdk8u40-b02.tar.xz
 /jdk8u-jdk8u20-b26.tar.xz
+/jdk8u-jdk8u25-b17.tar.xz
 /aarch64-hotspot-jdk8u40-b02.tar.xz
 /aarch64-hotspot-jdk8u40-b02-c6375c27cbfa.tar.xz
 /aarch64-hotspot-jdk8u40-b04-a6df78e590bb.tar.xz
-/jdk8-jdk8u40-b12-aarch64.tar.xz
-/jdk8u-jdk8u40-b12.tar.xz
+/aarch64-hotspot-jdk8u40-b04-d0ea7bcfcd8c.tar.xz
 /jdk8-jdk8u40-b12-aarch64-1263.tar.xz
-/jdk8u40-jdk8u40-b25.tar.xz
-/jdk8-jdk8u40-b25-aarch64-jdk8u40-b25.tar.xz
+/jdk8-jdk8u40-b12-aarch64-hs3135441ed942.tar.xz
+/jdk8u-jdk8u31-b13.tar.xz
+/jdk8-jdk8u45-b13-aarch64-jdk8u45-b13.tar.xz
+/jdk8u45-jdk8u45-b13.tar.xz
diff --git a/PStack-808293.patch b/PStack-808293.patch
deleted file mode 100644
index eb8b8a0..0000000
--- a/PStack-808293.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- jdk8/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/PStack.java	2012-04-06 02:26:33.322164601 +0200
-+++ jdk8/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/PStack.java	2012-04-06 02:26:57.958514071 +0200
-@@ -1,5 +1,6 @@
- /*
-  * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
-+ * Copyright (c) 2012, 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
-@@ -84,7 +85,8 @@
-                out.print("----------------- ");
-                out.print(th);
-                out.println(" -----------------");
--               while (f != null) {
-+               int maxStack = 256;
-+               while (f != null && maxStack-- > 0) {
-                   ClosestSymbol sym = f.closestSymbolToPC();
-                   Address pc = f.pc();
-                   out.print(pc + "\t");
-@@ -158,10 +160,19 @@
-                          }
-                       }
-                   }
-+                  Address oldPC = f.pc();
-+                  Address oldFP = f.localVariableBase();
-                   f = f.sender(th);
-+                  if (f != null
-+                      && oldPC.equals(f.pc())
-+                      && oldFP.equals(f.localVariableBase())) {
-+                      // We didn't make any progress
-+                      f = null;
-+                  }
-                }
-             } catch (Exception exp) {
--               exp.printStackTrace();
-+               // exp.printStackTrace();
-+               out.println("bad stack: " + exp);
-                // continue, may be we can do a better job for other threads
-             }
-             if (concurrentLocks) {
diff --git a/d318d83c4e74.patch b/d318d83c4e74.patch
new file mode 100644
index 0000000..51cd4b9
--- /dev/null
+++ b/d318d83c4e74.patch
@@ -0,0 +1,114 @@
+--- 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 @@ 
+      * @param random the source of randomness
+      */
+     public void initialize(int keysize, SecureRandom random) {
+-        if ((keysize < 512) || (keysize > 2048) || (keysize % 64 != 0)) {
++        if ((keysize < 512) || (keysize > 4096) || (keysize % 64 != 0)) {
+             throw new InvalidParameterException("Keysize must be multiple "
+                                                 + "of 64, and can only range "
+-                                                + "from 512 to 2048 "
++                                                + "from 512 to 4096 "
+                                                 + "(inclusive)");
+         }
+         this.pSize = keysize;
+@@ -115,11 +116,11 @@ 
+ 
+         params = (DHParameterSpec)algParams;
+         pSize = params.getP().bitLength();
+-        if ((pSize < 512) || (pSize > 2048) ||
++        if ((pSize < 512) || (pSize > 4096) ||
+             (pSize % 64 != 0)) {
+             throw new InvalidAlgorithmParameterException
+                 ("Prime size must be multiple of 64, and can only range "
+-                 + "from 512 to 2048 (inclusive)");
++                 + "from 512 to 4096 (inclusive)");
+         }
+ 
+         // exponent size is optional, could be 0
+--- 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 @@ 
+ 
+     private static void checkKeySize(int keysize)
+         throws InvalidAlgorithmParameterException {
+-        if ((keysize != 2048) &&
++        if ((keysize != 2048) && (keysize != 4096) &&
+             ((keysize < 512) || (keysize > 1024) || (keysize % 64 != 0))) {
+             throw new InvalidAlgorithmParameterException(
+                 "Keysize must be multiple of 64 ranging from "
+-                + "512 to 1024 (inclusive), or 2048");
++                + "512 to 1024 (inclusive), or 2048, or 4096");
+         }
+     }
+ 
+--- 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
+-                    if ((keySize != 2048) &&
++                    if ((keySize != 2048) && (keySize != 4096) &&
+                         ((keySize > 1024) || ((keySize & 0x3f) != 0))) {
+                         throw new InvalidAlgorithmParameterException(algorithm +
+                             " key must be multiples of 64 if less than 1024 bits" +
+-                            ", or 2048 bits");
++                            ", or 2048 bits, or 4096 bits");
+                     }
+                 }
+             }
+--- 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 @@ 
+      */
+     private enum Sizes {
+         two56(256), three84(384), five12(512), seven68(768), ten24(1024),
+-        twenty48(2048);
++        twenty48(2048), forty96(4096);
+ 
+         private final int intSize;
+         private final BigInteger bigIntValue;
+@@ -130,6 +131,19 @@ 
+         kp = kpg.generateKeyPair();
+         checkKeyPair(kp, Sizes.twenty48, Sizes.five12);
+ 
++        kpg.initialize(Sizes.forty96.getIntSize());
++        kp = kpg.generateKeyPair();
++        checkKeyPair(kp, Sizes.forty96, Sizes.twenty48);
++
++        publicKey = (DHPublicKey)kp.getPublic();
++        p = publicKey.getParams().getP();
++        g = publicKey.getParams().getG();
++
++        // test w/ all values specified
++        kpg.initialize(new DHParameterSpec(p, g, Sizes.ten24.getIntSize()));
++        kp = kpg.generateKeyPair();
++        checkKeyPair(kp, Sizes.forty96, Sizes.ten24);
++
+         System.out.println("OK");
+     }
+ 
+
diff --git a/disable-doclint-by-default.patch b/disable-doclint-by-default.patch
deleted file mode 100644
index 11e7896..0000000
--- a/disable-doclint-by-default.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-Disable doclint by default
-
-OpenJDK 8 adds and enables doclint by default. This catches issues in
-javadoc comments. It is too strict, breaks javadoc compilation and, in
-general, breaks the build for old code known to build with previous
-versions of OpenJDK.
-
-See: http://blog.joda.org/2014/02/turning-off-doclint-in-jdk-8-javadoc.html
-See: https://lists.fedoraproject.org/pipermail/java-devel/2014-February/005150.html
-
-Author: Andrew John Hughes <ahughes at redhat.com>
-Author: Emmanuel Bourg <ebourg at apache.org>
---- jdk8/langtools/src/share/classes/com/sun/tools/javadoc/DocEnv.java
-+++ jdk8/langtools/src/share/classes/com/sun/tools/javadoc/DocEnv.java
-@@ -811,10 +811,9 @@
-             doclintOpts.add(opt == null ? DocLint.XMSGS_OPTION : DocLint.XMSGS_CUSTOM_PREFIX + opt);
-         }
- 
--        if (doclintOpts.isEmpty()) {
--            doclintOpts.add(DocLint.XMSGS_OPTION);
--        } else if (doclintOpts.size() == 1
--                && doclintOpts.get(0).equals(DocLint.XMSGS_CUSTOM_PREFIX + "none")) {
-+        if (doclintOpts.isEmpty() ||
-+	    (doclintOpts.size() == 1
-+	     && doclintOpts.get(0).equals(DocLint.XMSGS_CUSTOM_PREFIX + "none"))) {
-             return;
-         }
- 
---- jdk8/langtools/test/tools/javadoc/doclint/DocLintTest.java
-+++ jdk8/langtools/test/tools/javadoc/doclint/DocLintTest.java
-@@ -130,12 +130,12 @@
-         };
- 
-         test(Collections.<String>emptyList(),
--                Main.Result.ERROR,
--                EnumSet.of(Message.DL_ERR9A, Message.DL_WRN12A));
-+                Main.Result.OK,
-+                EnumSet.of(Message.JD_WRN10, Message.JD_WRN13));
- 
-         test(Arrays.asList(rawDiags),
--                Main.Result.ERROR,
--                EnumSet.of(Message.DL_ERR9, Message.DL_WRN12));
-+                Main.Result.OK,
-+                EnumSet.of(Message.JD_WRN10, Message.JD_WRN13));
- 
-         test(Arrays.asList("-Xdoclint:none"),
-                 Main.Result.OK,
-@@ -158,8 +158,8 @@
-                 EnumSet.of(Message.DL_WRN12));
- 
-         test(Arrays.asList(rawDiags, "-private"),
--                Main.Result.ERROR,
--                EnumSet.of(Message.DL_ERR6, Message.DL_ERR9, Message.DL_WRN12));
-+                Main.Result.OK,
-+                EnumSet.of(Message.JD_WRN10, Message.JD_WRN13));
- 
-         test(Arrays.asList(rawDiags, "-Xdoclint:syntax", "-private"),
-                 Main.Result.ERROR,
diff --git a/java-1.8.0-openjdk-PStack-808293.patch b/java-1.8.0-openjdk-PStack-808293.patch
new file mode 100644
index 0000000..eb8b8a0
--- /dev/null
+++ b/java-1.8.0-openjdk-PStack-808293.patch
@@ -0,0 +1,40 @@
+--- jdk8/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/PStack.java	2012-04-06 02:26:33.322164601 +0200
++++ jdk8/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/PStack.java	2012-04-06 02:26:57.958514071 +0200
+@@ -1,5 +1,6 @@
+ /*
+  * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
++ * Copyright (c) 2012, 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
+@@ -84,7 +85,8 @@
+                out.print("----------------- ");
+                out.print(th);
+                out.println(" -----------------");
+-               while (f != null) {
++               int maxStack = 256;
++               while (f != null && maxStack-- > 0) {
+                   ClosestSymbol sym = f.closestSymbolToPC();
+                   Address pc = f.pc();
+                   out.print(pc + "\t");
+@@ -158,10 +160,19 @@
+                          }
+                       }
+                   }
++                  Address oldPC = f.pc();
++                  Address oldFP = f.localVariableBase();
+                   f = f.sender(th);
++                  if (f != null
++                      && oldPC.equals(f.pc())
++                      && oldFP.equals(f.localVariableBase())) {
++                      // We didn't make any progress
++                      f = null;
++                  }
+                }
+             } catch (Exception exp) {
+-               exp.printStackTrace();
++               // exp.printStackTrace();
++               out.println("bad stack: " + exp);
+                // continue, may be we can do a better job for other threads
+             }
+             if (concurrentLocks) {
diff --git a/java-1.8.0-openjdk-remove-intree-libraries.sh b/java-1.8.0-openjdk-remove-intree-libraries.sh
new file mode 100644
index 0000000..76a4156
--- /dev/null
+++ b/java-1.8.0-openjdk-remove-intree-libraries.sh
@@ -0,0 +1,127 @@
+#!/bin/sh
+
+ZIP_SRC=jdk8/jdk/src/share/native/java/util/zip/zlib-*
+JPEG_SRC=jdk8/jdk/src/share/native/sun/awt/image/jpeg
+GIF_SRC=jdk8/jdk/src/share/native/sun/awt/giflib
+PNG_SRC=jdk8/jdk/src/share/native/sun/awt/libpng
+LCMS_SRC=jdk8/jdk/src/share/native/sun/java2d/cmm/lcms
+
+echo "Removing built-in libs (they will be linked)"
+
+echo "Removing zlib"
+if [ ! -d ${ZIP_SRC} ]; then
+	echo "${ZIP_SRC} does not exist. Refusing to proceed."
+	exit 1
+fi	
+rm -rvf ${ZIP_SRC}
+
+echo "Removing libjpeg"
+if [ ! -f ${JPEG_SRC}/jdhuff.c ]; then # some file that sound definitely exist
+	echo "${JPEG_SRC} does not contain jpeg sources. Refusing to proceed."
+	exit 1
+fi	
+
+rm -vf ${JPEG_SRC}/jcomapi.c
+rm -vf ${JPEG_SRC}/jdapimin.c
+rm -vf ${JPEG_SRC}/jdapistd.c
+rm -vf ${JPEG_SRC}/jdcoefct.c
+rm -vf ${JPEG_SRC}/jdcolor.c
+rm -vf ${JPEG_SRC}/jdct.h
+rm -vf ${JPEG_SRC}/jddctmgr.c
+rm -vf ${JPEG_SRC}/jdhuff.c
+rm -vf ${JPEG_SRC}/jdhuff.h
+rm -vf ${JPEG_SRC}/jdinput.c
+rm -vf ${JPEG_SRC}/jdmainct.c
+rm -vf ${JPEG_SRC}/jdmarker.c
+rm -vf ${JPEG_SRC}/jdmaster.c
+rm -vf ${JPEG_SRC}/jdmerge.c
+rm -vf ${JPEG_SRC}/jdphuff.c
+rm -vf ${JPEG_SRC}/jdpostct.c
+rm -vf ${JPEG_SRC}/jdsample.c
+rm -vf ${JPEG_SRC}/jerror.c
+rm -vf ${JPEG_SRC}/jerror.h
+rm -vf ${JPEG_SRC}/jidctflt.c
+rm -vf ${JPEG_SRC}/jidctfst.c
+rm -vf ${JPEG_SRC}/jidctint.c
+rm -vf ${JPEG_SRC}/jidctred.c
+rm -vf ${JPEG_SRC}/jinclude.h
+rm -vf ${JPEG_SRC}/jmemmgr.c
+rm -vf ${JPEG_SRC}/jmemsys.h
+rm -vf ${JPEG_SRC}/jmemnobs.c
+rm -vf ${JPEG_SRC}/jmorecfg.h
+rm -vf ${JPEG_SRC}/jpegint.h
+rm -vf ${JPEG_SRC}/jpeglib.h
+rm -vf ${JPEG_SRC}/jquant1.c
+rm -vf ${JPEG_SRC}/jquant2.c
+rm -vf ${JPEG_SRC}/jutils.c
+rm -vf ${JPEG_SRC}/jcapimin.c
+rm -vf ${JPEG_SRC}/jcapistd.c
+rm -vf ${JPEG_SRC}/jccoefct.c
+rm -vf ${JPEG_SRC}/jccolor.c
+rm -vf ${JPEG_SRC}/jcdctmgr.c
+rm -vf ${JPEG_SRC}/jchuff.c
+rm -vf ${JPEG_SRC}/jchuff.h
+rm -vf ${JPEG_SRC}/jcinit.c
+rm -vf ${JPEG_SRC}/jconfig.h
+rm -vf ${JPEG_SRC}/jcmainct.c
+rm -vf ${JPEG_SRC}/jcmarker.c
+rm -vf ${JPEG_SRC}/jcmaster.c
+rm -vf ${JPEG_SRC}/jcparam.c
+rm -vf ${JPEG_SRC}/jcphuff.c
+rm -vf ${JPEG_SRC}/jcprepct.c
+rm -vf ${JPEG_SRC}/jcsample.c
+rm -vf ${JPEG_SRC}/jctrans.c
+rm -vf ${JPEG_SRC}/jdtrans.c
+rm -vf ${JPEG_SRC}/jfdctflt.c
+rm -vf ${JPEG_SRC}/jfdctfst.c
+rm -vf ${JPEG_SRC}/jfdctint.c
+rm -vf ${JPEG_SRC}/jversion.h
+rm -vf ${JPEG_SRC}/README
+
+echo "Removing giflib"
+if [ ! -d ${GIF_SRC} ]; then
+	echo "${GIF_SRC} does not exist. Refusing to proceed."
+	exit 1
+fi	
+rm -rvf ${GIF_SRC}
+
+echo "Removing libpng"
+if [ ! -d ${PNG_SRC} ]; then
+	echo "${PNG_SRC} does not exist. Refusing to proceed."
+	exit 1
+fi	
+rm -rvf ${PNG_SRC}
+
+echo "Removing lcms"
+if [ ! -d ${LCMS_SRC} ]; then
+	echo "${LCMS_SRC} does not exist. Refusing to proceed."
+	exit 1
+fi
+rm -vf ${LCMS_SRC}/cmscam02.c
+rm -vf ${LCMS_SRC}/cmscgats.c
+rm -vf ${LCMS_SRC}/cmscnvrt.c
+rm -vf ${LCMS_SRC}/cmserr.c
+rm -vf ${LCMS_SRC}/cmsgamma.c
+rm -vf ${LCMS_SRC}/cmsgmt.c
+rm -vf ${LCMS_SRC}/cmshalf.c
+rm -vf ${LCMS_SRC}/cmsintrp.c
+rm -vf ${LCMS_SRC}/cmsio0.c
+rm -vf ${LCMS_SRC}/cmsio1.c
+rm -vf ${LCMS_SRC}/cmslut.c
+rm -vf ${LCMS_SRC}/cmsmd5.c
+rm -vf ${LCMS_SRC}/cmsmtrx.c
+rm -vf ${LCMS_SRC}/cmsnamed.c
+rm -vf ${LCMS_SRC}/cmsopt.c
+rm -vf ${LCMS_SRC}/cmspack.c
+rm -vf ${LCMS_SRC}/cmspcs.c
+rm -vf ${LCMS_SRC}/cmsplugin.c
+rm -vf ${LCMS_SRC}/cmsps2.c
+rm -vf ${LCMS_SRC}/cmssamp.c
+rm -vf ${LCMS_SRC}/cmssm.c
+rm -vf ${LCMS_SRC}/cmstypes.c
+rm -vf ${LCMS_SRC}/cmsvirt.c
+rm -vf ${LCMS_SRC}/cmswtpnt.c
+rm -vf ${LCMS_SRC}/cmsxform.c
+rm -vf ${LCMS_SRC}/lcms2.h
+rm -vf ${LCMS_SRC}/lcms2_internal.h
+rm -vf ${LCMS_SRC}/lcms2_plugin.h
diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec
index 4183243..eb82878 100644
--- a/java-1.8.0-openjdk.spec
+++ b/java-1.8.0-openjdk.spec
@@ -113,11 +113,11 @@
 
 # Standard JPackage naming and versioning defines.
 %global origin          openjdk
-%global updatever       40
-%global buildver        b25
-%global aarch64_updatever 40
-%global aarch64_buildver b25
-%global aarch64_changesetid aarch64-jdk8u40-b25
+%global updatever       45
+%global buildver        b13
+%global aarch64_updatever 45
+%global aarch64_buildver b13
+%global aarch64_changesetid aarch64-jdk8u45-b13
 # priority must be 7 digits in total
 %global priority        18000%{updatever}
 %global javaver         1.8.0
@@ -635,7 +635,7 @@ Obsoletes: java-1.7.0-openjdk-accessibility%1
 
 Name:    java-%{javaver}-%{origin}
 Version: %{javaver}.%{updatever}
-Release: 27.%{buildver}%{?dist}
+Release: 31.%{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
@@ -645,6 +645,7 @@ Release: 27.%{buildver}%{?dist}
 # satisfied by the 1:1.5.0 packages.  Thus we need to set the epoch in
 # JDK package >= 1.6.0 to 1, and packages referring to JDK virtual
 # provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
+
 Epoch:   1
 Summary: OpenJDK Runtime Environment
 Group:   Development/Languages
@@ -655,7 +656,7 @@ 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:  jdk8u40-jdk8u%{updatever}-%{buildver}.tar.xz
+Source0:  jdk8u45-jdk8u%{updatever}-%{buildver}.tar.xz
 Source1:  jdk8-jdk8u%{aarch64_updatever}-%{aarch64_buildver}-%{aarch64_changesetid}.tar.xz
 
 # Custom README for -src subpackage
@@ -675,7 +676,7 @@ Source10: policytool.desktop.in
 Source11: nss.cfg
 
 # Removed libraries that we link instead
-Source12: remove-intree-libraries.sh
+Source12: %{name}-remove-intree-libraries.sh
 
 # Ensure we aren't using the limited crypto policy
 Source13: TestCryptoLevel.java
@@ -694,11 +695,9 @@ Patch1:   %{name}-accessible-toolkit.patch
 # Restrict access to java-atk-wrapper classes
 Patch3: java-atk-wrapper-security.patch
 # RHBZ 808293
-Patch4: PStack-808293.patch
+Patch4: %{name}-PStack-808293.patch
 # Allow multiple initialization of PKCS11 libraries
 Patch5: multiple-pkcs11-library-init.patch
-# Disable doclint for compatibility
-Patch6: disable-doclint-by-default.patch
 # Include all sources in src.zip
 Patch7: include-all-srcs.patch
 # Problem discovered with make 4.0
@@ -721,15 +720,22 @@ 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
+#both upstreamed, will fly away in u60 (bug IDs are Red Hat bug IDs)
 Patch501: 1182011_JavaPrintApiDoesNotPrintUmlautCharsWithPostscriptOutputCorrectly.patch
 Patch502: 1182694_javaApplicationMenuMisbehave.patch
+Patch503: d318d83c4e74.patch
 
 
 Patch9999: enableArm64.patch
@@ -985,9 +991,8 @@ cp %{SOURCE101} jdk8/common/autoconf/build-aux/
 # Remove libraries that are linked
 sh %{SOURCE12}
 
-%ifarch %{aarch64}
+# Add AArch64 support to configure & JDK build
 %patch9999
-%endif
 
 %patch201
 %patch202
@@ -1000,7 +1005,6 @@ sh %{SOURCE12}
 %patch3
 %patch4
 %patch5
-%patch6
 %patch7
 %patch12
 %patch13
@@ -1027,6 +1031,7 @@ tar xzf %{SOURCE8}
 
 %patch501
 %patch502
+%patch503
 
 %if %{include_debug_build}
 cp -r tapset tapset%{debug_suffix}
@@ -1048,7 +1053,7 @@ for suffix in %{build_loop} ; do
   done
 done
 # systemtap tapsets ends
-%endif 
+%endif
 
 # Prepare desktop files
 for suffix in %{build_loop} ; do
@@ -1077,9 +1082,11 @@ export CFLAGS="$CFLAGS -mieee"
 %endif
 
 EXTRA_CFLAGS="-fstack-protector-strong"
-#see https://bugzilla.redhat.com/show_bug.cgi?id=1120792
-EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-devirtualize -Wno-return-local-addr"
-EXTRA_CPP_FLAGS="-fno-devirtualize -Wno-return-local-addr"
+# Disable various optimizations to fix miscompliation. See:
+# - https://bugzilla.redhat.com/show_bug.cgi?id=1120792
+# - https://bugzilla.redhat.com/show_bug.cgi?id=1208369
+EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-devirtualize -fno-tree-vrp"
+EXTRA_CPP_FLAGS="-fno-devirtualize -fno-tree-vrp"
 # PPC/PPC64 needs -fno-tree-vectorize since -O3 would
 # otherwise generate wrong code producing segfaults.
 %ifarch %{power64} ppc
@@ -1130,6 +1137,9 @@ bash ../../configure \
     --with-extra-cflags="$EXTRA_CFLAGS" \
     --with-num-cores="$NUM_PROC"
 
+cat spec.gmk
+cat hotspot-spec.gmk
+
 # The combination of FULL_DEBUG_SYMBOLS=0 and ALT_OBJCOPY=/does_not_exist
 # disables FDS for all build configs and reverts to pre-FDS make logic.
 # STRIP_POLICY=none says don't do any stripping. DEBUG_BINARIES=true says
@@ -1706,8 +1716,23 @@ end
 %{files_accessibility %{debug_suffix_unquoted}}
 %endif
 
-
 %changelog
+* Fri Apr 10 2015 Jiri Vanek <jvanek at redhat.com> - 1:1.8.0.45-31.b13
+- repacked sources
+
+* Tue Apr 07 2015 Jiri Vanek <jvanek at redhat.com> - 1:1.8.0.45-30.b13
+- updated to security u45
+- removed patch6: disable-doclint-by-default.patch
+- added patch d318d83c4e74.patch
+- added  rhbz1206656_fix_current_stack_pointer.patch
+- renamed PStack-808293.patch -> java-1.8.0-openjdk-PStack-808293.patch
+- renamed remove-intree-libraries.sh -> java-1.8.0-openjdk-remove-intree-libraries.sh
+- renamed to preven conflix with jdk7
+
+* Tue Apr 03 2015 Omair Majid <omajid at redhat.com> - 1:1.8.0.40-27.b25
+- Add -fno-tree-vrp to flags to prevent hotspot miscompilation.
+- Resolves: RHBZ#1208369
+
 * Thu Apr 02 2015 Jiri Vanek <jvanek at redhat.com> - 1:1.8.0.40-27.b25
 - bumped release. Needed rebuild by itself on arm
 
diff --git a/remove-intree-libraries.sh b/remove-intree-libraries.sh
deleted file mode 100644
index 76a4156..0000000
--- a/remove-intree-libraries.sh
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/bin/sh
-
-ZIP_SRC=jdk8/jdk/src/share/native/java/util/zip/zlib-*
-JPEG_SRC=jdk8/jdk/src/share/native/sun/awt/image/jpeg
-GIF_SRC=jdk8/jdk/src/share/native/sun/awt/giflib
-PNG_SRC=jdk8/jdk/src/share/native/sun/awt/libpng
-LCMS_SRC=jdk8/jdk/src/share/native/sun/java2d/cmm/lcms
-
-echo "Removing built-in libs (they will be linked)"
-
-echo "Removing zlib"
-if [ ! -d ${ZIP_SRC} ]; then
-	echo "${ZIP_SRC} does not exist. Refusing to proceed."
-	exit 1
-fi	
-rm -rvf ${ZIP_SRC}
-
-echo "Removing libjpeg"
-if [ ! -f ${JPEG_SRC}/jdhuff.c ]; then # some file that sound definitely exist
-	echo "${JPEG_SRC} does not contain jpeg sources. Refusing to proceed."
-	exit 1
-fi	
-
-rm -vf ${JPEG_SRC}/jcomapi.c
-rm -vf ${JPEG_SRC}/jdapimin.c
-rm -vf ${JPEG_SRC}/jdapistd.c
-rm -vf ${JPEG_SRC}/jdcoefct.c
-rm -vf ${JPEG_SRC}/jdcolor.c
-rm -vf ${JPEG_SRC}/jdct.h
-rm -vf ${JPEG_SRC}/jddctmgr.c
-rm -vf ${JPEG_SRC}/jdhuff.c
-rm -vf ${JPEG_SRC}/jdhuff.h
-rm -vf ${JPEG_SRC}/jdinput.c
-rm -vf ${JPEG_SRC}/jdmainct.c
-rm -vf ${JPEG_SRC}/jdmarker.c
-rm -vf ${JPEG_SRC}/jdmaster.c
-rm -vf ${JPEG_SRC}/jdmerge.c
-rm -vf ${JPEG_SRC}/jdphuff.c
-rm -vf ${JPEG_SRC}/jdpostct.c
-rm -vf ${JPEG_SRC}/jdsample.c
-rm -vf ${JPEG_SRC}/jerror.c
-rm -vf ${JPEG_SRC}/jerror.h
-rm -vf ${JPEG_SRC}/jidctflt.c
-rm -vf ${JPEG_SRC}/jidctfst.c
-rm -vf ${JPEG_SRC}/jidctint.c
-rm -vf ${JPEG_SRC}/jidctred.c
-rm -vf ${JPEG_SRC}/jinclude.h
-rm -vf ${JPEG_SRC}/jmemmgr.c
-rm -vf ${JPEG_SRC}/jmemsys.h
-rm -vf ${JPEG_SRC}/jmemnobs.c
-rm -vf ${JPEG_SRC}/jmorecfg.h
-rm -vf ${JPEG_SRC}/jpegint.h
-rm -vf ${JPEG_SRC}/jpeglib.h
-rm -vf ${JPEG_SRC}/jquant1.c
-rm -vf ${JPEG_SRC}/jquant2.c
-rm -vf ${JPEG_SRC}/jutils.c
-rm -vf ${JPEG_SRC}/jcapimin.c
-rm -vf ${JPEG_SRC}/jcapistd.c
-rm -vf ${JPEG_SRC}/jccoefct.c
-rm -vf ${JPEG_SRC}/jccolor.c
-rm -vf ${JPEG_SRC}/jcdctmgr.c
-rm -vf ${JPEG_SRC}/jchuff.c
-rm -vf ${JPEG_SRC}/jchuff.h
-rm -vf ${JPEG_SRC}/jcinit.c
-rm -vf ${JPEG_SRC}/jconfig.h
-rm -vf ${JPEG_SRC}/jcmainct.c
-rm -vf ${JPEG_SRC}/jcmarker.c
-rm -vf ${JPEG_SRC}/jcmaster.c
-rm -vf ${JPEG_SRC}/jcparam.c
-rm -vf ${JPEG_SRC}/jcphuff.c
-rm -vf ${JPEG_SRC}/jcprepct.c
-rm -vf ${JPEG_SRC}/jcsample.c
-rm -vf ${JPEG_SRC}/jctrans.c
-rm -vf ${JPEG_SRC}/jdtrans.c
-rm -vf ${JPEG_SRC}/jfdctflt.c
-rm -vf ${JPEG_SRC}/jfdctfst.c
-rm -vf ${JPEG_SRC}/jfdctint.c
-rm -vf ${JPEG_SRC}/jversion.h
-rm -vf ${JPEG_SRC}/README
-
-echo "Removing giflib"
-if [ ! -d ${GIF_SRC} ]; then
-	echo "${GIF_SRC} does not exist. Refusing to proceed."
-	exit 1
-fi	
-rm -rvf ${GIF_SRC}
-
-echo "Removing libpng"
-if [ ! -d ${PNG_SRC} ]; then
-	echo "${PNG_SRC} does not exist. Refusing to proceed."
-	exit 1
-fi	
-rm -rvf ${PNG_SRC}
-
-echo "Removing lcms"
-if [ ! -d ${LCMS_SRC} ]; then
-	echo "${LCMS_SRC} does not exist. Refusing to proceed."
-	exit 1
-fi
-rm -vf ${LCMS_SRC}/cmscam02.c
-rm -vf ${LCMS_SRC}/cmscgats.c
-rm -vf ${LCMS_SRC}/cmscnvrt.c
-rm -vf ${LCMS_SRC}/cmserr.c
-rm -vf ${LCMS_SRC}/cmsgamma.c
-rm -vf ${LCMS_SRC}/cmsgmt.c
-rm -vf ${LCMS_SRC}/cmshalf.c
-rm -vf ${LCMS_SRC}/cmsintrp.c
-rm -vf ${LCMS_SRC}/cmsio0.c
-rm -vf ${LCMS_SRC}/cmsio1.c
-rm -vf ${LCMS_SRC}/cmslut.c
-rm -vf ${LCMS_SRC}/cmsmd5.c
-rm -vf ${LCMS_SRC}/cmsmtrx.c
-rm -vf ${LCMS_SRC}/cmsnamed.c
-rm -vf ${LCMS_SRC}/cmsopt.c
-rm -vf ${LCMS_SRC}/cmspack.c
-rm -vf ${LCMS_SRC}/cmspcs.c
-rm -vf ${LCMS_SRC}/cmsplugin.c
-rm -vf ${LCMS_SRC}/cmsps2.c
-rm -vf ${LCMS_SRC}/cmssamp.c
-rm -vf ${LCMS_SRC}/cmssm.c
-rm -vf ${LCMS_SRC}/cmstypes.c
-rm -vf ${LCMS_SRC}/cmsvirt.c
-rm -vf ${LCMS_SRC}/cmswtpnt.c
-rm -vf ${LCMS_SRC}/cmsxform.c
-rm -vf ${LCMS_SRC}/lcms2.h
-rm -vf ${LCMS_SRC}/lcms2_internal.h
-rm -vf ${LCMS_SRC}/lcms2_plugin.h
diff --git a/sources b/sources
index 98f5734..313ebc1 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-3a7c67223ec3d78d5d36f3ead9d37718  jdk8u40-jdk8u40-b25.tar.xz
 94ca5a45c3cb3b85c4577d0891166007  systemtap-tapset.tar.gz
-affef71503099bc136b7066f9aa083a8  jdk8-jdk8u40-b25-aarch64-jdk8u40-b25.tar.xz
+753feced879e36b1250fb37aa45cea75  jdk8-jdk8u45-b13-aarch64-jdk8u45-b13.tar.xz
+44789f3467fc8df3c82946dd0db097a6  jdk8u45-jdk8u45-b13.tar.xz
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/java-1.8.0-openjdk.git/commit/?h=master&id=f3b229270bc2d341da0047184cc0f908e43d91b8


More information about the scm-commits mailing list