From 2692550df951656b3e82379974b591570cafdd68 Mon Sep 17 00:00:00 2001 From: Jan Palus Date: Sun, 30 Aug 2020 18:07:01 +0200 Subject: [PATCH] up to 9.0.4.12 - -fcommon to fix build with gcc10 - -fno-tree-dse to fix crashing java built with newer gcc (based on Fedora flags but narrowed down to single flag) - disabled javac server (causes random build failures such as JDK-8201183) - adjusted x32 patch (untested) - fix for build on aarch64 (JDK-8224851) --- CompileDemos.patch | 19 -- aarch64.patch | 12 + adjust-mflags.patch | 12 - download.sh | 32 --- format_strings.patch | 22 -- gcc6.patch | 118 ---------- libpath.patch | 21 +- make-4.3.patch | 34 +++ openjdk8.spec => openjdk9.spec | 400 ++++++++++++--------------------- protos.patch | 24 -- system-lcms.patch | 102 --------- system-libjpeg.patch | 364 ------------------------------ system-libpng.patch | 115 ---------- system-pcsclite.patch | 186 --------------- x32.patch | 122 +++++----- 15 files changed, 254 insertions(+), 1329 deletions(-) delete mode 100644 CompileDemos.patch create mode 100644 aarch64.patch delete mode 100644 adjust-mflags.patch delete mode 100755 download.sh delete mode 100644 format_strings.patch delete mode 100644 gcc6.patch create mode 100644 make-4.3.patch rename openjdk8.spec => openjdk9.spec (67%) delete mode 100644 protos.patch delete mode 100644 system-lcms.patch delete mode 100644 system-libjpeg.patch delete mode 100644 system-libpng.patch delete mode 100644 system-pcsclite.patch diff --git a/CompileDemos.patch b/CompileDemos.patch deleted file mode 100644 index dcf138c..0000000 --- a/CompileDemos.patch +++ /dev/null @@ -1,19 +0,0 @@ -http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2015-June/032544.html - -diff -dur -x '*~' -x '*.orig' -x '*.rej' jdk8u-jdk8u92-b31.orig/jdk/make/CompileDemos.gmk jdk8u-jdk8u92-b31/jdk/make/CompileDemos.gmk ---- jdk8u-jdk8u92-b31.orig/jdk/make/CompileDemos.gmk 2016-04-06 07:27:01.000000000 +0200 -+++ jdk8u-jdk8u92-b31/jdk/make/CompileDemos.gmk 2016-07-29 09:37:19.000000000 +0200 -@@ -246,12 +246,12 @@ - -I$(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_INC) $3 - - # Remove the -incremental:no setting to get .ilk-files like in the old build. -+ BUILD_DEMO_JVMTI_$1_LDFLAGS := $(filter-out -incremental:no -opt:ref, $$(LDFLAGS_JDKLIB)) - $$(eval $$(call SetupNativeCompilation,BUILD_DEMO_JVMTI_$1, \ - SRC := $(JDK_TOPDIR)/src/share/demo/jvmti/$1 $$(BUILD_DEMO_JVMTI_$1_EXTRA_SRC), \ - LANG := $$(BUILD_DEMO_JVMTI_$1_LANG), \ - OPTIMIZATION := LOW, \ - CXXFLAGS := $$($1_CXXFLAGS), \ -- LDFLAGS := $(filter-out -incremental:no -opt:ref, $$(LDFLAGS_JDKLIB)), \ - LDFLAGS_macosx := $$(call SET_EXECUTABLE_ORIGIN), \ - LDFLAGS_SUFFIX := $$($1_EXTRA_CXX), \ - LDFLAGS_SUFFIX_posix := $5, \ diff --git a/aarch64.patch b/aarch64.patch new file mode 100644 index 0000000..5e22a1e --- /dev/null +++ b/aarch64.patch @@ -0,0 +1,12 @@ +diff -r 6721e038257a -r 15cc1c8a6371 hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp +--- a/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Thu Dec 13 01:15:21 2018 +0000 ++++ b/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Tue Feb 04 04:42:57 2020 +0000 +@@ -38,8 +38,6 @@ + protected: + + protected: +- using MacroAssembler::call_VM_leaf_base; +- + // Interpreter specific version of call_VM_base + using MacroAssembler::call_VM_leaf_base; + diff --git a/adjust-mflags.patch b/adjust-mflags.patch deleted file mode 100644 index 665e824..0000000 --- a/adjust-mflags.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -dur -x '*~' -x '*.rej' -x '*.orig' jdk8u-jdk8u66-b02/hotspot.orig/make/linux/makefiles/adjust-mflags.sh jdk8u-jdk8u66-b02/hotspot/make/linux/makefiles/adjust-mflags.sh ---- jdk8u-jdk8u66-b02/hotspot.orig/make/linux/makefiles/adjust-mflags.sh 2015-07-22 19:12:56.000000000 +0200 -+++ jdk8u-jdk8u66-b02/hotspot/make/linux/makefiles/adjust-mflags.sh 2015-09-18 09:07:14.000000000 +0200 -@@ -64,7 +64,7 @@ - echo "$MFLAGS" \ - | sed ' - s/^-/ -/ -- s/ -\([^ I][^ I]*\)j/ -\1 -j/ -+ s/ -\([^ I][^ I]*\)j\([0-9][0-9]*\)/ -\1 -j\2/ - s/ -j[0-9][0-9]*/ -j/ - s/ -j\([^ ]\)/ -j -\1/ - s/ -j/ -j'${HOTSPOT_BUILD_JOBS:-${default_build_jobs}}'/ diff --git a/download.sh b/download.sh deleted file mode 100755 index da27b2a..0000000 --- a/download.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh -e - -tag="$1" - -if [ -z "$tag" -a -x /usr/bin/rpm-specdump ] ; then - version=$(rpm-specdump openjdk8.spec | awk '/^h PACKAGE_VERSION/ { sub(/.b/, "-b", $3); print $3 }') - if [ -n "$version" ] ; then - tag="jdk$version" - echo "Using spec version: $tag" - fi -fi - - -if [ -z "$tag" -o "${tag#jdk8}" = "${tag}" ] ; then - echo "Usage:" >&2 - echo " $0 " >&2 - echo "e.g:" >&2 - echo " $0 jdk8u66-b02" >&2 - exit 1 -fi - -if [ "${tag#jdk8u}" != "${tag}" ] ; then - repo="jdk8u" -else - repo="jdk8" -fi - -curl -o "openjdk8-${tag}.tar.bz2" "http://hg.openjdk.java.net/$repo/$repo/archive/${tag}.tar.bz2" - -for component in corba hotspot jaxp jaxws jdk langtools nashorn ; do - curl -o "openjdk8-${component}-${tag}.tar.bz2" "http://hg.openjdk.java.net/$repo/$repo/${component}/archive/${tag}.tar.bz2" -done diff --git a/format_strings.patch b/format_strings.patch deleted file mode 100644 index 124f47a..0000000 --- a/format_strings.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- jdk8-jdk8-b132/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp.orig 2015-09-17 14:58:44.000000000 +0200 -+++ jdk8-jdk8-b132/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp 2015-09-17 14:59:36.000000000 +0200 -@@ -81,7 +81,7 @@ - int assert_failed(const char* p) { - char message[1<<12]; - sprintf(message, "@assert failed: %s\n", p); -- fprintf(stdout, 1+message); -+ fputs(1+message, stdout); - breakpoint(); - unpack_abort(message); - return 0; ---- jdk8-jdk8-b132/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp.orig 2015-09-17 14:57:57.000000000 +0200 -+++ jdk8-jdk8-b132/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp 2015-09-17 15:01:09.000000000 +0200 -@@ -3712,7 +3712,7 @@ - default: - if (nrefs == 0) { - buf = getbuf(20); -- sprintf((char*)buf.ptr, TAG_NAME[tag]); -+ strcpy((char*)buf.ptr, TAG_NAME[tag]); - } else if (nrefs == 1) { - return refs[0]->string(); - } else { diff --git a/gcc6.patch b/gcc6.patch deleted file mode 100644 index ec832a5..0000000 --- a/gcc6.patch +++ /dev/null @@ -1,118 +0,0 @@ -diff -r 86030362b0c5 common/autoconf/hotspot-spec.gmk.in ---- openjdk/common/autoconf/hotspot-spec.gmk.in Mon Feb 29 06:45:20 2016 +0000 -+++ openjdk/common/autoconf/hotspot-spec.gmk.in Fri Mar 11 18:01:42 2016 +0000 -@@ -109,7 +109,7 @@ - MT:=@HOTSPOT_MT@ - RC:=@HOTSPOT_RC@ - --EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ -+EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ $(NO_NULL_POINTER_CHECK_FLAG) $(NO_LIFETIME_DSE_CFLAG) $(CXXSTD_CXXFLAG) - EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@ - EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@ - -diff -r 86030362b0c5 common/autoconf/spec.gmk.in ---- openjdk/common/autoconf/spec.gmk.in Mon Feb 29 06:45:20 2016 +0000 -+++ openjdk/common/autoconf/spec.gmk.in Fri Mar 11 18:01:42 2016 +0000 -@@ -320,6 +320,10 @@ - C_FLAG_DEPS:=@C_FLAG_DEPS@ - CXX_FLAG_DEPS:=@CXX_FLAG_DEPS@ - -+NO_NULL_POINTER_CHECK_FLAG=@NO_NULL_POINTER_CHECK_CFLAG@ -+NO_LIFETIME_DSE_CFLAG=@NO_LIFETIME_DSE_CFLAG@ -+CXXSTD_CXXFLAG=@CXXSTD_CXXFLAG@ -+ - # Tools that potentially need to be cross compilation aware. - CC:=@FIXPATH@ @CCACHE@ @CC@ - -diff -r 86030362b0c5 common/autoconf/toolchain.m4 ---- openjdk/common/autoconf/toolchain.m4 Mon Feb 29 06:45:20 2016 +0000 -+++ openjdk/common/autoconf/toolchain.m4 Fri Mar 11 18:01:42 2016 +0000 -@@ -784,6 +784,10 @@ - CFLAGS_DEBUG_SYMBOLS="-g1" - CXXFLAGS_DEBUG_SYMBOLS="-g1" - fi -+ CXXSTD_CXXFLAG="-std=gnu++98" -+ TOOLCHAIN_CXX_COMPILER_CHECK_ARGUMENTS([$CXXSTD_CXXFLAG -Werror], [], [CXXSTD_CXXFLAG=""]) -+ CXXFLAGS_JDK="${CXXFLAGS_JDK} ${CXXSTD_CXXFLAG}" -+ AC_SUBST([CXXSTD_CXXFLAG]) - ;; - ossc ) - # -@@ -973,6 +977,16 @@ - CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing" - ;; - esac -+ # These flags are required for GCC 6 builds but may not be available on earlier versions -+ NO_NULL_POINTER_CHECK_CFLAG="-fno-delete-null-pointer-checks" -+ TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([$NO_NULL_POINTER_CHECK_CFLAG -Werror], [], -+ [NO_NULL_POINTER_CHECK_CFLAG=""]) -+ AC_SUBST([NO_NULL_POINTER_CHECK_CFLAG]) -+ NO_LIFETIME_DSE_CFLAG="-fno-lifetime-dse" -+ TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([$NO_LIFETIME_DSE_CFLAG -Werror], [], -+ [NO_LIFETIME_DSE_CFLAG=""]) -+ CFLAGS_JDK="${CFLAGS_JDK} ${NO_NULL_POINTER_CHECK_CFLAG} ${NO_LIFETIME_DSE_CFLAG}" -+ AC_SUBST([NO_LIFETIME_DSE_CFLAG]) - ;; - ossc ) - CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -DTRACING -DMACRO_MEMSYS_OPS -DBREAKPTS" -@@ -1200,9 +1214,9 @@ - # [RUN-IF-FALSE]) - # ------------------------------------------------------------ - # Check that the c and c++ compilers support an argument --AC_DEFUN([TOOLCHAIN_COMPILER_CHECK_ARGUMENTS], -+AC_DEFUN([TOOLCHAIN_C_COMPILER_CHECK_ARGUMENTS], - [ -- AC_MSG_CHECKING([if compiler supports "$1"]) -+ AC_MSG_CHECKING([if the C compiler supports "$1"]) - supports=yes - - saved_cflags="$CFLAGS" -@@ -1213,6 +1227,19 @@ - AC_LANG_POP([C]) - CFLAGS="$saved_cflags" - -+ AC_MSG_RESULT([$supports]) -+ if test "x$supports" = "xyes" ; then -+ m4_ifval([$2], [$2], [:]) -+ else -+ m4_ifval([$3], [$3], [:]) -+ fi -+]) -+ -+AC_DEFUN([TOOLCHAIN_CXX_COMPILER_CHECK_ARGUMENTS], -+[ -+ AC_MSG_CHECKING([if the C++ compiler supports "$1"]) -+ supports=yes -+ - saved_cxxflags="$CXXFLAGS" - CXXFLAGS="$CXXFLAG $1" - AC_LANG_PUSH([C++]) -@@ -1220,7 +1247,28 @@ - [supports=no]) - AC_LANG_POP([C++]) - CXXFLAGS="$saved_cxxflags" -+ -+ AC_MSG_RESULT([$supports]) -+ if test "x$supports" = "xyes" ; then -+ m4_ifval([$2], [$2], [:]) -+ else -+ m4_ifval([$3], [$3], [:]) -+ fi -+]) - -+# TOOLCHAIN_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [ARGUMENT], IF_TRUE: [RUN-IF-TRUE], -+# IF_FALSE: [RUN-IF-FALSE]) -+# ------------------------------------------------------------ -+# Check that the c and c++ compilers support an argument -+AC_DEFUN([TOOLCHAIN_COMPILER_CHECK_ARGUMENTS], -+[ -+ TOOLCHAIN_C_COMPILER_CHECK_ARGUMENTS([$1], [C_COMP_SUPPORTS="yes"], [C_COMP_SUPPORTS="no"]) -+ TOOLCHAIN_CXX_COMPILER_CHECK_ARGUMENTS([$1], [CXX_COMP_SUPPORTS="yes"], [CXX_COMP_SUPPORTS="no"]) -+ -+ AC_MSG_CHECKING([if both compilers support "$1"]) -+ supports=no -+ if test "x$C_COMP_SUPPORTS" = "xyes" -a "x$CXX_COMP_SUPPORTS" = "xyes"; then supports=yes; fi -+ - AC_MSG_RESULT([$supports]) - if test "x$supports" = "xyes" ; then - m4_ifval([$2], [$2], [:]) diff --git a/libpath.patch b/libpath.patch index a9d217c..c795998 100644 --- a/libpath.patch +++ b/libpath.patch @@ -1,15 +1,14 @@ -diff -dur -x '*~' -x '*.orig' -x '*.rej' jdk8u-jdk8u66-b02.orig/hotspot/src/os/linux/vm/os_linux.cpp jdk8u-jdk8u66-b02/hotspot/src/os/linux/vm/os_linux.cpp ---- jdk8u-jdk8u66-b02.orig/hotspot/src/os/linux/vm/os_linux.cpp 2015-07-22 19:12:56.000000000 +0200 -+++ jdk8u-jdk8u66-b02/hotspot/src/os/linux/vm/os_linux.cpp 2015-09-18 12:54:54.000000000 +0200 -@@ -309,9 +309,9 @@ - // ... - // 7: The default directories, normally /lib and /usr/lib. - #if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390)) --#define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib" -+#define DEFAULT_LIBPATH "/usr/lib64/java:/usr/lib64:/lib64:/lib:/usr/lib" +--- jdk9u-jdk-9.0.4+12/hotspot/src/os/linux/vm/os_linux.cpp.orig 2020-08-16 13:46:08.240275890 +0200 ++++ jdk9u-jdk-9.0.4+12/hotspot/src/os/linux/vm/os_linux.cpp 2020-08-16 13:47:54.932632691 +0200 +@@ -289,9 +289,9 @@ + // ... + // 7: The default directories, normally /lib and /usr/lib. + #if defined(AMD64) || (defined(_LP64) && defined(SPARC)) || defined(PPC64) || defined(S390) +- #define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib" ++ #define DEFAULT_LIBPATH "/usr/lib64/java:/usr/lib64:/lib64:/lib:/usr/lib" #else --#define DEFAULT_LIBPATH "/lib:/usr/lib" -+#define DEFAULT_LIBPATH "/usr/lib/java:/lib:/usr/lib" +- #define DEFAULT_LIBPATH "/lib:/usr/lib" ++ #define DEFAULT_LIBPATH "/usr/lib/java:/lib:/usr/lib" #endif // Base path of extensions installed on the system. diff --git a/make-4.3.patch b/make-4.3.patch new file mode 100644 index 0000000..742c753 --- /dev/null +++ b/make-4.3.patch @@ -0,0 +1,34 @@ + +# HG changeset patch +# User ihse +# Date 1580378910 -3600 +# Node ID 0a3f080b7f94e194efd98e45a11ac847d5b3291a +# Parent f6ebf6148ff0ca648ea0574469091d481dd965d0 +8237879: make 4.3 breaks build +Reviewed-by: erikj, tbell + +diff -r f6ebf6148ff0 -r 0a3f080b7f94 make/common/MakeBase.gmk +--- a/make/common/MakeBase.gmk Mon Feb 03 09:39:39 2020 +0100 ++++ b/make/common/MakeBase.gmk Thu Jan 30 11:08:30 2020 +0100 +@@ -1036,15 +1036,16 @@ + # Param 2 - (optional) name of file to store value in + DependOnVariableHelper = \ + $(strip \ +- $(eval -include $(call DependOnVariableFileName, $1, $2)) \ ++ $(eval $1_filename := $(call DependOnVariableFileName, $1, $2)) \ ++ $(if $(wildcard $($1_filename)), $(eval include $($1_filename))) \ + $(if $(call equals, $(strip $($1)), $(strip $($1_old))),,\ +- $(call MakeDir, $(dir $(call DependOnVariableFileName, $1, $2))) \ ++ $(call MakeDir, $(dir $($1_filename))) \ + $(if $(findstring $(LOG_LEVEL), trace), \ + $(info NewVariable $1: >$(strip $($1))<) \ + $(info OldVariable $1: >$(strip $($1_old))<)) \ + $(call WriteFile, $1_old:=$(call DoubleDollar,$(call EscapeHash,$($1))), \ +- $(call DependOnVariableFileName, $1, $2))) \ +- $(call DependOnVariableFileName, $1, $2) \ ++ $($1_filename))) \ ++ $($1_filename) \ + ) + + # Main macro + diff --git a/openjdk8.spec b/openjdk9.spec similarity index 67% rename from openjdk8.spec rename to openjdk9.spec index aaf455c..407bb68 100644 --- a/openjdk8.spec +++ b/openjdk9.spec @@ -1,64 +1,53 @@ -# -# NOTE: versioning and release status might not be clear -# http://openjdk.java.net/projects/jdk8u/ gives some information -# about current status of the 'updates' -# -# TODO: -# - use other system libs (libsctp?) -# - include icedtea-sound? -# - consider zeroshark (LLVM-based JIT) for x32 - -%bcond_with bootstrap # build a bootstrap version, using icedtea6 -%bcond_without cacerts # don't include the default CA certificates +%bcond_with bootstrap # build a bootstrap version, using icedtea6 +%bcond_without cacerts # don't include the default CA certificates %if %{with bootstrap} -%define use_jdk icedtea7 +%define use_jdk icedtea8 %else -%define use_jdk openjdk8 +%define use_jdk openjdk9 +%endif + +%ifarch %{x8664} +%define with_aot 1 %endif # class data version seen with file(1) that this jvm is able to load -%define _classdataversion 52.0 +%define _classdataversion 53.0 + +%define ver_u 9.0.4 +%define ver_b 12 + # JDK/JRE version, as returned with `java -version`, '_' replaced with '.' -%define _jdkversion 1.8.0.internal +%define _jdkversion %{ver_u} -%define ver_u 102 -%define ver_b 14 Summary: Open-source implementation of the Java Platform, Standard Edition -Summary(pl.UTF-8): Wolnoźródłowa implementacja Java 8 SE -Name: openjdk8 -Version: 8u%{ver_u}.b%{ver_b} -Release: 2 +Summary(pl.UTF-8): Wolnoźródłowa implementacja Java 9 SE +Name: openjdk9 +Version: %{ver_u}.%{ver_b} +Release: 1 License: GPL v2 Group: Development/Languages/Java -Source0: %{name}-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source0-md5: 04ecdce899eb3d6de9d5aadc438998c0 -Source1: %{name}-corba-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source1-md5: 6ea4a074a80d0ee4b6dcd50398835c49 -Source2: %{name}-hotspot-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source2-md5: 27b9e7e94fc6a47f452e8a94ba156395 -Source3: %{name}-jaxp-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source3-md5: da82a91df3eb4c98ebaab4e71cbbcc4d -Source4: %{name}-jaxws-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source4-md5: 8a91561bbc04f50a92032d82b78960e0 -Source5: %{name}-jdk-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source5-md5: e65f6d029808a8b523e07d818c8ac9ad -Source6: %{name}-langtools-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source6-md5: 61c645dbacfb925944f716ec50474821 -Source7: %{name}-nashorn-jdk8u%{ver_u}-b%{ver_b}.tar.bz2 -# Source7-md5: 2c981235c1cbaba58197fd9b7ffd00e1 +Source0: https://hg.openjdk.java.net/jdk-updates/jdk9u/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-%{version}.tar.bz2 +# Source0-md5: f71280d31603efeffdadea56fab8436e +Source1: https://hg.openjdk.java.net/jdk-updates/jdk9u/corba/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-corba-%{version}.tar.bz2 +# Source1-md5: 2bc0a490f71eaa17fcae9387b354ccfd +Source2: https://hg.openjdk.java.net/jdk-updates/jdk9u/hotspot/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-hotspot-%{version}.tar.bz2 +# Source2-md5: 37ff0144a673417c793d282d12aba6a1 +Source3: https://hg.openjdk.java.net/jdk-updates/jdk9u/jaxp/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-jaxp-%{version}.tar.bz2 +# Source3-md5: c6c4ee8ef80f10fc4fbc9d151436c89a +Source4: https://hg.openjdk.java.net/jdk-updates/jdk9u/jaxws/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-jaxws-%{version}.tar.bz2 +# Source4-md5: 3cf0375c3bba7d028c8408e41bbbb352 +Source5: https://hg.openjdk.java.net/jdk-updates/jdk9u/jdk/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-jdk-%{version}.tar.bz2 +# Source5-md5: 74d33ad39f5b67596c5269585811cfab +Source6: https://hg.openjdk.java.net/jdk-updates/jdk9u/langtools/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-langtools-%{version}.tar.bz2 +# Source6-md5: 95d7011a050602218b5400c632339e2c +Source7: https://hg.openjdk.java.net/jdk-updates/jdk9u/nashorn/archive/jdk-%{ver_u}+%{ver_b}.tar.bz2?/%{name}-nashorn-%{version}.tar.bz2 +# Source7-md5: 5fbaceceb82449806263ba99188b7139 Source10: make-cacerts.sh -Patch0: adjust-mflags.patch -Patch1: format_strings.patch -Patch2: CompileDemos.patch -Patch3: libpath.patch -Patch4: system-libjpeg.patch -Patch5: system-libpng.patch -Patch6: system-lcms.patch -Patch7: system-pcsclite.patch -Patch8: x32.patch -Patch9: protos.patch -Patch10: gcc6.patch +Patch0: libpath.patch +Patch1: make-4.3.patch +Patch2: x32.patch +Patch3: aarch64.patch URL: http://openjdk.java.net/ BuildRequires: /usr/bin/jar BuildRequires: alsa-lib-devel @@ -67,6 +56,7 @@ BuildRequires: autoconf BuildRequires: bash %{?with_cacerts:BuildRequires: ca-certificates-update} BuildRequires: cups-devel +BuildRequires: elfutils-devel BuildRequires: freetype-devel >= 2.3 BuildRequires: gawk BuildRequires: giflib-devel >= 5.1 @@ -121,23 +111,14 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define dstreldir %{name}-%{version} %define dstdir %{_jvmdir}/%{dstreldir} -%define jrereldir %{dstreldir}/jre -%define jredir %{_jvmdir}/%{jrereldir} %define jvmjardir %{_jvmjardir}/%{name}-%{version} -%ifarch %{x8664} -%define jre_arch amd64 -%endif -%ifarch %{ix86} -%define jre_arch i386 -%endif -%ifarch x32 -%define jre_arch x32 -%endif - # to break artificial subpackage dependency loops %define _noautoreq 'libmawt.so' java\\\\(ClassDataVersion\\\\) +# openjdk build system handles _FORTIFY_SOURCE internally +%undefine _fortify_cflags + %description Open-source implementation of the Java Platform, Standard Edition. @@ -189,7 +170,7 @@ Summary: OpenJDK - software development kit Summary(pl.UTF-8): Kod OpenJDK - środowisko programistyczne Group: Development/Languages/Java Requires: %{name}-jre-base = %{version}-%{release} -Requires: jpackage-utils >= 0:1.7.5-7 +Requires: jpackage-utils >= 0:1.7.5-8 Provides: jdk(%{name}) %description jdk-base @@ -272,7 +253,7 @@ wolnego oprogramowania. Summary: OpenJDK - runtime environment Summary(pl.UTF-8): OpenJDK - środowisko uruchomieniowe Group: Development/Languages/Java -Requires: jpackage-utils >= 0:1.7.5-7 +Requires: jpackage-utils >= 0:1.7.5-8 Provides: jre(%{name}) %description jre-base @@ -410,23 +391,18 @@ Code examples for OpenJDK. Przykłady dla OpenJDK. %prep -%setup -qn jdk8u-jdk8u%{ver_u}-b%{ver_b} -a1 -a2 -a3 -a4 -a5 -a6 -a7 +%setup -qn jdk9u-jdk-%{ver_u}+%{ver_b} -a1 -a2 -a3 -a4 -a5 -a6 -a7 -for d in *-jdk8u*-b* ; do - mv "$d" "${d%%-jdk8u*-b*}" +for d in *-jdk-%{ver_u}+%{ver_b}* ; do + mv "$d" "${d%%-jdk-%{ver_u}+%{ver_b}}" done %patch0 -p1 %patch1 -p1 %patch2 -p1 +%ifarch aarch64 %patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 +%endif %build # Make sure we have /proc mounted - otherwise idlc will fail later. @@ -442,10 +418,6 @@ cd ../.. mkdir -p build-bin -# use the specified %%use_jdk -export JAVA_HOME=%{java_home} -export PATH="$JAVA_HOME/bin:$PATH" - # unset CLASSPATH to be safe, gnustep puts garbage there, which openjdk hates unset CLASSPATH @@ -458,16 +430,23 @@ chmod a+x configure %ifarch x32 --with-jvm-variants=zero \ %endif - --with-extra-cflags="%{rpmcflags} -Wno-error=deprecated-declarations" \ - --with-extra-cxxflags="%{rpmcxxflags} -Wno-error=deprecated-declarations" \ + --with-boot-jdk="%{java_home}" \ + --with-extra-cflags="%{rpmcppflags} %{rpmcflags} -fcommon -fno-tree-dse" \ + --with-extra-cxxflags="%{rpmcppflags} %{rpmcxxflags} -fcommon -fno-tree-dse" \ --with-extra-ldflags="%{rpmldflags}" \ - --disable-debug-symbols \ + --with-native-debug-symbols=none \ + --disable-javac-server \ + --disable-hotspot-gtest \ + --disable-warnings-as-errors \ + --with-jobs="%{__jobs}" \ --with-giflib=system \ --with-libjpeg=system \ --with-libpng=system \ --with-lcms=system \ - --with-libpcsclite=system \ - --with-zlib=system + --with-zlib=system \ + --with-version-pre="" \ + --with-version-opt="" \ + --with-version-build="%{release}" specdir="$(dirname build/*-release/spec.gmk)" cat > $specdir/custom-spec.gmk < /dev/null; then - ln -sf "../jre/bin/$filename" "$path" - ln -sf "%{jredir}/bin/$filename" $RPM_BUILD_ROOT%{_bindir} - else - ln -sf "%{dstdir}/bin/$filename" $RPM_BUILD_ROOT%{_bindir} - fi + ln -sf "%{dstdir}/bin/$filename" $RPM_BUILD_ROOT%{_bindir} done -ln -sf ../jre/lib/jexec $RPM_BUILD_ROOT%{dstdir}/lib/jexec # keep configuration in %{_sysconfdir} (not all *.properties go there) -for config in management security content-types.properties \ +for config in management security \ logging.properties net.properties sound.properties; do - mv $RPM_BUILD_ROOT%{jredir}/lib/$config $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/$config - ln -s %{_sysconfdir}/%{name}/$config $RPM_BUILD_ROOT%{jredir}/lib/$config + mv $RPM_BUILD_ROOT%{dstdir}/conf/$config $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/$config + ln -s %{_sysconfdir}/%{name}/$config $RPM_BUILD_ROOT%{dstdir}/conf/$config done -ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jsse.jar -ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jcert.jar -ln -sf %{jredir}/lib/jsse.jar $RPM_BUILD_ROOT%{jvmjardir}/jnet.jar -ln -sf %{jredir}/lib/jce.jar $RPM_BUILD_ROOT%{jvmjardir}/jce.jar -for f in jndi jndi-ldap jndi-cos jndi-rmi jaas jdbc-stdext jdbc-stdext-3.0 \ - sasl jaxp_parser_impl jaxp_transform_impl jaxp jmx activation xml-commons-apis \ - jndi-dns jndi-rmi; do - ln -sf %{jredir}/lib/rt.jar $RPM_BUILD_ROOT%{jvmjardir}/$f.jar -done - -# some apps (like opera) looks for it in different place -ln -s server/libjvm.so $RPM_BUILD_ROOT%{jredir}/lib/%{jre_arch}/libjvm.so - -%{__rm} $RPM_BUILD_ROOT%{dstdir}/{,jre/}{ASSEMBLY_EXCEPTION,LICENSE,THIRD_PARTY_README} - %{?with_cacerts:install cacerts $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/security} %clean @@ -559,14 +517,11 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc THIRD_PARTY_README ASSEMBLY_EXCEPTION %files jdk %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/extcheck -%attr(755,root,root) %{_bindir}/idlj +%{?with_aot:%attr(755,root,root) %{_bindir}/jaotc} %attr(755,root,root) %{_bindir}/jarsigner -%attr(755,root,root) %{_bindir}/java-rmi.cgi %attr(755,root,root) %{_bindir}/javac %attr(755,root,root) %{_bindir}/javadoc %attr(755,root,root) %{_bindir}/javah @@ -574,17 +529,19 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/jcmd %attr(755,root,root) %{_bindir}/jconsole %attr(755,root,root) %{_bindir}/jdb +%attr(755,root,root) %{_bindir}/jdeprscan %attr(755,root,root) %{_bindir}/jdeps -%attr(755,root,root) %{_bindir}/jhat +%attr(755,root,root) %{_bindir}/jhsdb +%attr(755,root,root) %{_bindir}/jimage %attr(755,root,root) %{_bindir}/jinfo +%attr(755,root,root) %{_bindir}/jlink %attr(755,root,root) %{_bindir}/jmap +%attr(755,root,root) %{_bindir}/jmod %attr(755,root,root) %{_bindir}/jps -%attr(755,root,root) %{_bindir}/jrunscript -%attr(755,root,root) %{_bindir}/jsadebugd +%attr(755,root,root) %{_bindir}/jshell %attr(755,root,root) %{_bindir}/jstack %attr(755,root,root) %{_bindir}/jstat %attr(755,root,root) %{_bindir}/jstatd -%attr(755,root,root) %{_bindir}/native2ascii %attr(755,root,root) %{_bindir}/rmic %attr(755,root,root) %{_bindir}/schemagen %attr(755,root,root) %{_bindir}/serialver @@ -592,8 +549,6 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/wsimport %attr(755,root,root) %{_bindir}/xjc %{_jvmdir}/java -%{_mandir}/man1/extcheck.1* -%{_mandir}/man1/idlj.1* %{_mandir}/man1/jarsigner.1* %{_mandir}/man1/javac.1* %{_mandir}/man1/javadoc.1* @@ -603,24 +558,18 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/jconsole.1* %{_mandir}/man1/jdb.1* %{_mandir}/man1/jdeps.1* -%{_mandir}/man1/jhat.1* %{_mandir}/man1/jinfo.1* %{_mandir}/man1/jmap.1* %{_mandir}/man1/jps.1* -%{_mandir}/man1/jrunscript.1* -%{_mandir}/man1/jsadebugd.1* %{_mandir}/man1/jstack.1* %{_mandir}/man1/jstat.1* %{_mandir}/man1/jstatd.1* -%{_mandir}/man1/native2ascii.1* %{_mandir}/man1/schemagen.1* %{_mandir}/man1/serialver.1* %{_mandir}/man1/rmic.1* %{_mandir}/man1/wsgen.1* %{_mandir}/man1/wsimport.1* %{_mandir}/man1/xjc.1* -%lang(ja) %{_mandir}/ja/man1/extcheck.1* -%lang(ja) %{_mandir}/ja/man1/idlj.1* %lang(ja) %{_mandir}/ja/man1/jarsigner.1* %lang(ja) %{_mandir}/ja/man1/javac.1* %lang(ja) %{_mandir}/ja/man1/javadoc.1* @@ -630,16 +579,12 @@ rm -rf $RPM_BUILD_ROOT %lang(ja) %{_mandir}/ja/man1/jconsole.1* %lang(ja) %{_mandir}/ja/man1/jdb.1* %lang(ja) %{_mandir}/ja/man1/jdeps.1* -%lang(ja) %{_mandir}/ja/man1/jhat.1* %lang(ja) %{_mandir}/ja/man1/jinfo.1* %lang(ja) %{_mandir}/ja/man1/jmap.1* %lang(ja) %{_mandir}/ja/man1/jps.1* -%lang(ja) %{_mandir}/ja/man1/jrunscript.1* -%lang(ja) %{_mandir}/ja/man1/jsadebugd.1* %lang(ja) %{_mandir}/ja/man1/jstack.1* %lang(ja) %{_mandir}/ja/man1/jstat.1* %lang(ja) %{_mandir}/ja/man1/jstatd.1* -%lang(ja) %{_mandir}/ja/man1/native2ascii.1* %lang(ja) %{_mandir}/ja/man1/schemagen.1* %lang(ja) %{_mandir}/ja/man1/serialver.1* %lang(ja) %{_mandir}/ja/man1/rmic.1* @@ -649,16 +594,12 @@ rm -rf $RPM_BUILD_ROOT %files jdk-base %defattr(644,root,root,755) -%doc build/*-release/images/j2sdk-image/THIRD_PARTY_README -%doc build/*-release/images/j2sdk-image/ASSEMBLY_EXCEPTION %dir %{dstdir} %{_jvmdir}/%{name} %attr(755,root,root) %{dstdir}/bin/appletviewer -%attr(755,root,root) %{dstdir}/bin/extcheck -%attr(755,root,root) %{dstdir}/bin/idlj +%{?with_aot:%attr(755,root,root) %{dstdir}/bin/jaotc} %attr(755,root,root) %{dstdir}/bin/jar %attr(755,root,root) %{dstdir}/bin/jarsigner -%attr(755,root,root) %{dstdir}/bin/java-rmi.cgi %attr(755,root,root) %{dstdir}/bin/javac %attr(755,root,root) %{dstdir}/bin/javadoc %attr(755,root,root) %{dstdir}/bin/javah @@ -666,17 +607,19 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{dstdir}/bin/jconsole %attr(755,root,root) %{dstdir}/bin/jcmd %attr(755,root,root) %{dstdir}/bin/jdb +%attr(755,root,root) %{dstdir}/bin/jdeprscan %attr(755,root,root) %{dstdir}/bin/jdeps -%attr(755,root,root) %{dstdir}/bin/jhat +%attr(755,root,root) %{dstdir}/bin/jhsdb +%attr(755,root,root) %{dstdir}/bin/jimage %attr(755,root,root) %{dstdir}/bin/jinfo +%attr(755,root,root) %{dstdir}/bin/jlink %attr(755,root,root) %{dstdir}/bin/jmap +%attr(755,root,root) %{dstdir}/bin/jmod %attr(755,root,root) %{dstdir}/bin/jps -%attr(755,root,root) %{dstdir}/bin/jrunscript -%attr(755,root,root) %{dstdir}/bin/jsadebugd +%attr(755,root,root) %{dstdir}/bin/jshell %attr(755,root,root) %{dstdir}/bin/jstack %attr(755,root,root) %{dstdir}/bin/jstat %attr(755,root,root) %{dstdir}/bin/jstatd -%attr(755,root,root) %{dstdir}/bin/native2ascii %attr(755,root,root) %{dstdir}/bin/rmic %attr(755,root,root) %{dstdir}/bin/schemagen %attr(755,root,root) %{dstdir}/bin/serialver @@ -684,25 +627,16 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{dstdir}/bin/wsimport %attr(755,root,root) %{dstdir}/bin/xjc %{dstdir}/include -%dir %{dstdir}/lib +%{dstdir}/jmods +%{?with_aot:%attr(755,root,root) %{dstdir}/lib/libjelfshim.so} %{dstdir}/lib/ct.sym -%{dstdir}/lib/dt.jar -%{dstdir}/lib/ir.idl -%{dstdir}/lib/jconsole.jar -%attr(755,root,root) %{dstdir}/lib/jexec -%{dstdir}/lib/orb.idl -%ifnarch x32 -%{dstdir}/lib/sa-jdi.jar -%endif -%{dstdir}/lib/tools.jar -%dir %{dstdir}/lib/%{jre_arch} -%dir %{dstdir}/lib/%{jre_arch}/jli -%attr(755,root,root) %{dstdir}/lib/%{jre_arch}/jli/*.so %files jre %defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/idlj %attr(755,root,root) %{_bindir}/java %attr(755,root,root) %{_bindir}/jjs +%attr(755,root,root) %{_bindir}/jrunscript %attr(755,root,root) %{_bindir}/keytool %attr(755,root,root) %{_bindir}/orbd %attr(755,root,root) %{_bindir}/pack200 @@ -711,8 +645,10 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/servertool %attr(755,root,root) %{_bindir}/tnameserv %attr(755,root,root) %{_bindir}/unpack200 +%{_mandir}/man1/idlj.1* %{_mandir}/man1/java.1* %{_mandir}/man1/jjs.1* +%{_mandir}/man1/jrunscript.1* %{_mandir}/man1/keytool.1* %{_mandir}/man1/orbd.1* %{_mandir}/man1/pack200.1* @@ -721,8 +657,10 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/servertool.1* %{_mandir}/man1/tnameserv.1* %{_mandir}/man1/unpack200.1* +%lang(ja) %{_mandir}/ja/man1/idlj.1* %lang(ja) %{_mandir}/ja/man1/java.1* %lang(ja) %{_mandir}/ja/man1/jjs.1* +%lang(ja) %{_mandir}/ja/man1/jrunscript.1* %lang(ja) %{_mandir}/ja/man1/keytool.1* %lang(ja) %{_mandir}/ja/man1/orbd.1* %lang(ja) %{_mandir}/ja/man1/pack200.1* @@ -734,108 +672,74 @@ rm -rf $RPM_BUILD_ROOT %files jre-base %defattr(644,root,root,755) -%doc THIRD_PARTY_README -%doc ASSEMBLY_EXCEPTION %dir %{_sysconfdir}/%{name} %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/* %dir %{dstdir} %{dstdir}/release -%dir %{jredir} %{_jvmdir}/%{name}-jre -%dir %{jredir}/bin %dir %{dstdir}/bin -%attr(755,root,root) %{jredir}/bin/java +%attr(755,root,root) %{dstdir}/bin/idlj %attr(755,root,root) %{dstdir}/bin/java -%attr(755,root,root) %{jredir}/bin/jjs %attr(755,root,root) %{dstdir}/bin/jjs -%attr(755,root,root) %{jredir}/bin/keytool +%attr(755,root,root) %{dstdir}/bin/jrunscript %attr(755,root,root) %{dstdir}/bin/keytool -%attr(755,root,root) %{jredir}/bin/orbd %attr(755,root,root) %{dstdir}/bin/orbd -%attr(755,root,root) %{jredir}/bin/pack200 %attr(755,root,root) %{dstdir}/bin/pack200 -%attr(755,root,root) %{jredir}/bin/rmid %attr(755,root,root) %{dstdir}/bin/rmid -%attr(755,root,root) %{jredir}/bin/rmiregistry %attr(755,root,root) %{dstdir}/bin/rmiregistry -%attr(755,root,root) %{jredir}/bin/servertool %attr(755,root,root) %{dstdir}/bin/servertool -%attr(755,root,root) %{jredir}/bin/tnameserv %attr(755,root,root) %{dstdir}/bin/tnameserv -%attr(755,root,root) %{jredir}/bin/unpack200 %attr(755,root,root) %{dstdir}/bin/unpack200 -%dir %{jredir}/lib -%dir %{jredir}/lib/applet -%{jredir}/lib/cmm -%{jredir}/lib/ext -%dir %{jredir}/lib/%{jre_arch} -%dir %{jredir}/lib/%{jre_arch}/jli -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/jli/*.so -%dir %{jredir}/lib/%{jre_arch}/server -%{jredir}/lib/%{jre_arch}/server/Xusage.txt -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/server/*.so -%{jredir}/lib/%{jre_arch}/jvm.cfg -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libattach.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt_headless.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libdt_socket.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libhprof.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libinstrument.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2gss.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2pcsc.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libj2pkcs11.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjaas_unix.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjava.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsctp.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsunec.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjava_crw_demo.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjavajpeg.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjavalcms.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjdwp.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsdt.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsig.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsound.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjvm.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libmanagement.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libmlib_image.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnet.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnio.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libnpt.so +%{dstdir}/conf +%{dstdir}/legal +%dir %{dstdir}/lib +%dir %{dstdir}/lib/jli +%attr(755,root,root) %{dstdir}/lib/jli/libjli.so +%{dstdir}/lib/security +%dir %{dstdir}/lib/server +%attr(755,root,root) %{dstdir}/lib/server/*.so +%{dstdir}/lib/server/Xusage.txt +%{dstdir}/lib/classlist +%{dstdir}/lib/jrt-fs.jar +%{dstdir}/lib/jvm.cfg +%attr(755,root,root) %{dstdir}/lib/libattach.so +%attr(755,root,root) %{dstdir}/lib/libawt.so +%attr(755,root,root) %{dstdir}/lib/libawt_headless.so +%attr(755,root,root) %{dstdir}/lib/libdt_socket.so +%attr(755,root,root) %{dstdir}/lib/libinstrument.so +%attr(755,root,root) %{dstdir}/lib/libj2gss.so +%attr(755,root,root) %{dstdir}/lib/libj2pcsc.so +%attr(755,root,root) %{dstdir}/lib/libj2pkcs11.so +%attr(755,root,root) %{dstdir}/lib/libjaas_unix.so +%attr(755,root,root) %{dstdir}/lib/libjava.so +%attr(755,root,root) %{dstdir}/lib/libjimage.so +%attr(755,root,root) %{dstdir}/lib/liblcms.so +%attr(755,root,root) %{dstdir}/lib/libmanagement_agent.so +%attr(755,root,root) %{dstdir}/lib/libmanagement_ext.so +%attr(755,root,root) %{dstdir}/lib/libprefs.so +%attr(755,root,root) %{dstdir}/lib/librmi.so +%attr(755,root,root) %{dstdir}/lib/libsctp.so +%attr(755,root,root) %{dstdir}/lib/libsunec.so +%attr(755,root,root) %{dstdir}/lib/libjavajpeg.so +%attr(755,root,root) %{dstdir}/lib/libjdwp.so +%attr(755,root,root) %{dstdir}/lib/libjsig.so +%attr(755,root,root) %{dstdir}/lib/libjsound.so +%attr(755,root,root) %{dstdir}/lib/libmanagement.so +%attr(755,root,root) %{dstdir}/lib/libmlib_image.so +%attr(755,root,root) %{dstdir}/lib/libnet.so +%attr(755,root,root) %{dstdir}/lib/libnio.so %ifnarch x32 -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsaproc.so +%attr(755,root,root) %{dstdir}/lib/libsaproc.so %endif -%{?with_sunec:%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsunec.so} -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libunpack.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libverify.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libzip.so -%{jredir}/lib/images -%{jredir}/lib/management -%{jredir}/lib/security -%if %{with webstart} -%{jredir}/lib/about.jar -%{jredir}/lib/about.jnlp -%endif -%{jredir}/lib/calendars.properties -%{jredir}/lib/charsets.jar -%{jredir}/lib/classlist -%{jredir}/lib/content-types.properties -%{jredir}/lib/currency.data -%{jredir}/lib/flavormap.properties -%{jredir}/lib/hijrah-config-umalqura.properties -%{jredir}/lib/jce.jar -%attr(755, root, root) %{jredir}/lib/jexec -%{jredir}/lib/jsse.jar -%{jredir}/lib/jvm.hprof.txt -%{jredir}/lib/logging.properties -%{jredir}/lib/management-agent.jar -%{jredir}/lib/meta-index -%{jredir}/lib/net.properties -%{jredir}/lib/psfont.properties.ja -%{jredir}/lib/psfontj2d.properties -%{jredir}/lib/resources.jar -%{jredir}/lib/rt.jar -%{jredir}/lib/sound.properties -%{jredir}/lib/tzdb.dat +%{?with_sunec:%attr(755,root,root) %{dstdir}/lib/libsunec.so} +%attr(755,root,root) %{dstdir}/lib/libunpack.so +%attr(755,root,root) %{dstdir}/lib/libverify.so +%attr(755,root,root) %{dstdir}/lib/libzip.so +%attr(755,root,root) %{dstdir}/lib/jexec +%{dstdir}/lib/modules +%{dstdir}/lib/psfont.properties.ja +%{dstdir}/lib/psfontj2d.properties +%{dstdir}/lib/tzdb.dat %{jvmjardir} %files jre-X11 @@ -846,26 +750,18 @@ rm -rf $RPM_BUILD_ROOT %files jre-base-X11 %defattr(644,root,root,755) -%attr(755,root,root) %{jredir}/bin/policytool %attr(755,root,root) %{dstdir}/bin/policytool -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libsplashscreen.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libawt_xawt.so -%attr(755,root,root) %{dstdir}/lib/%{jre_arch}/libjawt.so -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjawt.so +%attr(755,root,root) %{dstdir}/lib/libsplashscreen.so +%attr(755,root,root) %{dstdir}/lib/libawt_xawt.so +%attr(755,root,root) %{dstdir}/lib/libjawt.so %files jre-base-alsa %defattr(644,root,root,755) -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjsoundalsa.so +%attr(755,root,root) %{dstdir}/lib/libjsoundalsa.so %files jre-base-freetype %defattr(644,root,root,755) -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libfontmanager.so - -%if 0 -%files jre-base-gtk -%defattr(644,root,root,755) -%attr(755,root,root) %{jredir}/lib/%{jre_arch}/libjavagtk.so -%endif +%attr(755,root,root) %{dstdir}/lib/libfontmanager.so %files jar %defattr(644,root,root,755) diff --git a/protos.patch b/protos.patch deleted file mode 100644 index 251a48a..0000000 --- a/protos.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- jdk8u-jdk8u92-b31/jdk/src/share/native/sun/misc/URLClassPath.c.orig 2016-07-29 15:33:17.499988085 +0200 -+++ jdk8u-jdk8u92-b31/jdk/src/share/native/sun/misc/URLClassPath.c 2016-07-29 15:35:59.085075633 +0200 -@@ -24,6 +24,7 @@ - */ - - #include -+#include - - #include "jni.h" - #include "jni_util.h" -@@ -36,6 +37,12 @@ - extern char* - getUTF(JNIEnv *env, jstring str, char* localBuf, int bufSize); - -+extern JNIEXPORT jboolean -+VerifyClassname(char *name, jboolean allowArrayClass); -+ -+extern JNIEXPORT jboolean -+VerifyFixClassname(char *name); -+ - - JNIEXPORT jboolean JNICALL - Java_sun_misc_URLClassPath_knownToNotExist0(JNIEnv *env, jclass cls, jobject loader, - diff --git a/system-lcms.patch b/system-lcms.patch deleted file mode 100644 index 67a1baa..0000000 --- a/system-lcms.patch +++ /dev/null @@ -1,102 +0,0 @@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 ---- jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 2015-09-18 13:16:52.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 2015-09-18 13:18:24.000000000 +0200 -@@ -666,6 +666,46 @@ - - ############################################################################### - # -+ # Check for the lcms2 library -+ # -+ -+ AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms], -+ [use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(lcms2, cmsOpenProfileFromFile, -+ [ LCMS_FOUND=yes ], -+ [ LCMS_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which lcms to use]) -+ -+ DEFAULT_LCMS=bundled -+ -+ # -+ # If user didn't specify, use DEFAULT_LCMS -+ # -+ if test "x${with_lcms}" = "x"; then -+ with_lcms=${DEFAULT_LCMS} -+ fi -+ -+ if test "x${with_lcms}" = "xbundled"; then -+ USE_EXTERNAL_LCMS=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_lcms}" = "xsystem"; then -+ if test "x${LCMS_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LCMS=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled']) -+ fi -+ -+ AC_SUBST(USE_EXTERNAL_LCMS) -+ -+ ############################################################################### -+ # - # Check for the png library - # - -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk ---- jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk 2015-09-18 13:16:52.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk 2015-09-18 13:18:24.000000000 +0200 -@@ -667,8 +667,8 @@ - ########################################################################################## - - # TODO: Update awt lib path when awt is converted --$(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \ -- LIBRARY := lcms, \ -+$(eval $(call SetupNativeCompilation,BUILD_LIBJAVALCMS, \ -+ LIBRARY := javalcms, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ - SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \ - LANG := C, \ -@@ -686,19 +686,19 @@ - LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \ - LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc, \ - LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \ -- LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \ -+ LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm -llcms2, \ - LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm,\ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -- -D "JDK_FNAME=lcms.dll" \ -- -D "JDK_INTERNAL_NAME=lcms" \ -+ -D "JDK_FNAME=javalcms.dll" \ -+ -D "JDK_INTERNAL_NAME=javalcms" \ - -D "JDK_FTYPE=0x2L", \ -- OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/liblcms, \ -+ OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjavalcms, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) - --BUILD_LIBRARIES += $(BUILD_LIBLCMS) -+BUILD_LIBRARIES += $(BUILD_LIBJAVALCMS) - --$(BUILD_LIBLCMS): $(BUILD_LIBAWT) -+$(BUILD_LIBJAVALCMS): $(BUILD_LIBAWT) - - ########################################################################################## - -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java jdk8u-jdk8u66-b02/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMS.java 2015-09-18 13:18:24.000000000 +0200 -@@ -207,7 +207,7 @@ - * disposer frameworks - */ - System.loadLibrary("awt"); -- System.loadLibrary("lcms"); -+ System.loadLibrary("javalcms"); - return null; - } - }); diff --git a/system-libjpeg.patch b/system-libjpeg.patch deleted file mode 100644 index 37294ca..0000000 --- a/system-libjpeg.patch +++ /dev/null @@ -1,364 +0,0 @@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/generated-configure.sh jdk8u-jdk8u66-b02/common/autoconf/generated-configure.sh ---- jdk8u-jdk8u66-b02.orig/common/autoconf/generated-configure.sh 2015-07-17 09:35:23.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/generated-configure.sh 2015-09-18 13:13:58.000000000 +0200 -@@ -1065,6 +1065,7 @@ - with_alsa - with_alsa_include - with_alsa_lib -+with_libjpeg - with_giflib - with_zlib - with_stdc__lib -@@ -1838,6 +1839,8 @@ - headers under PATH/include) - --with-alsa-include specify directory for the alsa include files - --with-alsa-lib specify directory for the alsa library -+ --with-libjpeg use libjpeg from build system or OpenJDK source -+ (system, bundled) [bundled] - --with-giflib use giflib from build system or OpenJDK source - (system, bundled) [bundled] - --with-zlib use zlib from build system or OpenJDK source -@@ -8092,6 +8095,11 @@ - HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}minimal1 " - fi - -+ if test "x$JVM_VARIANT_CLIENT" = xtrue; then -+ if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then -+ as_fn_error $? "You cannot build a client JVM for a 64-bit machine." "$LINENO" 5 -+ fi -+ fi - if test "x$JVM_VARIANT_KERNEL" = xtrue; then - HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}kernel " - fi -@@ -34837,10 +34845,43 @@ - # Check for the jpeg library - # - -- USE_EXTERNAL_LIBJPEG=true -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ljpeg" >&5 --$as_echo_n "checking for main in -ljpeg... " >&6; } --if ${ac_cv_lib_jpeg_main+:} false; then : -+ -+# Check whether --with-libjpeg was given. -+if test "${with_libjpeg+set}" = set; then : -+ withval=$with_libjpeg; -+fi -+ -+ -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for which libjpeg to use" >&5 -+$as_echo_n "checking for which libjpeg to use... " >&6; } -+ -+ # default is bundled -+ DEFAULT_LIBJPEG=bundled -+ -+ # -+ # if user didn't specify, use DEFAULT_LIBJPEG -+ # -+ if test "x${with_libjpeg}" = "x"; then -+ with_libjpeg=${DEFAULT_LIBJPEG} -+ fi -+ -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libjpeg}" >&5 -+$as_echo "${with_libjpeg}" >&6; } -+ -+ if test "x${with_libjpeg}" = "xbundled"; then -+ USE_EXTERNAL_LIBJPEG=false -+ elif test "x${with_libjpeg}" = "xsystem"; then -+ ac_fn_cxx_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default" -+if test "x$ac_cv_header_jpeglib_h" = xyes; then : -+ -+else -+ as_fn_error $? "--with-libjpeg=system specified, but jpeglib.h not found!" "$LINENO" 5 -+fi -+ -+ -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_CreateDecompress in -ljpeg" >&5 -+$as_echo_n "checking for jpeg_CreateDecompress in -ljpeg... " >&6; } -+if ${ac_cv_lib_jpeg_jpeg_CreateDecompress+:} false; then : - $as_echo_n "(cached) " >&6 - else - ac_check_lib_save_LIBS=$LIBS -@@ -34848,27 +34889,33 @@ - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ - -- -+/* Override any GCC internal prototype to avoid an error. -+ Use char because int might match the return type of a GCC -+ builtin and then its argument prototype would still apply. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+char jpeg_CreateDecompress (); - int - main () - { --return main (); -+return jpeg_CreateDecompress (); - ; - return 0; - } - _ACEOF - if ac_fn_cxx_try_link "$LINENO"; then : -- ac_cv_lib_jpeg_main=yes -+ ac_cv_lib_jpeg_jpeg_CreateDecompress=yes - else -- ac_cv_lib_jpeg_main=no -+ ac_cv_lib_jpeg_jpeg_CreateDecompress=no - fi - rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS=$ac_check_lib_save_LIBS - fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_main" >&5 --$as_echo "$ac_cv_lib_jpeg_main" >&6; } --if test "x$ac_cv_lib_jpeg_main" = xyes; then : -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_CreateDecompress" >&5 -+$as_echo "$ac_cv_lib_jpeg_jpeg_CreateDecompress" >&6; } -+if test "x$ac_cv_lib_jpeg_jpeg_CreateDecompress" = xyes; then : - cat >>confdefs.h <<_ACEOF - #define HAVE_LIBJPEG 1 - _ACEOF -@@ -34876,13 +34923,16 @@ - LIBS="-ljpeg $LIBS" - - else -- USE_EXTERNAL_LIBJPEG=false -- { $as_echo "$as_me:${as_lineno-$LINENO}: Will use jpeg decoder bundled with the OpenJDK source" >&5 --$as_echo "$as_me: Will use jpeg decoder bundled with the OpenJDK source" >&6;} -- -+ as_fn_error $? "--with-libjpeg=system specified, but no libjpeg found" "$LINENO" 5 - fi - - -+ USE_EXTERNAL_LIBJPEG=true -+ else -+ as_fn_error $? "Invalid use of --with-libjpeg: ${with_libjpeg}, use 'system' or 'bundled'" "$LINENO" 5 -+ fi -+ -+ - - ############################################################################### - # -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 ---- jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 2015-07-17 09:35:23.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 2015-09-18 13:13:58.000000000 +0200 -@@ -595,11 +595,36 @@ - # Check for the jpeg library - # - -- USE_EXTERNAL_LIBJPEG=true -- AC_CHECK_LIB(jpeg, main, [], -- [ USE_EXTERNAL_LIBJPEG=false -- AC_MSG_NOTICE([Will use jpeg decoder bundled with the OpenJDK source]) -- ]) -+ AC_ARG_WITH(libjpeg, [AS_HELP_STRING([--with-libjpeg], -+ [use libjpeg from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_MSG_CHECKING([for which libjpeg to use]) -+ -+ # default is bundled -+ DEFAULT_LIBJPEG=bundled -+ -+ # -+ # if user didn't specify, use DEFAULT_LIBJPEG -+ # -+ if test "x${with_libjpeg}" = "x"; then -+ with_libjpeg=${DEFAULT_LIBJPEG} -+ fi -+ -+ AC_MSG_RESULT(${with_libjpeg}) -+ -+ if test "x${with_libjpeg}" = "xbundled"; then -+ USE_EXTERNAL_LIBJPEG=false -+ elif test "x${with_libjpeg}" = "xsystem"; then -+ AC_CHECK_HEADER(jpeglib.h, [], -+ [ AC_MSG_ERROR([--with-libjpeg=system specified, but jpeglib.h not found!])]) -+ AC_CHECK_LIB(jpeg, jpeg_CreateDecompress, [], -+ [ AC_MSG_ERROR([--with-libjpeg=system specified, but no libjpeg found])]) -+ -+ USE_EXTERNAL_LIBJPEG=true -+ else -+ AC_MSG_ERROR([Invalid use of --with-libjpeg: ${with_libjpeg}, use 'system' or 'bundled']) -+ fi -+ - AC_SUBST(USE_EXTERNAL_LIBJPEG) - - ############################################################################### -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk ---- jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk 2015-09-18 13:13:58.000000000 +0200 -@@ -702,21 +702,24 @@ - - ########################################################################################## - -+BUILD_LIBJAVAJPEG_DIR := $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg -+ - ifdef OPENJDK -- BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers -+ BUILD_LIBJAVAJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers - else -- BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers-closed -- BUILD_LIBJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg -- BUILD_LIBJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC) -+ BUILD_LIBJAVAJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers-closed -+ BUILD_LIBJAVAJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg -+ BUILD_LIBJAVAJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJAVAJPEG_CLOSED_SRC) - endif - --BUILD_LIBJPEG_REORDER := -+BUILD_LIBJAVAJPEG_REORDER := - ifeq ($(OPENJDK_TARGET_OS), solaris) - ifneq ($(OPENJDK_TARGET_CPU), x86_64) -- BUILD_LIBJPEG_REORDER := $(JDK_TOPDIR)/make/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) -+ BUILD_LIBJAVAJPEG_REORDER := $(JDK_TOPDIR)/make/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) - endif - endif - -+ - # Suppress gcc warnings like "variable might be clobbered by 'longjmp' - # or 'vfork'": this warning indicates that some variable is placed to - # a register by optimized compiler and it's value might be lost on longjmp(). -@@ -728,37 +731,50 @@ - # $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \ - # \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) ) - # ifeq ($(CC_43_OR_NEWER), 1) --# BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered -+# BUILD_LIBJAVAJPEG_CFLAGS_linux += -Wno-clobbered - # endif - #endif - --$(eval $(call SetupNativeCompilation,BUILD_LIBJPEG, \ -- LIBRARY := jpeg, \ -+ifeq ($(USE_EXTERNAL_LIBJPEG), true) -+ LIBJPEG_LIBS := -ljpeg -+ BUILD_LIBJAVAJPEG_INCLUDE_FILES := \ -+ imageIOJPEG.c \ -+ jpegdecoder.c -+ BUILD_LIBJAVAJPEG_HEADERS := -+else -+ LIBJPEG_LIBS := -+ BUILD_LIBJAVAJPEG_INCLUDE_FILES := -+ BUILD_LIBJAVAJPEG_HEADERS := -I$(BUILD_LIBJAVAJPEG_DIR) -+endif -+ -+$(eval $(call SetupNativeCompilation,BUILD_LIBJAVAJPEG, \ -+ LIBRARY := javajpeg, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -- SRC := $(BUILD_LIBJPEG_CLOSED_SRC) \ -- $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ -+ SRC := $(BUILD_LIBJAVAJPEG_CLOSED_SRC) \ -+ $(BUILD_LIBJAVAJPEG_DIR), \ -+ INCLUDE_FILES := $(BUILD_LIBJAVAJPEG_INCLUDE_FILES), \ - LANG := C, \ - OPTIMIZATION := HIGHEST, \ - CFLAGS := $(CFLAGS_JDKLIB) \ -- $(BUILD_LIBJPEG_CLOSED_INCLUDES) \ -- -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ -- MAPFILE := $(BUILD_LIBJPEG_MAPFILE), \ -+ $(BUILD_LIBJAVAJPEG_CLOSED_INCLUDES) \ -+ $(BUILD_LIBJAVAJPEG_HEADERS), \ -+ MAPFILE := $(BUILD_LIBJAVAJPEG_MAPFILE), \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_windows := $(WIN_JAVA_LIB) jvm.lib, \ -- LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \ -+ LDFLAGS_SUFFIX := $(LIBJPEG_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -- -D "JDK_FNAME=jpeg.dll" \ -- -D "JDK_INTERNAL_NAME=jpeg" \ -+ -D "JDK_FNAME=javajpeg.dll" \ -+ -D "JDK_INTERNAL_NAME=javajpeg" \ - -D "JDK_FTYPE=0x2L", \ -- REORDER := $(BUILD_LIBJPEG_REORDER), \ -+ REORDER := $(BUILD_LIBJAVAJPEG_REORDER), \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjpeg, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) - --$(BUILD_LIBJPEG): $(BUILD_LIBJAVA) -+$(BUILD_LIBJAVAJPEG): $(BUILD_LIBJAVA) - --BUILD_LIBRARIES += $(BUILD_LIBJPEG) -+BUILD_LIBRARIES += $(BUILD_LIBJAVAJPEG) - - ########################################################################################## - -@@ -1198,6 +1214,13 @@ - GIFLIB_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/giflib - endif - -+ ifeq ($(USE_EXTERNAL_LIBJPEG), true) -+ LIBJPEG_LDFLAGS := -ljpeg -+ else -+ LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg -+ LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg -+ endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) - LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen - else -@@ -1258,11 +1281,13 @@ - EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \ - LANG := C, \ - OPTIMIZATION := LOW, \ -- CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(GIFLIB_CFLAGS), \ -+ CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \ -+ $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ -- LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) $(GIFLIB_LDFLAGS), \ -+ LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) \ -+ $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS), \ - LDFLAGS_SUFFIX_solaris := -lc, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java jdk8u-jdk8u66-b02/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java 2015-09-18 13:13:58.000000000 +0200 -@@ -89,7 +89,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java jdk8u-jdk8u66-b02/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java 2015-09-18 13:13:58.000000000 +0200 -@@ -177,7 +177,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java jdk8u-jdk8u66-b02/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java 2015-09-18 13:13:58.000000000 +0200 -@@ -56,7 +56,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c jdk8u-jdk8u66-b02/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/native/sun/awt/image/jpeg/imageioJPEG.c 2015-09-18 13:13:58.000000000 +0200 -@@ -51,7 +51,7 @@ - - /* headers from the JPEG library */ - #include --#include "jerror.h" -+#include - - #undef MAX - #define MAX(a,b) ((a) > (b) ? (a) : (b)) diff --git a/system-libpng.patch b/system-libpng.patch deleted file mode 100644 index e8259b4..0000000 --- a/system-libpng.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 ---- jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 2015-09-18 13:13:58.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 2015-09-18 13:16:52.000000000 +0200 -@@ -666,6 +666,47 @@ - - ############################################################################### - # -+ # Check for the png library -+ # -+ -+ AC_ARG_WITH(libpng, [AS_HELP_STRING([--with-libpng], -+ [use libpng from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(png, png_sig_cmp, -+ [ LIBPNG_FOUND=yes ], -+ [ LIBPNG_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which libpng to use]) -+ -+ # default is bundled -+ DEFAULT_LIBPNG=bundled -+ -+ # -+ # if user didn't specify, use DEFAULT_LIBPNG -+ # -+ if test "x${with_libpng}" = "x"; then -+ with_libpng=${DEFAULT_libpng} -+ fi -+ -+ -+ if test "x${with_libpng}" = "xbundled"; then -+ USE_EXTERNAL_LIBPNG=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_libpng}" = "xsystem"; then -+ if test "x${LIBPNG_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LIBPNG=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-libpng=system specified, but no libpng found!]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid value of --with-libpng: ${with_libpng}, use 'system' or 'bundled']) -+ fi -+ AC_SUBST(USE_EXTERNAL_LIBPNG) -+ -+ ############################################################################### -+ # - # Check for the zlib library - # - -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/spec.gmk.in jdk8u-jdk8u66-b02/common/autoconf/spec.gmk.in ---- jdk8u-jdk8u66-b02.orig/common/autoconf/spec.gmk.in 2015-07-17 09:35:23.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/spec.gmk.in 2015-09-18 13:16:52.000000000 +0200 -@@ -563,6 +563,7 @@ - ENABLE_JFR=@ENABLE_JFR@ - ENABLE_INTREE_EC=@ENABLE_INTREE_EC@ - USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ -+USE_EXTERNAL_LIBPNG:=@USE_EXTERNAL_LIBPNG@ - USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ - USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ - LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk ---- jdk8u-jdk8u66-b02.orig/jdk/make/lib/Awt2dLibraries.gmk 2015-09-18 13:13:58.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/make/lib/Awt2dLibraries.gmk 2015-09-18 13:16:52.000000000 +0200 -@@ -1204,7 +1204,6 @@ - ifndef BUILD_HEADLESS_ONLY - LIBSPLASHSCREEN_DIRS := \ - $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg \ -- $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \ - $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen - - ifeq ($(USE_EXTERNAL_LIBGIF), true) -@@ -1221,6 +1220,13 @@ - LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg - endif - -+ ifeq ($(USE_EXTERNAL_LIBPNG), true) -+ LIBPNG_LDFLAGS := -lpng -+ else -+ LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/image/libpng -+ LIBPNG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/libpng -+ endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) - LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen - else -@@ -1282,12 +1288,12 @@ - LANG := C, \ - OPTIMIZATION := LOW, \ - CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \ -- $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS), \ -+ $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS) $(LIBPNG_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) \ -- $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS), \ -+ $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS) $(LIBPNG_LDFLAGS), \ - LDFLAGS_SUFFIX_solaris := -lc, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c jdk8u-jdk8u66-b02/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c ---- jdk8u-jdk8u66-b02.orig/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c 2015-09-18 13:16:52.000000000 +0200 -@@ -25,8 +25,7 @@ - - #include "splashscreen_impl.h" - --#include "../libpng/png.h" -- -+#include - #include - - #define SIG_BYTES 8 diff --git a/system-pcsclite.patch b/system-pcsclite.patch deleted file mode 100644 index dd487a5..0000000 --- a/system-pcsclite.patch +++ /dev/null @@ -1,186 +0,0 @@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 ---- jdk8u-jdk8u66-b02.orig/common/autoconf/libraries.m4 2015-09-18 13:18:24.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/libraries.m4 2015-09-18 13:19:49.000000000 +0200 -@@ -747,6 +747,53 @@ - - ############################################################################### - # -+ # Check for the pcsclite library -+ # -+ -+ AC_ARG_WITH(libpcsclite, [AS_HELP_STRING([--with-libpcsclite], -+ [use libpcsclite from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(pcsclite, SCardConnect, -+ [ LIBPCSCLITE_FOUND=yes ], -+ [ LIBPCSCLITE_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which libpcsclite to use]) -+ -+ DEFAULT_LIBPCSCLITE=bundled -+ -+ if test "x${LIBPCSCLITE_FOUND}" != "xyes"; then -+ # -+ # If we don't find any system...set default to bundled -+ # -+ DEFAULT_LIBPCSCLITE=bundled -+ fi -+ -+ # -+ # If user didn't specify, use DEFAULT_PCSC -+ # -+ if test "x${with_libpcsclite}" = "x"; then -+ with_libpcsclite=${DEFAULT_LIBPCSCLITE} -+ fi -+ -+ if test "x${with_libpcsclite}" = "xbundled"; then -+ USE_EXTERNAL_LIBPCSCLITE=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_libpcsclite}" = "xsystem"; then -+ if test "x${LIBPCSCLITE_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LIBPCSCLITE=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-libpcsclite=system specified, but no libpcsclite found!]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid value for --with-libpcsclite: ${with_libpcsclite}, use 'system' or 'bundled']) -+ fi -+ -+ AC_SUBST(USE_EXTERNAL_LIBPCSCLITE) -+ -+ ############################################################################### -+ # - # Check for the zlib library - # - -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/common/autoconf/spec.gmk.in jdk8u-jdk8u66-b02/common/autoconf/spec.gmk.in ---- jdk8u-jdk8u66-b02.orig/common/autoconf/spec.gmk.in 2015-09-18 13:16:52.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/spec.gmk.in 2015-09-18 13:19:49.000000000 +0200 -@@ -565,6 +565,7 @@ - USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ - USE_EXTERNAL_LIBPNG:=@USE_EXTERNAL_LIBPNG@ - USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ -+USE_EXTERNAL_LIBPCSCLITE:=@USE_EXTERNAL_LIBPCSCLITE@ - USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ - LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ - MSVCR_DLL:=@MSVCR_DLL@ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/make/lib/SecurityLibraries.gmk jdk8u-jdk8u66-b02/jdk/make/lib/SecurityLibraries.gmk ---- jdk8u-jdk8u66-b02.orig/jdk/make/lib/SecurityLibraries.gmk 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/make/lib/SecurityLibraries.gmk 2015-09-18 13:19:49.000000000 +0200 -@@ -75,11 +75,11 @@ - CFLAGS := $(CFLAGS_JDKLIB) \ - -I$(JDK_TOPDIR)/src/share/native/sun/security/smartcardio \ - -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/smartcardio \ -- -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/smartcardio/MUSCLE, \ -+ -I/usr/include/PCSC -DUSE_SYSTEM_LIBPCSCLITE, \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libj2pcsc/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ -- LDFLAGS_SUFFIX_posix := $(LIBDL), \ -+ LDFLAGS_SUFFIX_posix := -lpcsclite $(LIBDL), \ - LDFLAGS_SUFFIX_windows := winscard.lib, \ - LDFLAGS_SUFFIX_solaris := -lc, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c jdk8u-jdk8u66-b02/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c ---- jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2015-09-18 13:19:49.000000000 +0200 -@@ -36,6 +36,7 @@ - - #include "pcsc_md.h" - -+#ifndef USE_SYSTEM_LIBPCSCLITE - void *hModule; - FPTR_SCardEstablishContext scardEstablishContext; - FPTR_SCardConnect scardConnect; -@@ -47,6 +48,7 @@ - FPTR_SCardBeginTransaction scardBeginTransaction; - FPTR_SCardEndTransaction scardEndTransaction; - FPTR_SCardControl scardControl; -+#endif - - /* - * Throws a Java Exception by name -@@ -75,7 +77,9 @@ - throwByName(env, "java/io/IOException", msg); - } - -+#ifndef USE_SYSTEM_LIBPCSCLITE - void *findFunction(JNIEnv *env, void *hModule, char *functionName) { -+ return NULL; - void *fAddress = dlsym(hModule, functionName); - if (fAddress == NULL) { - char errorMessage[256]; -@@ -85,9 +89,11 @@ - } - return fAddress; - } -+#endif - - JNIEXPORT void JNICALL Java_sun_security_smartcardio_PlatformPCSC_initialize - (JNIEnv *env, jclass thisClass, jstring jLibName) { -+#ifndef USE_SYSTEM_LIBPCSCLITE - const char *libName = (*env)->GetStringUTFChars(env, jLibName, NULL); - if (libName == NULL) { - throwNullPointerException(env, "PCSC library name is null"); -@@ -141,4 +147,5 @@ - #else - scardControl = (FPTR_SCardControl) findFunction(env, hModule, "SCardControl132"); - #endif // __APPLE__ -+#endif - } -diff -durN -x '*.orig' jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.h jdk8u-jdk8u66-b02/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.h ---- jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.h 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.h 2015-09-18 13:19:49.000000000 +0200 -@@ -23,6 +23,8 @@ - * questions. - */ - -+#ifndef USE_SYSTEM_LIBPCSCLITE -+ - typedef LONG (*FPTR_SCardEstablishContext)(ULONG dwScope, - const void *pvReserved1, - const void *pvReserved2, -@@ -110,3 +112,41 @@ - extern FPTR_SCardBeginTransaction scardBeginTransaction; - extern FPTR_SCardEndTransaction scardEndTransaction; - extern FPTR_SCardControl scardControl; -+ -+#else -+ -+#define CALL_SCardEstablishContext(dwScope, pvReserved1, pvReserved2, phContext) \ -+ (SCardEstablishContext(dwScope, pvReserved1, pvReserved2, phContext)) -+ -+#define CALL_SCardConnect(hContext, szReader, dwSharedMode, dwPreferredProtocols, phCard, pdwActiveProtocols) \ -+ (SCardConnect(hContext, szReader, dwSharedMode, dwPreferredProtocols, phCard, pdwActiveProtocols)) -+ -+#define CALL_SCardDisconnect(hCard, dwDisposition) \ -+ (SCardDisconnect(hCard, dwDisposition)) -+ -+#define CALL_SCardStatus(hCard, mszReaderNames, pcchReaderLen, pdwState, pdwProtocol, pbAtr, pcbAtrLen) \ -+ (SCardStatus(hCard, mszReaderNames, pcchReaderLen, pdwState, pdwProtocol, pbAtr, pcbAtrLen)) -+ -+#define CALL_SCardGetStatusChange(hContext, dwTimeout, rgReaderStates, cReaders) \ -+ (SCardGetStatusChange(hContext, dwTimeout, rgReaderStates, cReaders)) -+ -+#define CALL_SCardTransmit(hCard, pioSendPci, pbSendBuffer, cbSendLength, \ -+ pioRecvPci, pbRecvBuffer, pcbRecvLength) \ -+ (SCardTransmit(hCard, pioSendPci, pbSendBuffer, cbSendLength, \ -+ pioRecvPci, pbRecvBuffer, pcbRecvLength)) -+ -+#define CALL_SCardListReaders(hContext, mszGroups, mszReaders, pcchReaders) \ -+ (SCardListReaders(hContext, mszGroups, mszReaders, pcchReaders)) -+ -+#define CALL_SCardBeginTransaction(hCard) \ -+ (SCardBeginTransaction(hCard)) -+ -+#define CALL_SCardEndTransaction(hCard, dwDisposition) \ -+ (SCardEndTransaction(hCard, dwDisposition)) -+ -+#define CALL_SCardControl(hCard, dwControlCode, pbSendBuffer, cbSendLength, \ -+ pbRecvBuffer, pcbRecvLength, lpBytesReturned) \ -+ (SCardControl(hCard, dwControlCode, pbSendBuffer, cbSendLength, \ -+ pbRecvBuffer, pcbRecvLength, lpBytesReturned)) -+ -+#endif diff --git a/x32.patch b/x32.patch index 34fdef3..99104a0 100644 --- a/x32.patch +++ b/x32.patch @@ -1,6 +1,21 @@ -diff -durN jdk8u-jdk8u66-b02.orig/common/autoconf/platform.m4 jdk8u-jdk8u66-b02/common/autoconf/platform.m4 ---- jdk8u-jdk8u66-b02.orig/common/autoconf/platform.m4 2015-07-17 09:35:23.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/platform.m4 2015-09-21 13:18:18.439165925 +0200 +diff -urN jdk9u-jdk-9.0.4+12.orig/common/autoconf/flags.m4 jdk9u-jdk-9.0.4+12/common/autoconf/flags.m4 +--- jdk9u-jdk-9.0.4+12.orig/common/autoconf/flags.m4 2017-12-20 00:25:20.000000000 +0100 ++++ jdk9u-jdk-9.0.4+12/common/autoconf/flags.m4 2020-08-29 23:58:39.603994302 +0200 +@@ -215,7 +215,10 @@ + COMPILER_COMMAND_FILE_FLAG="-f" + COMPILER_BINDCMD_FILE_FLAG="-bloadmap:" + else +- COMPILER_TARGET_BITS_FLAG="-m" ++ case $CC in ++ *x32-*) COMPILER_TARGET_BITS_FLAG="-mx";; ++ *) COMPILER_TARGET_BITS_FLAG="-m" ++ esac + COMPILER_COMMAND_FILE_FLAG="@" + COMPILER_BINDCMD_FILE_FLAG="" + +diff -urN jdk9u-jdk-9.0.4+12.orig/common/autoconf/platform.m4 jdk9u-jdk-9.0.4+12/common/autoconf/platform.m4 +--- jdk9u-jdk-9.0.4+12.orig/common/autoconf/platform.m4 2017-12-20 00:25:20.000000000 +0100 ++++ jdk9u-jdk-9.0.4+12/common/autoconf/platform.m4 2020-08-29 23:54:36.322300132 +0200 @@ -31,10 +31,20 @@ # First argument is the cpu name from the trip/quad case "$1" in @@ -26,39 +41,36 @@ diff -durN jdk8u-jdk8u66-b02.orig/common/autoconf/platform.m4 jdk8u-jdk8u66-b02/ ;; i?86) VAR_CPU=x86 -@@ -375,7 +385,16 @@ - ppc64) ZERO_ARCHDEF=PPC64 ;; - s390*) ZERO_ARCHDEF=S390 ;; - sparc*) ZERO_ARCHDEF=SPARC ;; -- x86_64*) ZERO_ARCHDEF=AMD64 ;; -+ x86_64*) +@@ -408,6 +418,14 @@ + HOTSPOT_$1_CPU_DEFINE=IA32 + elif test "x$OPENJDK_$1_CPU" = xx86_64; then + HOTSPOT_$1_CPU_DEFINE=AMD64 + case "$target_os" in + *x32) -+ ZERO_ARCHDEF=X32 ++ HOTSPOT_$1_CPU_DEFINE=X32 + ;; + *) -+ ZERO_ARCHDEF=AMD64 ++ HOTSPOT_$1_CPU_DEFINE=AMD64 + ;; + esac -+ ;; - x86) ZERO_ARCHDEF=IA32 ;; - *) ZERO_ARCHDEF=$(echo "${OPENJDK_TARGET_CPU_LEGACY_LIB}" | tr a-z A-Z) - esac -diff -durN jdk8u-jdk8u66-b02.orig/hotspot/src/os/linux/vm/os_linux.cpp jdk8u-jdk8u66-b02/hotspot/src/os/linux/vm/os_linux.cpp ---- jdk8u-jdk8u66-b02.orig/hotspot/src/os/linux/vm/os_linux.cpp 2015-09-21 13:05:51.883678088 +0200 -+++ jdk8u-jdk8u66-b02/hotspot/src/os/linux/vm/os_linux.cpp 2015-09-21 13:12:58.665870862 +0200 -@@ -1902,7 +1902,7 @@ + elif test "x$OPENJDK_$1_CPU" = xsparcv9; then + HOTSPOT_$1_CPU_DEFINE=SPARC + elif test "x$OPENJDK_$1_CPU" = xaarch64; then +diff -urN jdk9u-jdk-9.0.4+12.orig/hotspot/src/os/linux/vm/os_linux.cpp jdk9u-jdk-9.0.4+12/hotspot/src/os/linux/vm/os_linux.cpp +--- jdk9u-jdk-9.0.4+12.orig/hotspot/src/os/linux/vm/os_linux.cpp 2020-08-29 23:50:35.510694441 +0200 ++++ jdk9u-jdk-9.0.4+12/hotspot/src/os/linux/vm/os_linux.cpp 2020-08-29 23:55:07.785416515 +0200 +@@ -1770,7 +1770,7 @@ - #if (defined IA32) - static Elf32_Half running_arch_code=EM_386; -- #elif (defined AMD64) -+ #elif (defined AMD64) || (defined X32) - static Elf32_Half running_arch_code=EM_X86_64; - #elif (defined IA64) - static Elf32_Half running_arch_code=EM_IA_64; -diff -durN jdk8u-jdk8u66-b02.orig/jdk/make/gensrc/GensrcX11Wrappers.gmk jdk8u-jdk8u66-b02/jdk/make/gensrc/GensrcX11Wrappers.gmk ---- jdk8u-jdk8u66-b02.orig/jdk/make/gensrc/GensrcX11Wrappers.gmk 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/make/gensrc/GensrcX11Wrappers.gmk 2015-09-21 13:13:00.339291213 +0200 + #if (defined IA32) + static Elf32_Half running_arch_code=EM_386; +-#elif (defined AMD64) ++#elif (defined AMD64) || (defined X32) + static Elf32_Half running_arch_code=EM_X86_64; + #elif (defined IA64) + static Elf32_Half running_arch_code=EM_IA_64; +diff -urN jdk9u-jdk-9.0.4+12.orig/jdk/make/gensrc/GensrcX11Wrappers.gmk jdk9u-jdk-9.0.4+12/jdk/make/gensrc/GensrcX11Wrappers.gmk +--- jdk9u-jdk-9.0.4+12.orig/jdk/make/gensrc/GensrcX11Wrappers.gmk 2018-01-13 03:07:38.000000000 +0100 ++++ jdk9u-jdk-9.0.4+12/jdk/make/gensrc/GensrcX11Wrappers.gmk 2020-08-29 23:55:48.198473585 +0200 @@ -87,9 +87,11 @@ $(TOOL_WRAPPERGENERATOR) $(@D) $(GENSRC_SIZER_DIR)/xlibtypes.txt "sizer" $* @@ -69,51 +81,17 @@ diff -durN jdk8u-jdk8u66-b02.orig/jdk/make/gensrc/GensrcX11Wrappers.gmk jdk8u-jd endif + endif - # Compile the C code into an executable. - $(GENSRC_X11WRAPPERS_TMP)/sizer.%.exe: $(GENSRC_X11WRAPPERS_TMP)/sizer.%.c -diff -durN jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c jdk8u-jdk8u66-b02/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c ---- jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2015-09-21 13:13:00.335957707 +0200 -@@ -35,7 +35,6 @@ - #endif - #ifdef __linux__ - #include --#include - #include - #include - -diff -durN jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c jdk8u-jdk8u66-b02/jdk/src/solaris/native/java/net/PlainSocketImpl.c ---- jdk8u-jdk8u66-b02.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2015-07-23 16:17:35.000000000 +0200 -+++ jdk8u-jdk8u66-b02/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2015-09-21 13:13:00.335957707 +0200 -@@ -43,7 +43,6 @@ - #endif - #ifdef __linux__ - #include --#include - #endif - - #include "jvm.h" - ---- jdk8u-jdk8u66-b02.orig/common/autoconf/toolchain.m4 2015-07-17 09:35:23.000000000 +0200 -+++ jdk8u-jdk8u66-b02/common/autoconf/toolchain.m4 2015-09-21 16:00:30.328673989 +0200 -@@ -361,6 +361,7 @@ - # Option used to tell the compiler whether to create 32- or 64-bit executables - # Notice that CC contains the full compiler path at this point. - case $CC in -+ *x32-*) COMPILER_TARGET_BITS_FLAG="-mx";; - *xlc_r) COMPILER_TARGET_BITS_FLAG="-q";; - *) COMPILER_TARGET_BITS_FLAG="-m";; - esac - - ---- jdk8u-jdk8u92-b31/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp.orig 2016-07-29 15:08:03.457784497 +0200 -+++ jdk8u-jdk8u92-b31/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp 2016-07-29 15:10:09.380999329 +0200 -@@ -34,7 +34,7 @@ - * _LP64 can be explicitly set (used on Linux). + SIZER_CFLAGS := \ + -I$(JDK_TOPDIR)/src/java.base/share/native/include \ +diff -urN jdk9u-jdk-9.0.4+12.orig/jdk/src/jdk.pack/share/native/common-unpack/unpack.cpp jdk9u-jdk-9.0.4+12/jdk/src/jdk.pack/share/native/common-unpack/unpack.cpp +--- jdk9u-jdk-9.0.4+12.orig/jdk/src/jdk.pack/share/native/common-unpack/unpack.cpp 2018-01-13 03:07:38.000000000 +0100 ++++ jdk9u-jdk-9.0.4+12/jdk/src/jdk.pack/share/native/common-unpack/unpack.cpp 2020-08-29 23:59:35.900292250 +0200 +@@ -37,7 +37,7 @@ * Solaris compilers will define __sparcv9 or __x86_64 on 64bit compilations. */ --#if defined(_LP64) || defined(__sparcv9) || defined(__x86_64) -+#if defined(_LP64) || defined(__sparcv9) || (defined(__x86_64) && !defined(__ILP32__)) + #if !defined (_MSC_VER) && \ +- (defined(_LP64) || defined(__sparcv9) || defined(__x86_64)) ++ (defined(_LP64) || defined(__sparcv9) || defined(__x86_64) && !defined(__ILP32__)) #define LONG_LONG_FORMAT "%ld" #define LONG_LONG_HEX_FORMAT "%lx" #else -- 2.43.0