+++ /dev/null
-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, \
--- /dev/null
+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;
+
+++ /dev/null
-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}}'/
+++ /dev/null
-#!/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 <tag>" >&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
+++ /dev/null
---- 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 {
+++ /dev/null
-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 -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.
--- /dev/null
+
+# 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
+
-#
-# 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
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
%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.
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
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
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.
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
%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 <<EOF
EOF
[ -L tmp-bin ] || ln -s "$specdir/jdk/bin" tmp-bin
-%{__make} all \
- -j1 JOBS=%{__jobs} \
+%{__make} -j1 all \
LOG=debug \
# these are normally set when --disable-debug-symbols is not used \
LIBMANAGEMENT_OPTIMIZATION=LOW \
$RPM_BUILD_ROOT%{_sysconfdir}/%{name}
# install the 'JDK image', it contains the JRE too
-cp -a build/*-release/images/j2sdk-image/* $RPM_BUILD_ROOT%{dstdir}
+cp -a build/*-release/images/jdk/* $RPM_BUILD_ROOT%{dstdir}
+
+find $RPM_BUILD_ROOT%{dstdir} -name '*.diz' -delete
# convenience symlinks without version number
ln -s %{dstreldir} $RPM_BUILD_ROOT%{_jvmdir}/%{name}
-ln -s %{jrereldir} $RPM_BUILD_ROOT%{_jvmdir}/%{name}-jre
+ln -s %{dstreldir} $RPM_BUILD_ROOT%{_jvmdir}/%{name}-jre
ln -s %{dstreldir} $RPM_BUILD_ROOT%{_jvmdir}/java
# move JDK sources and demo to %{_prefix}/src
mv $RPM_BUILD_ROOT%{dstdir}/demo $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-mv $RPM_BUILD_ROOT%{dstdir}/sample $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-mv $RPM_BUILD_ROOT%{dstdir}/src.zip $RPM_BUILD_ROOT%{_javasrcdir}/%{name}-jdk.zip
+mv $RPM_BUILD_ROOT%{dstdir}/lib/src.zip $RPM_BUILD_ROOT%{_javasrcdir}/%{name}-jdk.zip
# move manual pages to its place
mv $RPM_BUILD_ROOT%{dstdir}/man/ja_JP.UTF-8/man1 $RPM_BUILD_ROOT%{_mandir}/ja/man1
# replace duplicates with symlinks, link to %{_bindir}
for path in $RPM_BUILD_ROOT%{dstdir}/bin/*; do
filename=$(basename $path)
- if diff -q "$path" "$RPM_BUILD_ROOT%{jredir}/bin/$filename" > /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
%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
%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
%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*
%{_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*
%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*
%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
%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
%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
%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*
%{_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*
%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
%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)
+++ /dev/null
---- 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 <string.h>
-+#include <stdlib.h>
-
- #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,
-
+++ /dev/null
-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;
- }
- });
+++ /dev/null
-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<Void>() {
- 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<Void>() {
- 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<Void>() {
- 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 <jpeglib.h>
--#include "jerror.h"
-+#include <jerror.h>
-
- #undef MAX
- #define MAX(a,b) ((a) > (b) ? (a) : (b))
+++ /dev/null
-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 <png.h>
- #include <setjmp.h>
-
- #define SIG_BYTES 8
+++ /dev/null
-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 -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
;;
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" $*
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 <unistd.h>
--#include <sys/sysctl.h>
- #include <sys/utsname.h>
- #include <netinet/ip.h>
-
-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 <unistd.h>
--#include <sys/sysctl.h>
- #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