diff --git a/.gitignore b/.gitignore index 2627f57..7ba5754 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ SOURCES/class-rewriter.tar.gz -SOURCES/openjdk-icedtea-2.6.7.tar.xz +SOURCES/openjdk-icedtea-2.6.8.tar.xz SOURCES/pulseaudio.tar.gz SOURCES/systemtap-tapset-2016-07-20.tar.xz diff --git a/.java-1.7.0-openjdk.metadata b/.java-1.7.0-openjdk.metadata index 480141f..dff9f27 100644 --- a/.java-1.7.0-openjdk.metadata +++ b/.java-1.7.0-openjdk.metadata @@ -1,4 +1,4 @@ fcc167de17354efb6e52cb387eb3e7dbb0316b53 SOURCES/class-rewriter.tar.gz -5fd43471399674bd74492fe15f73671ab2ba196a SOURCES/openjdk-icedtea-2.6.7.tar.xz +4679bc029f4c62f3f6fcef82b5418429f215048c SOURCES/openjdk-icedtea-2.6.8.tar.xz fb72b6b1f4735ad9b5799d0b5058b0b1dec67b17 SOURCES/pulseaudio.tar.gz 99b0cc8fa222bc6339374cfb8f8560d911613502 SOURCES/systemtap-tapset-2016-07-20.tar.xz diff --git a/SOURCES/7081817.patch b/SOURCES/7081817.patch deleted file mode 100644 index a248904..0000000 --- a/SOURCES/7081817.patch +++ /dev/null @@ -1,27 +0,0 @@ -# HG changeset patch -# User xuelei -# Date 1314062503 25200 -# Mon Aug 22 18:21:43 2011 -0700 -# Node ID 048f6b9603cfcdd204b540a27fad8b7fc492adc2 -# Parent 802c570861cbe03be84aba444399d81a57e00b4a -7081817: test/sun/security/provider/certpath/X509CertPath/IllegalCertiticates.java failing -Reviewed-by: alanb, weijun - -diff --git a/src/share/classes/sun/security/provider/certpath/X509CertPath.java b/src/share/classes/sun/security/provider/certpath/X509CertPath.java ---- openjdk/jdk/src/share/classes/sun/security/provider/certpath/X509CertPath.java -+++ openjdk/jdk/src/share/classes/sun/security/provider/certpath/X509CertPath.java -@@ -105,7 +105,13 @@ - super("X.509"); - - // Ensure that the List contains only X509Certificates -- for (Certificate obj : certs) { -+ // -+ // Note; The certs parameter is not necessarily to be of Certificate -+ // for some old code. For compatibility, to make sure the exception -+ // is CertificateException, rather than ClassCastException, please -+ // don't use -+ // for (Certificate obj : certs) -+ for (Object obj : certs) { - if (obj instanceof X509Certificate == false) { - throw new CertificateException - ("List is not all X509Certificates: " diff --git a/SOURCES/8140344.patch b/SOURCES/8140344.patch deleted file mode 100644 index 466c66b..0000000 --- a/SOURCES/8140344.patch +++ /dev/null @@ -1,153 +0,0 @@ -# HG changeset patch -# User robm -# Date 1469137650 -3600 -# Thu Jul 21 22:47:30 2016 +0100 -# Node ID c2ba29a6b98f628737ea1f74dd8745e4f72858a9 -# Parent 048f6b9603cfcdd204b540a27fad8b7fc492adc2 -8140344: add support for 3 digit update release numbers -Reviewed-by: coffeys - -diff --git a/src/share/classes/sun/misc/Version.java.template b/src/share/classes/sun/misc/Version.java.template ---- openjdk/jdk/src/share/classes/sun/misc/Version.java.template -+++ openjdk/jdk/src/share/classes/sun/misc/Version.java.template -@@ -283,15 +283,24 @@ - jvm_minor_version = Character.digit(cs.charAt(2), 10); - jvm_micro_version = Character.digit(cs.charAt(4), 10); - cs = cs.subSequence(5, cs.length()); -- if (cs.charAt(0) == '_' && cs.length() >= 3 && -- Character.isDigit(cs.charAt(1)) && -- Character.isDigit(cs.charAt(2))) { -- int nextChar = 3; -+ if (cs.charAt(0) == '_' && cs.length() >= 3) { -+ int nextChar = 0; -+ if (Character.isDigit(cs.charAt(1)) && -+ Character.isDigit(cs.charAt(2)) && -+ Character.isDigit(cs.charAt(3))) -+ { -+ nextChar = 4; -+ } else if (Character.isDigit(cs.charAt(1)) && -+ Character.isDigit(cs.charAt(2))) -+ { -+ nextChar = 3; -+ } -+ - try { -- String uu = cs.subSequence(1, 3).toString(); -+ String uu = cs.subSequence(1, nextChar).toString(); - jvm_update_version = Integer.valueOf(uu).intValue(); -- if (cs.length() >= 4) { -- char c = cs.charAt(3); -+ if (cs.length() >= nextChar + 1) { -+ char c = cs.charAt(nextChar); - if (c >= 'a' && c <= 'z') { - jvm_special_version = Character.toString(c); - nextChar++; -diff --git a/src/share/native/common/jdk_util.c b/src/share/native/common/jdk_util.c ---- openjdk/jdk/src/share/native/common/jdk_util.c -+++ openjdk/jdk/src/share/native/common/jdk_util.c -@@ -52,6 +52,7 @@ - - const char* jdk_update_string = JDK_UPDATE_VERSION; - unsigned int jdk_update_version = 0; -+ int len_update_ver = 0; - char update_ver[3]; - char jdk_special_version = '\0'; - -@@ -78,16 +79,17 @@ - - assert(jdk_build_number >= 0 && jdk_build_number <= 255); - -- if (strlen(jdk_update_string) == 2 || strlen(jdk_update_string) == 3) { -- if (isdigit(jdk_update_string[0]) && isdigit(jdk_update_string[1])) { -- update_ver[0] = jdk_update_string[0]; -- update_ver[1] = jdk_update_string[1]; -- update_ver[2] = '\0'; -- jdk_update_version = (unsigned int) atoi(update_ver); -- if (strlen(jdk_update_string) == 3) { -- jdk_special_version = jdk_update_string[2]; -- } -+ len_update_ver = strlen(jdk_update_string); -+ if (len_update_ver >= 2 && len_update_ver <= 4) { -+ int update_digits = len_update_ver; -+ -+ if (!isdigit(jdk_update_string[len_update_ver - 1])) { -+ jdk_special_version = jdk_update_string[len_update_ver -1]; -+ update_digits = len_update_ver - 1; - } -+ strncpy(update_ver, jdk_update_string, update_digits); -+ update_ver[update_digits] = '\0'; -+ jdk_update_version = (unsigned int) atoi(update_ver); - } - - memset(info, 0, info_size); -diff --git a/test/sun/misc/Version/Version.java b/test/sun/misc/Version/Version.java ---- openjdk/jdk/test/sun/misc/Version/Version.java -+++ openjdk/jdk/test/sun/misc/Version/Version.java -@@ -114,7 +114,7 @@ - regex += "([0-9]{1,2})"; // micro - regex += ")?"; // micro is optional - regex += "(_"; -- regex += "([0-9]{2})"; // update -+ regex += "([0-9]{2,3})"; // update - regex += "([a-z])?"; // special char (optional) - regex += ")?"; // _uu[c] is optional - regex += ".*"; // - -@@ -132,33 +132,38 @@ - build = Integer.parseInt(m.group(9)); - - VersionInfo vi = new VersionInfo(major, minor, micro, update, special, build); -- System.out.printf("newVersionInfo: input=%s output=%s\n", version, vi); -+ System.out.printf("jdkVersionInfo: input=%s output=%s\n", version, vi); - return vi; - } - - private static VersionInfo jvmVersionInfo(String version) throws Exception { -- // valid format of the version string is: -- // .-bxx[-][-] -- int major = 0; -- int minor = 0; -- int build = 0; -+ try { -+ // valid format of the version string is: -+ // .-bxx[-][-] -+ int major = 0; -+ int minor = 0; -+ int build = 0; - -- String regex = "^([0-9]{1,2})"; // major -- regex += "\\."; // separator -- regex += "([0-9]{1,2})"; // minor -- regex += "(\\-b([0-9]{1,3}))"; // JVM -bxx -- regex += ".*"; -+ String regex = "^([0-9]{1,2})"; // major -+ regex += "\\."; // separator -+ regex += "([0-9]{1,2})"; // minor -+ regex += "(\\-b([0-9]{1,3}))"; // JVM -bxx -+ regex += ".*"; - -- Pattern p = Pattern.compile(regex); -- Matcher m = p.matcher(version); -- m.matches(); -+ Pattern p = Pattern.compile(regex); -+ Matcher m = p.matcher(version); -+ m.matches(); - -- major = Integer.parseInt(m.group(1)); -- minor = Integer.parseInt(m.group(2)); -- build = Integer.parseInt(m.group(4)); -+ major = Integer.parseInt(m.group(1)); -+ minor = Integer.parseInt(m.group(2)); -+ build = Integer.parseInt(m.group(4)); - -- VersionInfo vi = new VersionInfo(major, minor, 0, 0, "", build); -- System.out.printf("newVersionInfo: input=%s output=%s\n", version, vi); -- return vi; -+ VersionInfo vi = new VersionInfo(major, minor, 0, 0, "", build); -+ System.out.printf("jvmVersionInfo: input=%s output=%s\n", version, vi); -+ return vi; -+ } catch (IllegalStateException e) { -+ // local builds may also follow the jdkVersionInfo format -+ return jdkVersionInfo(version); -+ } - } - } diff --git a/SOURCES/8145017.patch b/SOURCES/8145017.patch deleted file mode 100644 index 469e513..0000000 --- a/SOURCES/8145017.patch +++ /dev/null @@ -1,33 +0,0 @@ -# HG changeset patch -# User robm -# Date 1449750086 0 -# Thu Dec 10 12:21:26 2015 +0000 -# Node ID b015efd2ab82fea24e06b539036c2e4978e26266 -# Parent c2ba29a6b98f628737ea1f74dd8745e4f72858a9 -8145017: Add support for 3 digit hotspot minor version numbers -Reviewed-by: coffeys - -diff --git a/src/share/native/common/jdk_util.c b/src/share/native/common/jdk_util.c ---- openjdk/jdk/src/share/native/common/jdk_util.c -+++ openjdk/jdk/src/share/native/common/jdk_util.c -@@ -53,7 +53,7 @@ - const char* jdk_update_string = JDK_UPDATE_VERSION; - unsigned int jdk_update_version = 0; - int len_update_ver = 0; -- char update_ver[3]; -+ char update_ver[5]; - char jdk_special_version = '\0'; - - /* If the JDK_BUILD_NUMBER is of format bXX and XX is an integer -diff --git a/test/sun/misc/Version/Version.java b/test/sun/misc/Version/Version.java ---- openjdk/jdk/test/sun/misc/Version/Version.java -+++ openjdk/jdk/test/sun/misc/Version/Version.java -@@ -146,7 +146,7 @@ - - String regex = "^([0-9]{1,2})"; // major - regex += "\\."; // separator -- regex += "([0-9]{1,2})"; // minor -+ regex += "([0-9]{1,3})"; // minor - regex += "(\\-b([0-9]{1,3}))"; // JVM -bxx - regex += ".*"; - diff --git a/SOURCES/8162344.patch b/SOURCES/8162344.patch deleted file mode 100644 index bf0d8c6..0000000 --- a/SOURCES/8162344.patch +++ /dev/null @@ -1,94 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1469192287 -3600 -# Fri Jul 22 13:58:07 2016 +0100 -# Node ID cc1ed9a351886645eb729144696e41d187564ec2 -# Parent b015efd2ab82fea24e06b539036c2e4978e26266 -8162344: The API changes made by CR 7064075 need to be reverted -Summary: Remove type parameters added to SecretKeyFactory.getKeySpec and SecretKeyFactorySpi.engineGetKeySpec -Reviewed-by: omajid - -diff --git a/src/share/classes/com/sun/crypto/provider/DESKeyFactory.java b/src/share/classes/com/sun/crypto/provider/DESKeyFactory.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DESKeyFactory.java -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DESKeyFactory.java -@@ -92,7 +92,7 @@ - * inappropriate for the given key, or the given key cannot be processed - * (e.g., the given key has an unrecognized algorithm or format). - */ -- protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) -+ protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) - throws InvalidKeySpecException { - - try { -diff --git a/src/share/classes/com/sun/crypto/provider/DESedeKeyFactory.java b/src/share/classes/com/sun/crypto/provider/DESedeKeyFactory.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DESedeKeyFactory.java -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DESedeKeyFactory.java -@@ -92,7 +92,7 @@ - * inappropriate for the given key, or the given key cannot be processed - * (e.g., the given key has an unrecognized algorithm or format). - */ -- protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) -+ protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) - throws InvalidKeySpecException { - - try { -diff --git a/src/share/classes/com/sun/crypto/provider/PBEKeyFactory.java b/src/share/classes/com/sun/crypto/provider/PBEKeyFactory.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/PBEKeyFactory.java -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/PBEKeyFactory.java -@@ -131,7 +131,7 @@ - * inappropriate for the given key, or the given key cannot be processed - * (e.g., the given key has an unrecognized algorithm or format). - */ -- protected KeySpec engineGetKeySpec(SecretKey key, Class keySpecCl) -+ protected KeySpec engineGetKeySpec(SecretKey key, Class keySpecCl) - throws InvalidKeySpecException { - if ((key instanceof SecretKey) - && (validTypes.contains(key.getAlgorithm().toUpperCase())) -diff --git a/src/share/classes/com/sun/crypto/provider/PBKDF2HmacSHA1Factory.java b/src/share/classes/com/sun/crypto/provider/PBKDF2HmacSHA1Factory.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/PBKDF2HmacSHA1Factory.java -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/PBKDF2HmacSHA1Factory.java -@@ -86,7 +86,7 @@ - * given key cannot be processed (e.g., the given key has an - * unrecognized algorithm or format). - */ -- protected KeySpec engineGetKeySpec(SecretKey key, Class keySpecCl) -+ protected KeySpec engineGetKeySpec(SecretKey key, Class keySpecCl) - throws InvalidKeySpecException { - if (key instanceof javax.crypto.interfaces.PBEKey) { - // Check if requested key spec is amongst the valid ones -diff --git a/src/share/classes/javax/crypto/SecretKeyFactory.java b/src/share/classes/javax/crypto/SecretKeyFactory.java ---- openjdk/jdk/src/share/classes/javax/crypto/SecretKeyFactory.java -+++ openjdk/jdk/src/share/classes/javax/crypto/SecretKeyFactory.java -@@ -368,7 +368,7 @@ - * (e.g., the given key has an algorithm or format not supported by this - * secret-key factory). - */ -- public final KeySpec getKeySpec(SecretKey key, Class keySpec) -+ public final KeySpec getKeySpec(SecretKey key, Class keySpec) - throws InvalidKeySpecException { - if (serviceIterator == null) { - return spi.engineGetKeySpec(key, keySpec); -diff --git a/src/share/classes/javax/crypto/SecretKeyFactorySpi.java b/src/share/classes/javax/crypto/SecretKeyFactorySpi.java ---- openjdk/jdk/src/share/classes/javax/crypto/SecretKeyFactorySpi.java -+++ openjdk/jdk/src/share/classes/javax/crypto/SecretKeyFactorySpi.java -@@ -88,7 +88,7 @@ - * (e.g., the given key has an algorithm or format not supported by this - * secret-key factory). - */ -- protected abstract KeySpec engineGetKeySpec(SecretKey key, Class keySpec) -+ protected abstract KeySpec engineGetKeySpec(SecretKey key, Class keySpec) - throws InvalidKeySpecException; - - /** -diff --git a/src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java b/src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java ---- openjdk/jdk/src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java -+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java -@@ -319,7 +319,7 @@ - } - - // see JCE spec -- protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) -+ protected KeySpec engineGetKeySpec(SecretKey key, Class keySpec) - throws InvalidKeySpecException { - token.ensureValid(); - if ((key == null) || (keySpec == null)) { diff --git a/SPECS/java-1.7.0-openjdk.spec b/SPECS/java-1.7.0-openjdk.spec index e33549d..6d8679d 100644 --- a/SPECS/java-1.7.0-openjdk.spec +++ b/SPECS/java-1.7.0-openjdk.spec @@ -5,7 +5,7 @@ # conflicting) files in the -debuginfo package %undefine _missing_build_ids_terminate_build -%global icedtea_version 2.6.7 +%global icedtea_version 2.6.8 %global hg_tag icedtea-{icedtea_version} %global aarch64 aarch64 arm64 armv8 @@ -100,7 +100,7 @@ # If hsbootstrap is 1, build HotSpot alone first and use that in the bootstrap JDK # You can turn this on to avoid issues where HotSpot is broken in the bootstrap JDK %ifarch %{jit_arches} -%global hsbootstrap 1 +%global hsbootstrap 0 %else %global hsbootstrap 0 %endif @@ -138,8 +138,8 @@ # Standard JPackage naming and versioning defines. %global origin openjdk -%global updatever 111 -%global buildver 01 +%global updatever 121 +%global buildver 00 # Keep priority on 7digits in case updatever>9 %global priority 1700%{updatever} %global javaver 1.7.0 @@ -189,7 +189,7 @@ grep -e md5sum -A 20 $specfile | grep $currentMd5sum Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever} -Release: %{icedtea_version}.8%{?dist} +Release: %{icedtea_version}.0%{?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 @@ -296,16 +296,6 @@ Patch400: rh1022017.patch # PR2809: Backport "8076221: Disable RC4 cipher suites" (will appear in 2.7.0) Patch500: pr2809.patch -# Patches for b00->b01 -# S7081817: test/sun/security/provider/certpath/X509CertPath/IllegalCertiticates.java failing -Patch501: 7081817.patch -# S8140344: add support for 3 digit update release numbers -Patch502: 8140344.patch -# S8145017: Add support for 3 digit hotspot minor version numbers -Patch503: 8145017.patch -# S8162344: The API changes made by CR 7064075 need to be reverted -Patch504: 8162344.patch - # End of tmp patches BuildRequires: autoconf @@ -558,10 +548,6 @@ cp %{SOURCE2} . # Temporary fixes %patch500 -%patch501 -%patch502 -%patch503 -%patch504 # End of temporary fixes # Add systemtap patches if enabled @@ -1131,7 +1117,8 @@ if [ "$1" -gt 1 ]; then "${sum}" = 'f8a8bd04adae13e632e30622061d4b9f' -o \ "${sum}" = '9b517554fffe801f6894dfa0e8169cb1' -o \ "${sum}" = '795b59e52fe426f59d76d43defafabab' -o \ - "${sum}" = 'ec53f8629ce93fd2d8cdb1a143cbefdf' ]; then + "${sum}" = 'ec53f8629ce93fd2d8cdb1a143cbefdf' -o \ + "${sum}" = '7969a8d2dbc8db1ee232097cd0375d65' ]; then if [ -f "${javasecurity}.rpmnew" ]; then mv -f "${javasecurity}.rpmnew" "${javasecurity}" fi @@ -1483,6 +1470,16 @@ exit 0 %{_jvmdir}/%{jredir}/lib/accessibility.properties %changelog +* Mon Oct 31 2016 Andrew Hughes - 1:1.7.0.121-2.6.8.0 +- Turn off HotSpot bootstrap to see if it resolves build issues. +- Resolves: rhbz#1381990 + +* Fri Oct 28 2016 Andrew Hughes - 1:1.7.0.121-2.6.8.0 +- Bump to 2.6.8 and u121b00. +- Drop patches (S7081817, S8140344, S8145017 and S8162344) applied upstream. +- Update md5sum list with checksum for the new java.security file. +- Resolves: rhbz#1381990 + * Mon Sep 05 2016 Andrew Hughes - 1:1.7.0.111-2.6.7.7 - Rebuild java-1.7.0-openjdk for GCC aarch64 stack epilogue code generation fix (RH1372747) - Resolves: rhbz#1350042