Mercurial > hg > release > icedtea6-1.13
changeset 3201:b0b4ed5198cc
Remove upstreamed patches and re-generate arch.patch.
2015-03-31 Andrew John Hughes <gnu.andrew@redhat.com>
* patches/openjdk/6730740-pr2186-64-bit_breakage_in_6729881.patch,
* patches/openjdk/7031830-pr2183-bad_record_mac_failure.patch,
* patches/openjdk/oj51-pr2187-sync_4873188.patch,
* patches/openjdk/oj52-pr2185-no_serbia_montenegro.patch,
* patches/openjdk/oj53-pr2181-strict_aliasing_on_ppc32.patch,
* patches/openjdk/oj54-pr2182-6911104_reintroduces_test_fragment.patch:
Removed; upstreamed.
* Makefile.am:
(ICEDTEA_PATCHES): Remove above patches.
* patches/arch.patch: Regenerated following
upstream application of OPENJDK6-53.
author | Andrew John Hughes <gnu.andrew@redhat.com> |
---|---|
date | Thu, 09 Apr 2015 18:34:28 +0100 |
parents | 93b80a863f3d |
children | a5244371fdc8 |
files | ChangeLog Makefile.am patches/arch.patch patches/openjdk/6730740-pr2186-64-bit_breakage_in_6729881.patch patches/openjdk/7031830-pr2183-bad_record_mac_failure.patch patches/openjdk/oj51-pr2187-sync_4873188.patch patches/openjdk/oj52-pr2185-no_serbia_montenegro.patch patches/openjdk/oj53-pr2181-strict_aliasing_on_ppc32.patch patches/openjdk/oj54-pr2182-6911104_reintroduces_test_fragment.patch |
diffstat | 9 files changed, 229 insertions(+), 960 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Sun Jan 25 20:35:44 2015 +0000 +++ b/ChangeLog Thu Apr 09 18:34:28 2015 +0100 @@ -1,3 +1,17 @@ +2015-03-31 Andrew John Hughes <gnu.andrew@redhat.com> + + * patches/openjdk/6730740-pr2186-64-bit_breakage_in_6729881.patch, + * patches/openjdk/7031830-pr2183-bad_record_mac_failure.patch, + * patches/openjdk/oj51-pr2187-sync_4873188.patch, + * patches/openjdk/oj52-pr2185-no_serbia_montenegro.patch, + * patches/openjdk/oj53-pr2181-strict_aliasing_on_ppc32.patch, + * patches/openjdk/oj54-pr2182-6911104_reintroduces_test_fragment.patch: + Removed; upstreamed. + * Makefile.am: + (ICEDTEA_PATCHES): Remove above patches. + * patches/arch.patch: Regenerated following + upstream application of OPENJDK6-53. + 2015-01-25 Andrew John Hughes <gnu.andrew@redhat.com> * Makefile.am:
--- a/Makefile.am Sun Jan 25 20:35:44 2015 +0000 +++ b/Makefile.am Thu Apr 09 18:34:28 2015 +0100 @@ -602,12 +602,6 @@ patches/pr2082-s390_type_fixes.patch \ patches/pr2096-4096-bit_dh.patch \ patches/pr2179-avoid_x86_workaround_on_zero.patch \ - patches/openjdk/6730740-pr2186-64-bit_breakage_in_6729881.patch \ - patches/openjdk/oj51-pr2187-sync_4873188.patch \ - patches/openjdk/7031830-pr2183-bad_record_mac_failure.patch \ - patches/openjdk/oj52-pr2185-no_serbia_montenegro.patch \ - patches/openjdk/oj53-pr2181-strict_aliasing_on_ppc32.patch \ - patches/openjdk/oj54-pr2182-6911104_reintroduces_test_fragment.patch \ patches/openjdk/6584008-pr2195-jvmtistringprimitivecallback_null_string.patch \ patches/openjdk/7199862-pr2198-ensure_cache_connection_still_alive.patch \ patches/openjdk/8074312-pr2255-support_linux_4.patch \
--- a/patches/arch.patch Sun Jan 25 20:35:44 2015 +0000 +++ b/patches/arch.patch Thu Apr 09 18:34:28 2015 +0100 @@ -1,7 +1,216 @@ ---- openjdk/jdk/make/javax/sound/SoundDefs.gmk.orig 2008-10-15 17:04:19.000000000 +0200 -+++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2008-10-15 17:09:56.000000000 +0200 +diff -Nru openjdk.orig/corba/make/common/Defs-linux.gmk openjdk/corba/make/common/Defs-linux.gmk +--- openjdk.orig/corba/make/common/Defs-linux.gmk 2010-05-26 09:31:18.000000000 +0100 ++++ openjdk/corba/make/common/Defs-linux.gmk 2015-03-31 16:43:11.850271287 +0100 +@@ -92,9 +92,19 @@ + # We need this frame pointer to make it easy to walk the stacks. + # This should be the default on X86, but ia64 and amd64 may not have this + # as the default. ++CFLAGS_REQUIRED_alpha += -mieee -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_arm += -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_hppa += + CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_m68k += ++CFLAGS_REQUIRED_mips += ++CFLAGS_REQUIRED_mipsel += -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_ppc += -m32 ++CFLAGS_REQUIRED_ppc64 += -m64 ++CFLAGS_REQUIRED_s390 += ++CFLAGS_REQUIRED_s390x += -m64 + CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 + LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 + CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 +diff -Nru openjdk.orig/corba/make/common/shared/Platform.gmk openjdk/corba/make/common/shared/Platform.gmk +--- openjdk.orig/corba/make/common/shared/Platform.gmk 2015-03-31 15:23:48.410803372 +0100 ++++ openjdk/corba/make/common/shared/Platform.gmk 2015-03-31 16:43:11.850271287 +0100 +@@ -220,9 +220,40 @@ + else + # i586 is 32-bit, amd64 is 64-bit + ifndef ARCH_DATA_MODEL ++ ifeq ($(ARCH), alpha) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), amd64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), arm) ++ ARCH_DATA_MODEL=32 ++ endif + ifeq ($(ARCH), i586) + ARCH_DATA_MODEL=32 +- else ++ endif ++ ifeq ($(ARCH), ia64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), mips) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), mipsel) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), ppc) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), ppc64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), s390) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), s390x) + ARCH_DATA_MODEL=64 + endif + endif +diff -Nru openjdk.orig/jdk/make/common/Defs-linux.gmk openjdk/jdk/make/common/Defs-linux.gmk +--- openjdk.orig/jdk/make/common/Defs-linux.gmk 2015-02-05 18:49:58.372812460 +0000 ++++ openjdk/jdk/make/common/Defs-linux.gmk 2015-03-31 16:45:47.396086418 +0100 +@@ -102,10 +102,19 @@ + # We need this frame pointer to make it easy to walk the stacks. + # This should be the default on X86, but ia64 and amd64 may not have this + # as the default. ++CFLAGS_REQUIRED_alpha += -mieee -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_arm += -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_hppa += + CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN +-CFLAGS_REQUIRED_ppc += -fsigned-char -D_BIG_ENDIAN ++CFLAGS_REQUIRED_m68k += ++CFLAGS_REQUIRED_mips += ++CFLAGS_REQUIRED_mipsel += -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_ppc += -m32 -fsigned-char -D_BIG_ENDIAN ++CFLAGS_REQUIRED_ppc64 += -m64 ++CFLAGS_REQUIRED_s390 += ++CFLAGS_REQUIRED_s390x += -m64 + CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 + LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 + CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 +diff -Nru openjdk.orig/jdk/make/common/shared/Compiler-gcc.gmk openjdk/jdk/make/common/shared/Compiler-gcc.gmk +--- openjdk.orig/jdk/make/common/shared/Compiler-gcc.gmk 2015-03-31 15:23:48.254801559 +0100 ++++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2015-03-31 16:51:56.332405289 +0100 +@@ -70,28 +70,56 @@ + else + CXX = $(COMPILER_PATH)g++$(GCC_SUFFIX) + endif +- ifneq ("$(findstring sparc,$(ARCH))", "") +- # sparc or sparcv9 +- REQUIRED_CC_VER = 4.0 +- REQUIRED_GCC_VER = 4.0.* +- else +- ifeq ($(ARCH_DATA_MODEL), 32) ++ ifeq ($(ARCH), alpha) ++ # alpha ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifeq ($(ARCH), amd64) ++ # amd64 ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifeq ($(ARCH), arm) ++ # arm ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifeq ($(ARCH), i586) + # i586 + REQUIRED_CC_VER = 3.2 + REQUIRED_GCC_VER = 3.2.1* + REQUIRED_GCC_VER_INT = 3.2.1-7a +- else +- ifeq ($(ARCH), amd64) +- # amd64 +- REQUIRED_CC_VER = 3.2 +- REQUIRED_GCC_VER = 3.2.* + endif + ifeq ($(ARCH), ia64) + # ia64 + REQUIRED_CC_VER = 3.2 + REQUIRED_GCC_VER = 2.9[56789].* + endif ++ ifneq ("$(findstring m68k,$(ARCH))", "") ++ # m68k ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifneq ("$(findstring mips,$(ARCH))", "") ++ # mips ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifneq ("$(findstring ppc,$(ARCH))", "") ++ # ppc or ppc64 ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* + endif ++ ifneq ("$(findstring s390,$(ARCH))", "") ++ # s390 or s390x ++ REQUIRED_CC_VER = 3.2 ++ REQUIRED_GCC_VER = 3.2.* ++ endif ++ ifneq ("$(findstring sparc,$(ARCH))", "") ++ # sparc or sparcv9 ++ REQUIRED_CC_VER = 4.0 ++ REQUIRED_GCC_VER = 4.0.* + endif + # Option used to create a shared library + SHARED_LIBRARY_FLAG = -shared +diff -Nru openjdk.orig/jdk/make/common/shared/Platform.gmk openjdk/jdk/make/common/shared/Platform.gmk +--- openjdk.orig/jdk/make/common/shared/Platform.gmk 2015-03-31 15:23:48.410803372 +0100 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2015-03-31 16:43:11.850271287 +0100 +@@ -222,9 +222,40 @@ + else + # i586 is 32-bit, amd64 is 64-bit + ifndef ARCH_DATA_MODEL ++ ifeq ($(ARCH), alpha) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), amd64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), arm) ++ ARCH_DATA_MODEL=32 ++ endif + ifeq ($(ARCH), i586) + ARCH_DATA_MODEL=32 +- else ++ endif ++ ifeq ($(ARCH), ia64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), m68k) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), mips) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), mipsel) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), ppc) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), ppc64) ++ ARCH_DATA_MODEL=64 ++ endif ++ ifeq ($(ARCH), s390) ++ ARCH_DATA_MODEL=32 ++ endif ++ ifeq ($(ARCH), s390x) + ARCH_DATA_MODEL=64 + endif + endif +diff -Nru openjdk.orig/jdk/make/javax/sound/SoundDefs.gmk openjdk/jdk/make/javax/sound/SoundDefs.gmk +--- openjdk.orig/jdk/make/javax/sound/SoundDefs.gmk 2013-08-21 20:32:57.524222927 +0100 ++++ openjdk/jdk/make/javax/sound/SoundDefs.gmk 2015-03-31 16:44:39.367291058 +0100 @@ -58,10 +58,54 @@ - ifdef ICEDTEA_ZERO_BUILD + ifeq ($(ZERO_BUILD), true) CPPFLAGS += -DX_ARCH=X_ZERO else + ifeq ($(ARCH), alpha) @@ -66,143 +275,9 @@ endif ---- openjdk/jdk/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:21.000000000 +0200 -+++ openjdk/jdk/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 -@@ -102,9 +102,19 @@ - # We need this frame pointer to make it easy to walk the stacks. - # This should be the default on X86, but ia64 and amd64 may not have this - # as the default. -+CFLAGS_REQUIRED_alpha += -mieee -D_LITTLE_ENDIAN - CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_arm += -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_hppa += - CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN - CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_m68k += -+CFLAGS_REQUIRED_mips += -+CFLAGS_REQUIRED_mipsel += -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_ppc += -m32 -+CFLAGS_REQUIRED_ppc64 += -m64 -+CFLAGS_REQUIRED_s390 += -+CFLAGS_REQUIRED_s390x += -m64 - CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 - LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 - CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/jdk/make/common/shared/Compiler-gcc.gmk.orig 2008-10-15 17:04:19.000000000 +0200 -+++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2008-10-15 17:11:28.000000000 +0200 -@@ -70,28 +70,56 @@ - else - CXX = $(COMPILER_PATH)g++$(GCC_SUFFIX) - endif -- ifneq ("$(findstring sparc,$(ARCH))", "") -- # sparc or sparcv9 -- REQUIRED_CC_VER = 4.0 -- REQUIRED_GCC_VER = 4.0.* -- else -- ifeq ($(ARCH_DATA_MODEL), 32) -- # i586 -+ ifeq ($(ARCH), alpha) -+ # alpha - REQUIRED_CC_VER = 3.2 -- REQUIRED_GCC_VER = 3.2.1* -- REQUIRED_GCC_VER_INT = 3.2.1-7a -- else -+ REQUIRED_GCC_VER = 3.2.* -+ endif - ifeq ($(ARCH), amd64) - # amd64 - REQUIRED_CC_VER = 3.2 - REQUIRED_GCC_VER = 3.2.* - endif -+ ifeq ($(ARCH), arm) -+ # arm -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.* -+ endif -+ ifeq ($(ARCH), i586) -+ # i586 -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.1* -+ REQUIRED_GCC_VER_INT = 3.2.1-7a -+ endif - ifeq ($(ARCH), ia64) - # ia64 - REQUIRED_CC_VER = 3.2 - REQUIRED_GCC_VER = 2.9[56789].* - endif -+ ifneq ("$(findstring m68k,$(ARCH))", "") -+ # m68k -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.* - endif -+ ifneq ("$(findstring mips,$(ARCH))", "") -+ # mips -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.* -+ endif -+ ifneq ("$(findstring ppc,$(ARCH))", "") -+ # ppc or ppc64 -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.* -+ endif -+ ifneq ("$(findstring s390,$(ARCH))", "") -+ # s390 or s390x -+ REQUIRED_CC_VER = 3.2 -+ REQUIRED_GCC_VER = 3.2.* -+ endif -+ ifneq ("$(findstring sparc,$(ARCH))", "") -+ # sparc or sparcv9 -+ REQUIRED_CC_VER = 4.0 -+ REQUIRED_GCC_VER = 4.0.* - endif - # Option used to create a shared library - SHARED_LIBRARY_FLAG = -shared -mimpure-text ---- openjdk/jdk/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 -+++ openjdk/jdk/make/common/shared/Platform.gmk 2008-10-15 17:13:49.000000000 +0200 -@@ -237,9 +237,40 @@ - else - # i586 is 32-bit, amd64 is 64-bit - ifndef ARCH_DATA_MODEL -+ ifeq ($(ARCH), alpha) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), amd64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), arm) -+ ARCH_DATA_MODEL=32 -+ endif - ifeq ($(ARCH), i586) - ARCH_DATA_MODEL=32 -- else -+ endif -+ ifeq ($(ARCH), ia64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), m68k) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), mips) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), mipsel) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), ppc) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), ppc64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), s390) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), s390x) - ARCH_DATA_MODEL=64 - endif - endif ---- openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h.orig 2008-10-15 17:04:19.000000000 +0200 -+++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2008-10-15 17:13:01.000000000 +0200 +diff -Nru openjdk.orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h +--- openjdk.orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2013-08-21 20:32:57.952229855 +0100 ++++ openjdk/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2015-03-31 16:43:11.850271287 +0100 @@ -33,12 +33,21 @@ #define X_LINUX 3 @@ -231,69 +306,3 @@ // ********************************** // Make sure you set X_PLATFORM and X_ARCH defines correctly. ---- openjdk/corba/make/common/Defs-linux.gmk.orig 2008-10-15 17:04:20.000000000 +0200 -+++ openjdk/corba/make/common/Defs-linux.gmk 2008-10-15 17:08:37.000000000 +0200 -@@ -92,9 +92,19 @@ - # We need this frame pointer to make it easy to walk the stacks. - # This should be the default on X86, but ia64 and amd64 may not have this - # as the default. -+CFLAGS_REQUIRED_alpha += -mieee -D_LITTLE_ENDIAN - CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_arm += -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_hppa += - CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN - CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_m68k += -+CFLAGS_REQUIRED_mips += -+CFLAGS_REQUIRED_mipsel += -D_LITTLE_ENDIAN -+CFLAGS_REQUIRED_ppc += -m32 -+CFLAGS_REQUIRED_ppc64 += -m64 -+CFLAGS_REQUIRED_s390 += -+CFLAGS_REQUIRED_s390x += -m64 - CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 - LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 - CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ---- openjdk/corba/make/common/shared/Platform.gmk.orig 2008-10-15 17:04:19.000000000 +0200 -+++ openjdk/corba/make/common/shared/Platform.gmk 2008-10-15 17:12:19.000000000 +0200 -@@ -227,9 +227,40 @@ - else - # i586 is 32-bit, amd64 is 64-bit - ifndef ARCH_DATA_MODEL -+ ifeq ($(ARCH), alpha) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), amd64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), arm) -+ ARCH_DATA_MODEL=32 -+ endif - ifeq ($(ARCH), i586) - ARCH_DATA_MODEL=32 -- else -+ endif -+ ifeq ($(ARCH), ia64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), m68k) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), mips) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), mipsel) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), ppc) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), ppc64) -+ ARCH_DATA_MODEL=64 -+ endif -+ ifeq ($(ARCH), s390) -+ ARCH_DATA_MODEL=32 -+ endif -+ ifeq ($(ARCH), s390x) - ARCH_DATA_MODEL=64 - endif - endif
--- a/patches/openjdk/6730740-pr2186-64-bit_breakage_in_6729881.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,55 +0,0 @@ -# HG changeset patch -# User chegar -# Date 1217350415 25200 -# Tue Jul 29 09:53:35 2008 -0700 -# Node ID 629fa51e0281243c7341bce37e4421a7069c72ee -# Parent 31845b0edbd16232f26c266f1f79729fb83a6975 -6730740: Fix for 6729881 has apparently broken several 64 bit tests: "Bad address" -Reviewed-by: alanb, jccollet - -diff -r 31845b0edbd1 -r 629fa51e0281 src/solaris/native/java/net/linux_close.c ---- openjdk/jdk/src/solaris/native/java/net/linux_close.c Wed Jan 21 20:57:52 2015 +0000 -+++ openjdk/jdk/src/solaris/native/java/net/linux_close.c Tue Jul 29 09:53:35 2008 -0700 -@@ -281,7 +281,9 @@ - - int NET_RecvFrom(int s, void *buf, int len, unsigned int flags, - struct sockaddr *from, int *fromlen) { -- BLOCKING_IO_RETURN_INT( s, recvfrom(s, buf, len, flags, from, (socklen_t)fromlen) ); -+ socklen_t socklen = *fromlen; -+ BLOCKING_IO_RETURN_INT( s, recvfrom(s, buf, len, flags, from, &socklen) ); -+ *fromlen = socklen; - } - - int NET_Send(int s, void *msg, int len, unsigned int flags) { -@@ -298,7 +300,9 @@ - } - - int NET_Accept(int s, struct sockaddr *addr, int *addrlen) { -- BLOCKING_IO_RETURN_INT( s, accept(s, addr, (socklen_t)addrlen) ); -+ socklen_t socklen = *addrlen; -+ BLOCKING_IO_RETURN_INT( s, accept(s, addr, &socklen) ); -+ *addrlen = socklen; - } - - int NET_Connect(int s, struct sockaddr *addr, int addrlen) { -diff -r 31845b0edbd1 -r 629fa51e0281 src/solaris/native/java/net/net_util_md.c ---- openjdk/jdk/src/solaris/native/java/net/net_util_md.c Wed Jan 21 20:57:52 2015 +0000 -+++ openjdk/jdk/src/solaris/native/java/net/net_util_md.c Tue Jul 29 09:53:35 2008 -0700 -@@ -1104,7 +1104,16 @@ - } - #endif - -- rv = getsockopt(fd, level, opt, result, (socklen_t)len); -+#ifdef __solaris__ -+ rv = getsockopt(fd, level, opt, result, len); -+#else -+ { -+ socklen_t socklen = *len; -+ rv = getsockopt(fd, level, opt, result, &socklen); -+ *len = socklen; -+ } -+#endif -+ - if (rv < 0) { - return rv; - }
--- a/patches/openjdk/7031830-pr2183-bad_record_mac_failure.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,522 +0,0 @@ -# HG changeset patch -# User wetmore -# Date 1421871245 0 -# Wed Jan 21 20:14:05 2015 +0000 -# Node ID 8b1568063cd45ed88422dd8d98f019f9971708e8 -# Parent bbff2a7acd335d23a7946a1b7eedd42946946311 -7031830: bad_record_mac failure on TLSv1.2 enabled connection with SSLEngine -Reviewed-by: xuelei, weijun, asaha - -diff -r bbff2a7acd33 -r 8b1568063cd4 src/share/classes/sun/security/ssl/CipherBox.java ---- openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java Wed Jan 21 20:02:14 2015 +0000 -+++ openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java Wed Jan 21 20:14:05 2015 +0000 -@@ -312,9 +312,11 @@ - byte[] buf = null; - int limit = bb.limit(); - if (bb.hasArray()) { -+ int arrayOffset = bb.arrayOffset(); - buf = bb.array(); -- System.arraycopy(buf, pos, -- buf, pos + prefix.length, limit - pos); -+ System.arraycopy(buf, arrayOffset + pos, -+ buf, arrayOffset + pos + prefix.length, -+ limit - pos); - bb.limit(limit + prefix.length); - } else { - buf = new byte[limit - pos]; -@@ -500,9 +502,10 @@ - byte[] buf = null; - int limit = bb.limit(); - if (bb.hasArray()) { -+ int arrayOffset = bb.arrayOffset(); - buf = bb.array(); -- System.arraycopy(buf, pos + blockSize, -- buf, pos, limit - pos - blockSize); -+ System.arraycopy(buf, arrayOffset + pos + blockSize, -+ buf, arrayOffset + pos, limit - pos - blockSize); - bb.limit(limit - blockSize); - } else { - buf = new byte[limit - pos - blockSize]; -diff -r bbff2a7acd33 -r 8b1568063cd4 test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLEngineImpl/SSLEngineBadBufferArrayAccess.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ openjdk/jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLEngineImpl/SSLEngineBadBufferArrayAccess.java Wed Jan 21 20:14:05 2015 +0000 -@@ -0,0 +1,479 @@ -+/* -+ * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * 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 7031830 -+ * @summary bad_record_mac failure on TLSv1.2 enabled connection with SSLEngine -+ * @run main/othervm SSLEngineBadBufferArrayAccess -+ * -+ * SunJSSE does not support dynamic system properties, no way to re-use -+ * system properties in samevm/agentvm mode. -+ */ -+ -+/** -+ * A SSLSocket/SSLEngine interop test case. This is not the way to -+ * code SSLEngine-based servers, but works for what we need to do here, -+ * which is to make sure that SSLEngine/SSLSockets can talk to each other. -+ * SSLEngines can use direct or indirect buffers, and different code -+ * is used to get at the buffer contents internally, so we test that here. -+ * -+ * The test creates one SSLSocket (client) and one SSLEngine (server). -+ * The SSLSocket talks to a raw ServerSocket, and the server code -+ * does the translation between byte [] and ByteBuffers that the SSLEngine -+ * can use. The "transport" layer consists of a Socket Input/OutputStream -+ * and two byte buffers for the SSLEngines: think of them -+ * as directly connected pipes. -+ * -+ * Again, this is a *very* simple example: real code will be much more -+ * involved. For example, different threading and I/O models could be -+ * used, transport mechanisms could close unexpectedly, and so on. -+ * -+ * When this application runs, notice that several messages -+ * (wrap/unwrap) pass before any application data is consumed or -+ * produced. (For more information, please see the SSL/TLS -+ * specifications.) There may several steps for a successful handshake, -+ * so it's typical to see the following series of operations: -+ * -+ * client server message -+ * ====== ====== ======= -+ * write() ... ClientHello -+ * ... unwrap() ClientHello -+ * ... wrap() ServerHello/Certificate -+ * read() ... ServerHello/Certificate -+ * write() ... ClientKeyExchange -+ * write() ... ChangeCipherSpec -+ * write() ... Finished -+ * ... unwrap() ClientKeyExchange -+ * ... unwrap() ChangeCipherSpec -+ * ... unwrap() Finished -+ * ... wrap() ChangeCipherSpec -+ * ... wrap() Finished -+ * read() ... ChangeCipherSpec -+ * read() ... Finished -+ * -+ * This particular bug had a problem where byte buffers backed by an -+ * array didn't offset correctly, and we got bad MAC errors. -+ */ -+import javax.net.ssl.*; -+import javax.net.ssl.SSLEngineResult.*; -+import java.io.*; -+import java.net.*; -+import java.security.*; -+import java.nio.*; -+ -+public class SSLEngineBadBufferArrayAccess { -+ -+ /* -+ * Enables logging of the SSL/TLS operations. -+ */ -+ private static boolean logging = true; -+ -+ /* -+ * Enables the JSSE system debugging system property: -+ * -+ * -Djavax.net.debug=all -+ * -+ * This gives a lot of low-level information about operations underway, -+ * including specific handshake messages, and might be best examined -+ * after gaining some familiarity with this application. -+ */ -+ private static boolean debug = false; -+ private SSLContext sslc; -+ private SSLEngine serverEngine; // server-side SSLEngine -+ private SSLSocket sslSocket; // client-side socket -+ private ServerSocket serverSocket; // server-side Socket, generates the... -+ private Socket socket; // server-side socket that will read -+ -+ private final byte[] serverMsg = "Hi there Client, I'm a Server".getBytes(); -+ private final byte[] clientMsg = "Hello Server, I'm a Client".getBytes(); -+ -+ private ByteBuffer serverOut; // write side of serverEngine -+ private ByteBuffer serverIn; // read side of serverEngine -+ -+ private volatile Exception clientException; -+ private volatile Exception serverException; -+ -+ /* -+ * For data transport, this example uses local ByteBuffers. -+ */ -+ private ByteBuffer cTOs; // "reliable" transport client->server -+ private ByteBuffer sTOc; // "reliable" transport server->client -+ -+ /* -+ * The following is to set up the keystores/trust material. -+ */ -+ private static final String pathToStores = "../../../../../../../etc/"; -+ private static final String keyStoreFile = "keystore"; -+ private static final String trustStoreFile = "truststore"; -+ private static final String passwd = "passphrase"; -+ private static String keyFilename = -+ System.getProperty("test.src", ".") + "/" + pathToStores -+ + "/" + keyStoreFile; -+ private static String trustFilename = -+ System.getProperty("test.src", ".") + "/" + pathToStores -+ + "/" + trustStoreFile; -+ -+ /* -+ * Main entry point for this test. -+ */ -+ public static void main(String args[]) throws Exception { -+ if (debug) { -+ System.setProperty("javax.net.debug", "all"); -+ } -+ -+ String [] protocols = new String [] { -+ "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2" }; -+ -+ for (String protocol : protocols) { -+ log("Testing " + protocol); -+ /* -+ * Run the tests with direct and indirect buffers. -+ */ -+ SSLEngineBadBufferArrayAccess test = -+ new SSLEngineBadBufferArrayAccess(protocol); -+ test.runTest(true); -+ test.runTest(false); -+ } -+ -+ System.out.println("Test Passed."); -+ } -+ -+ /* -+ * Create an initialized SSLContext to use for these tests. -+ */ -+ public SSLEngineBadBufferArrayAccess(String protocol) throws Exception { -+ -+ KeyStore ks = KeyStore.getInstance("JKS"); -+ KeyStore ts = KeyStore.getInstance("JKS"); -+ -+ char[] passphrase = "passphrase".toCharArray(); -+ -+ ks.load(new FileInputStream(keyFilename), passphrase); -+ ts.load(new FileInputStream(trustFilename), passphrase); -+ -+ KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509"); -+ kmf.init(ks, passphrase); -+ -+ TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509"); -+ tmf.init(ts); -+ -+ SSLContext sslCtx = SSLContext.getInstance(protocol); -+ -+ sslCtx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null); -+ -+ sslc = sslCtx; -+ } -+ -+ /* -+ * Run the test. -+ * -+ * Sit in a tight loop, with the server engine calling wrap/unwrap -+ * regardless of whether data is available or not. We do this until -+ * we get the application data. Then we shutdown and go to the next one. -+ * -+ * The main loop handles all of the I/O phases of the SSLEngine's -+ * lifetime: -+ * -+ * initial handshaking -+ * application data transfer -+ * engine closing -+ * -+ * One could easily separate these phases into separate -+ * sections of code. -+ */ -+ private void runTest(boolean direct) throws Exception { -+ boolean serverClose = direct; -+ -+ serverSocket = new ServerSocket(0); -+ int port = serverSocket.getLocalPort(); -+ Thread thread = createClientThread(port, serverClose); -+ -+ socket = serverSocket.accept(); -+ socket.setSoTimeout(500); -+ serverSocket.close(); -+ -+ createSSLEngine(); -+ createBuffers(direct); -+ -+ try { -+ boolean closed = false; -+ -+ InputStream is = socket.getInputStream(); -+ OutputStream os = socket.getOutputStream(); -+ -+ SSLEngineResult serverResult; // results from last operation -+ -+ /* -+ * Examining the SSLEngineResults could be much more involved, -+ * and may alter the overall flow of the application. -+ * -+ * For example, if we received a BUFFER_OVERFLOW when trying -+ * to write to the output pipe, we could reallocate a larger -+ * pipe, but instead we wait for the peer to drain it. -+ */ -+ byte[] inbound = new byte[8192]; -+ byte[] outbound = new byte[8192]; -+ -+ while (!isEngineClosed(serverEngine)) { -+ int len = 0; -+ -+ // Inbound data -+ log("================"); -+ -+ // Read from the Client side. -+ try { -+ len = is.read(inbound); -+ if (len == -1) { -+ throw new Exception("Unexpected EOF"); -+ } -+ cTOs.put(inbound, 0, len); -+ } catch (SocketTimeoutException ste) { -+ // swallow. Nothing yet, probably waiting on us. -+ } -+ -+ cTOs.flip(); -+ -+ serverResult = serverEngine.unwrap(cTOs, serverIn); -+ log("server unwrap: ", serverResult); -+ runDelegatedTasks(serverResult, serverEngine); -+ cTOs.compact(); -+ -+ // Outbound data -+ log("----"); -+ -+ serverResult = serverEngine.wrap(serverOut, sTOc); -+ log("server wrap: ", serverResult); -+ runDelegatedTasks(serverResult, serverEngine); -+ -+ sTOc.flip(); -+ -+ if ((len = sTOc.remaining()) != 0) { -+ sTOc.get(outbound, 0, len); -+ os.write(outbound, 0, len); -+ // Give the other side a chance to process -+ } -+ -+ sTOc.compact(); -+ -+ if (!closed && (serverOut.remaining() == 0)) { -+ closed = true; -+ -+ /* -+ * We'll alternate initiatating the shutdown. -+ * When the server initiates, it will take one more -+ * loop, but tests the orderly shutdown. -+ */ -+ if (serverClose) { -+ serverEngine.closeOutbound(); -+ } -+ serverIn.flip(); -+ -+ /* -+ * A sanity check to ensure we got what was sent. -+ */ -+ if (serverIn.remaining() != clientMsg.length) { -+ throw new Exception("Client: Data length error"); -+ } -+ -+ for (int i = 0; i < clientMsg.length; i++) { -+ if (clientMsg[i] != serverIn.get()) { -+ throw new Exception("Client: Data content error"); -+ } -+ } -+ serverIn.compact(); -+ } -+ } -+ return; -+ } catch (Exception e) { -+ serverException = e; -+ } finally { -+ socket.close(); -+ -+ // Wait for the client to join up with us. -+ thread.join(); -+ if (serverException != null) { -+ throw serverException; -+ } -+ if (clientException != null) { -+ throw clientException; -+ } -+ } -+ } -+ -+ /* -+ * Create a client thread which does simple SSLSocket operations. -+ * We'll write and read one data packet. -+ */ -+ private Thread createClientThread(final int port, -+ final boolean serverClose) throws Exception { -+ -+ Thread t = new Thread("ClientThread") { -+ -+ @Override -+ public void run() { -+ try { -+ Thread.sleep(1000); // Give server time to finish setup. -+ -+ sslSocket = (SSLSocket) sslc.getSocketFactory(). -+ createSocket("localhost", port); -+ OutputStream os = sslSocket.getOutputStream(); -+ InputStream is = sslSocket.getInputStream(); -+ -+ // write(byte[]) goes in one shot. -+ os.write(clientMsg); -+ -+ byte[] inbound = new byte[2048]; -+ int pos = 0; -+ -+ int len; -+done: -+ while ((len = is.read(inbound, pos, 2048 - pos)) != -1) { -+ pos += len; -+ // Let the client do the closing. -+ if ((pos == serverMsg.length) && !serverClose) { -+ sslSocket.close(); -+ break done; -+ } -+ } -+ -+ if (pos != serverMsg.length) { -+ throw new Exception("Client: Data length error"); -+ } -+ -+ for (int i = 0; i < serverMsg.length; i++) { -+ if (inbound[i] != serverMsg[i]) { -+ throw new Exception("Client: Data content error"); -+ } -+ } -+ } catch (Exception e) { -+ clientException = e; -+ } -+ } -+ }; -+ t.start(); -+ return t; -+ } -+ -+ /* -+ * Using the SSLContext created during object creation, -+ * create/configure the SSLEngines we'll use for this test. -+ */ -+ private void createSSLEngine() throws Exception { -+ /* -+ * Configure the serverEngine to act as a server in the SSL/TLS -+ * handshake. -+ */ -+ serverEngine = sslc.createSSLEngine(); -+ serverEngine.setUseClientMode(false); -+ serverEngine.getNeedClientAuth(); -+ } -+ -+ /* -+ * Create and size the buffers appropriately. -+ */ -+ private void createBuffers(boolean direct) { -+ -+ SSLSession session = serverEngine.getSession(); -+ int appBufferMax = session.getApplicationBufferSize(); -+ int netBufferMax = session.getPacketBufferSize(); -+ -+ /* -+ * We'll make the input buffers a bit bigger than the max needed -+ * size, so that unwrap()s following a successful data transfer -+ * won't generate BUFFER_OVERFLOWS. -+ * -+ * We'll use a mix of direct and indirect ByteBuffers for -+ * tutorial purposes only. In reality, only use direct -+ * ByteBuffers when they give a clear performance enhancement. -+ */ -+ if (direct) { -+ serverIn = ByteBuffer.allocateDirect(appBufferMax + 50); -+ cTOs = ByteBuffer.allocateDirect(netBufferMax); -+ sTOc = ByteBuffer.allocateDirect(netBufferMax); -+ } else { -+ serverIn = ByteBuffer.allocate(appBufferMax + 50); -+ cTOs = ByteBuffer.allocate(netBufferMax); -+ sTOc = ByteBuffer.allocate(netBufferMax); -+ } -+ -+ serverOut = ByteBuffer.wrap(serverMsg); -+ } -+ -+ /* -+ * If the result indicates that we have outstanding tasks to do, -+ * go ahead and run them in this thread. -+ */ -+ private static void runDelegatedTasks(SSLEngineResult result, -+ SSLEngine engine) throws Exception { -+ -+ if (result.getHandshakeStatus() == HandshakeStatus.NEED_TASK) { -+ Runnable runnable; -+ while ((runnable = engine.getDelegatedTask()) != null) { -+ log("\trunning delegated task..."); -+ runnable.run(); -+ } -+ HandshakeStatus hsStatus = engine.getHandshakeStatus(); -+ if (hsStatus == HandshakeStatus.NEED_TASK) { -+ throw new Exception( -+ "handshake shouldn't need additional tasks"); -+ } -+ log("\tnew HandshakeStatus: " + hsStatus); -+ } -+ } -+ -+ private static boolean isEngineClosed(SSLEngine engine) { -+ return (engine.isOutboundDone() && engine.isInboundDone()); -+ } -+ -+ /* -+ * Logging code -+ */ -+ private static boolean resultOnce = true; -+ -+ private static void log(String str, SSLEngineResult result) { -+ if (!logging) { -+ return; -+ } -+ if (resultOnce) { -+ resultOnce = false; -+ System.out.println("The format of the SSLEngineResult is: \n" -+ + "\t\"getStatus() / getHandshakeStatus()\" +\n" -+ + "\t\"bytesConsumed() / bytesProduced()\"\n"); -+ } -+ HandshakeStatus hsStatus = result.getHandshakeStatus(); -+ log(str -+ + result.getStatus() + "/" + hsStatus + ", " -+ + result.bytesConsumed() + "/" + result.bytesProduced() -+ + " bytes"); -+ if (hsStatus == HandshakeStatus.FINISHED) { -+ log("\t...ready for application data"); -+ } -+ } -+ -+ private static void log(String str) { -+ if (logging) { -+ System.out.println(str); -+ } -+ } -+}
--- a/patches/openjdk/oj51-pr2187-sync_4873188.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1421870534 0 -# Wed Jan 21 20:02:14 2015 +0000 -# Node ID bbff2a7acd335d23a7946a1b7eedd42946946311 -# Parent 7fc691671bf07fe00940e02452235f711e50112e -OPENJDK6-51: Sync patch for 4873188 with 7 version -Reviewed-by: omajid - -diff -r 7fc691671bf0 -r bbff2a7acd33 src/share/classes/sun/security/ssl/CipherBox.java ---- openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java Tue Jan 20 03:06:20 2015 +0000 -+++ openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java Wed Jan 21 20:02:14 2015 +0000 -@@ -500,10 +500,9 @@ - byte[] buf = null; - int limit = bb.limit(); - if (bb.hasArray()) { -- int arrayOffset = bb.arrayOffset(); - buf = bb.array(); -- System.arraycopy(buf, arrayOffset + pos + blockSize, -- buf, arrayOffset + pos, limit - pos - blockSize); -+ System.arraycopy(buf, pos + blockSize, -+ buf, pos, limit - pos - blockSize); - bb.limit(limit - blockSize); - } else { - buf = new byte[limit - pos - blockSize]; -diff -r 7fc691671bf0 -r bbff2a7acd33 src/share/classes/sun/security/ssl/SSLEngineImpl.java ---- openjdk/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java Tue Jan 20 03:06:20 2015 +0000 -+++ openjdk/jdk/src/share/classes/sun/security/ssl/SSLEngineImpl.java Wed Jan 21 20:02:14 2015 +0000 -@@ -1261,6 +1261,14 @@ - writer.writeRecord(eor, ea, writeMAC, writeCipher); - - /* -+ * turn off the flag of the first application record if we really -+ * consumed at least byte. -+ */ -+ if (isFirstAppOutputRecord && ea.deltaApp() > 0) { -+ isFirstAppOutputRecord = false; -+ } -+ -+ /* - * We only need to check the sequence number state for - * non-handshaking record. - * -@@ -1279,14 +1287,6 @@ - } - } - -- /* -- * turn off the flag of the first application record if we really -- * consumed at least byte. -- */ -- if (isFirstAppOutputRecord && ea.deltaApp() > 0) { -- isFirstAppOutputRecord = false; -- } -- - return hsStatus; - } -
--- a/patches/openjdk/oj52-pr2185-no_serbia_montenegro.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1421873872 0 -# Wed Jan 21 20:57:52 2015 +0000 -# Node ID 31845b0edbd16232f26c266f1f79729fb83a6975 -# Parent 41b13b19b58f4945f18828e8a7ecf35c3a12a596 -OPENJDK6-52: Application of 6786276 introduces compatibility issue -Summary: Add back ISO-3166 code CS and adjust LocaleTest to account for the extra country. -Reviewed-by: omajid - -diff -r 41b13b19b58f -r 31845b0edbd1 src/share/classes/java/util/LocaleISOData.java ---- openjdk/jdk/src/share/classes/java/util/LocaleISOData.java Wed Jan 21 20:27:18 2015 +0000 -+++ openjdk/jdk/src/share/classes/java/util/LocaleISOData.java Wed Jan 21 20:57:52 2015 +0000 -@@ -275,7 +275,7 @@ - + "CN" + "CHN" // China, People's Republic of - + "CO" + "COL" // Colombia, Republic of - + "CR" + "CRI" // Costa Rica, Republic of --// + "CS" + "SCG" // Serbia and Montenegro -+ + "CS" + "SCG" // Serbia and Montenegro - + "CU" + "CUB" // Cuba, Republic of - + "CV" + "CPV" // Cape Verde, Republic of - + "CW" + "CUW" // Cura\u00e7ao -diff -r 41b13b19b58f -r 31845b0edbd1 test/java/util/Locale/Bug6786276.java ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ openjdk/jdk/test/java/util/Locale/Bug6786276.java Wed Jan 21 20:57:52 2015 +0000 -@@ -0,0 +1,47 @@ -+/* -+ * Copyright 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 6786276 -+ * @summary Verify that the ISO-3166 code for Serbia & Montenegro is still present -+ */ -+ -+import java.util.Arrays; -+import java.util.Locale; -+ -+public class Bug6786276 -+{ -+ public static void main(String[] args) -+ { -+ String[] localeCodes = Locale.getISOCountries(); -+ System.err.println("Locale codes: " + Arrays.toString(localeCodes)); -+ int serbiaMontenegro = Arrays.binarySearch(localeCodes, "CS"); -+ if (serbiaMontenegro >= 0) { -+ System.out.println("Serbia & Montenegro ISO code present, index " -+ + serbiaMontenegro); -+ } else { -+ System.out.println("Serbia & Montenegro ISO code not present"); -+ throw new RuntimeException("Serbia & Montenegro ISO code not present."); -+ } -+ } -+}
--- a/patches/openjdk/oj53-pr2181-strict_aliasing_on_ppc32.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,25 +0,0 @@ -diff -Nru openjdk.orig/jdk/make/common/Defs-linux.gmk openjdk/jdk/make/common/Defs-linux.gmk ---- openjdk.orig/jdk/make/common/Defs-linux.gmk 2015-01-21 21:25:32.000282631 +0000 -+++ openjdk/jdk/make/common/Defs-linux.gmk 2015-01-21 21:27:09.061441927 +0000 -@@ -115,7 +115,7 @@ - CFLAGS_REQUIRED_m68k += - CFLAGS_REQUIRED_mips += - CFLAGS_REQUIRED_mipsel += -D_LITTLE_ENDIAN --CFLAGS_REQUIRED_ppc += -m32 -+CFLAGS_REQUIRED_ppc += -m32 -fsigned-char -D_BIG_ENDIAN - CFLAGS_REQUIRED_ppc64 += -m64 - CFLAGS_REQUIRED_s390 += - CFLAGS_REQUIRED_s390x += -m64 -@@ -160,11 +160,7 @@ - # - # Misc compiler options - # --ifeq ($(ARCH),ppc) -- CFLAGS_COMMON = -fsigned-char --else # ARCH -- CFLAGS_COMMON = -fno-strict-aliasing --endif # ARCH -+CFLAGS_COMMON = -fno-strict-aliasing - PIC_CODE_LARGE = -fPIC - PIC_CODE_SMALL = -fpic - GLOBAL_KPIC = $(PIC_CODE_LARGE)
--- a/patches/openjdk/oj54-pr2182-6911104_reintroduces_test_fragment.patch Sun Jan 25 20:35:44 2015 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -diff -r 7fc691671bf0 test/sun/tools/common/CommonSetup.sh ---- openjdk/jdk/test/sun/tools/common/CommonSetup.sh Tue Jan 20 03:06:20 2015 +0000 -+++ openjdk/jdk/test/sun/tools/common/CommonSetup.sh Wed Jan 21 01:23:27 2015 +0000 -@@ -111,11 +111,6 @@ - PS=";" - isWindows=true - ;; -- CYGWIN* ) -- PS=";" -- OS="Windows" -- isCygwin=true -- ;; - * ) - isUnknownOS=true - ;;