diff --git a/.gitignore b/.gitignore index 072f2ef..f0288e1 100644 --- a/.gitignore +++ b/.gitignore @@ -108,3 +108,5 @@ /aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u161-b14.tar.xz /aarch64-port-jdk8u-aarch64-jdk8u162-b12.tar.xz /aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u162-b12.tar.xz +/aarch64-port-jdk8u-aarch64-jdk8u171-b10.tar.xz +/aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u171-b10.tar.xz diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index 05082f3..99cf1de 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -205,7 +205,7 @@ # note, following three variables are sedded from update_sources if used correctly. Hardcode them rather there. %global project aarch64-port %global repo jdk8u -%global revision aarch64-jdk8u162-b12 +%global revision aarch64-jdk8u171-b10 # eg # jdk8u60-b27 -> jdk8u60 or # aarch64-jdk8u60-b27 -> aarch64-jdk8u60 (dont forget spec escape % by %%) %global whole_update %(VERSION=%{revision}; echo ${VERSION%%-*}) # eg jdk8u60 -> 60 or aarch64-jdk8u60 -> 60 @@ -941,7 +941,7 @@ Obsoletes: java-1.7.0-openjdk-accessibility%{?1} Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever} -Release: 7.%{buildver}%{?dist} +Release: 1.%{buildver}%{?dist} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons, # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -956,7 +956,17 @@ Epoch: 1 Summary: OpenJDK Runtime Environment Group: Development/Languages -License: ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C +# HotSpot code is licensed under GPLv2 +# JDK library code is licensed under GPLv2 with the Classpath exception +# The Apache license is used in code taken from Apache projects (primarily JAXP & JAXWS) +# DOM levels 2 & 3 and the XML digital signature schemas are licensed under the W3C Software License +# The JSR166 concurrency code is in the public domain +# The BSD and MIT licenses are used for a number of third-party libraries (see THIRD_PARTY_README) +# The OpenJDK source tree includes the JPEG library (IJG), zlib & libpng (zlib), giflib and LCMS (MIT) +# The test code includes copies of NSS under the Mozilla Public License v2.0 +# The PCSClite headers are under a BSD with advertising license +# The elliptic curve cryptography (ECC) source code is licensed under the LGPLv2.1 or any later version +License: ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv2 and GPLv2 with exceptions and IJG and LGPLv2+ and MIT and MPLv2.0 and Public Domain and W3C and zlib URL: http://openjdk.java.net/ # aarch64-port now contains integration forest of both aarch64 and normal jdk @@ -967,7 +977,7 @@ URL: http://openjdk.java.net/ Source0: %{project}-%{repo}-%{revision}.tar.xz # Shenandoah HotSpot -Source1: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u162-b12.tar.xz +Source1: aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u171-b10.tar.xz # Custom README for -src subpackage Source2: README.src @@ -1107,6 +1117,10 @@ Patch534: always_assumemp.patch # PR2888: OpenJDK should check for system cacerts database (e.g. /etc/pki/java/cacerts) Patch539: pr2888.patch +# Shenandoah fixes +# PR3573: Fix TCK crash with Shenandoah +Patch700: pr3573.patch + # Non-OpenJDK fixes Patch1000: enableCommentedOutSystemNss.patch @@ -1140,7 +1154,7 @@ BuildRequires: zip # Use OpenJDK 7 where available (on RHEL) to avoid # having to use the rhel-7.x-java-unsafe-candidate hack %if ! 0%{?fedora} && 0%{?rhel} <= 7 -BuildRequires: java-1.7.0-openjdk-devel +BuildRequires: java-1.7.0-openjdk-devel >= 1.7.0.151-2.6.11.3 %else BuildRequires: java-1.8.0-openjdk-devel %endif @@ -1507,6 +1521,11 @@ popd %patch534 %endif +# Shenandoah-only patches +%if %{use_shenandoah_hotspot} +%patch700 +%endif + %patch1000 # Extract systemtap tapsets @@ -2129,6 +2148,11 @@ require "copy_jdk_configs.lua" %endif %changelog +* Wed Apr 18 2018 Jiri Vanek - 1:1.8.0.171-1.b10 +- Update to aarch64-jdk8u171-b10 and aarch64-shenandoah-jdk8u171-b10. +- Fix jconsole.desktop.in subcategory, replacing "Monitor" with "Profiling" (PR3550) (gnu_andrew) +- Fix invalid license 'LGPL+' (should be LGPLv2+ for ECC code) and add misisng ones (gnu_andrew) + * Wed Apr 18 2018 Jiri Vanek - 1:1.8.0.162-7.b12 - added ownership of policy dir and subdirs - removed ignored attributes for classes.jsa diff --git a/jconsole.desktop.in b/jconsole.desktop.in index a096349..82a5c4c 100644 --- a/jconsole.desktop.in +++ b/jconsole.desktop.in @@ -6,5 +6,5 @@ Icon=java-1.8.0 Terminal=false Type=Application StartupWMClass=sun-tools-jconsole-JConsole -Categories=Development;Monitor;Java; +Categories=Development;Profiling;Java; Version=1.0 diff --git a/pr3573.patch b/pr3573.patch new file mode 100644 index 0000000..07b9f10 --- /dev/null +++ b/pr3573.patch @@ -0,0 +1,25 @@ +# HG changeset patch +# User roland +# Date 1506520357 -7200 +# Wed Sep 27 15:52:37 2017 +0200 +# Node ID c307975d0800f8da5cc8e82cd8f1fdadbd745357 +# Parent ab0c101fa16e4cd97ac8ceff4f5ff72e2f4d5776 +[backport] fix TCK crash with shenandoah + +diff --git a/src/share/vm/opto/shenandoahSupport.cpp b/src/share/vm/opto/shenandoahSupport.cpp +--- openjdk/hotspot/src/share/vm/opto/shenandoahSupport.cpp ++++ openjdk/hotspot/src/share/vm/opto/shenandoahSupport.cpp +@@ -472,9 +472,11 @@ + Node* input = in(Memory); + if (input->Opcode() == Op_ShenandoahWBMemProj) { + Node* wb = input->in(0); +- if (wb->is_top()) return NULL; // Dead path. ++ const Type* in_type = phase->type(wb); ++ // is_top() test not sufficient here: we can come here after CCP ++ // in a dead branch of the graph that has not yet been removed. ++ if (in_type == Type::TOP) return NULL; // Dead path. + assert(wb->Opcode() == Op_ShenandoahWriteBarrier, "expect write barrier"); +- const Type* in_type = phase->type(wb); + if (is_independent(in_type, _type)) { + if (phase->is_IterGVN()) { + phase->is_IterGVN()->rehash_node_delayed(wb); diff --git a/rhbz_1538767_fix_linking2.patch b/rhbz_1538767_fix_linking2.patch new file mode 100644 index 0000000..42032aa --- /dev/null +++ b/rhbz_1538767_fix_linking2.patch @@ -0,0 +1,34 @@ +# HG changeset patch +# User sgehwolf +# Date 1523360781 -7200 +# Tue Apr 10 13:46:21 2018 +0200 +# Node ID 5f2401aef9acb6998f06cb82fdd8a84eda3e63ad +# Parent 656ab3b39178c1e4de644d490613bfd8212ae924 +8196516: libfontmanager must be built with LDFLAGS allowing unresolved symbols +Summary: Fixes build failures on some sustems with custom LDFLAGS settings. + +diff --git a/make/lib/Awt2dLibraries.gmk b/make/lib/Awt2dLibraries.gmk +--- a/make/lib/Awt2dLibraries.gmk ++++ b/make/lib/Awt2dLibraries.gmk +@@ -927,6 +927,10 @@ ifeq ($(OPENJDK_TARGET_OS), linux) + BUILD_LIBFONTMANAGER_IndicRearrangementProcessor2.cpp_CXXFLAGS := -fno-strict-overflow + endif + ++# LDFLAGS clarification: ++# Filter relevant linker flags disallowing unresolved symbols as we cannot ++# build-time decide to which library to link against (libawt_headless or ++# libawt_xawt). See JDK-8196516 for details. + $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \ + LIBRARY := fontmanager, \ + OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ +@@ -941,7 +945,8 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \ + CFLAGS_windows = -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ + -DCC_NOEX, \ + MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \ +- LDFLAGS := $(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \ ++ LDFLAGS := $(subst -Xlinker -z -Xlinker defs,, \ ++ $(subst -Wl$(COMMA)-z$(COMMA)defs,,$(LDFLAGS_JDKLIB))) $(LDFLAGS_CXX_JDK) \ + $(call SET_SHARED_LIBRARY_ORIGIN), \ + LDFLAGS_SUFFIX := $(BUILD_LIBFONTMANAGER_FONTLIB), \ + LDFLAGS_SUFFIX_linux := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \ + diff --git a/sources b/sources index 696fdf0..cdc7ff6 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (systemtap-tapset-3.6.0pre02.tar.xz) = d59858bbe9e927bdf47711e3c71c88f93567596aea3e1736b33b436a7a2cb38af25a9b4b4224ca513454b3f2d0371d14e753176c1810d9745a7e4af8edae7fb8 -SHA512 (aarch64-port-jdk8u-aarch64-jdk8u162-b12.tar.xz) = 5bb05e931a57c25c627fa0b588b74ab89e050e6d0a0b7073ba1d65aa3a3ee9f5d5e62e1fbfe3da55a472ecb3dad9cec3a6faf73b5d95b59bcefa2246caddcab3 -SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u162-b12.tar.xz) = 833a4516fc3b68fedb78feddd272d7f52e9af90aeebc3eb95aa4a86d69b4540e14ad73fdd913b7201c9663c2f136cfe3ec2e2d3b8d39cf1e99ec1c7711079740 +SHA512 (aarch64-port-jdk8u-aarch64-jdk8u171-b10.tar.xz) = f27ac541bb6b058becbfa1e56d7215ee789fca3021718f0944a3e143218a5d1e3276dc8a972d6dafa28c7a860209fa3406ad5161f6dc2d480198bbc34629c5db +SHA512 (aarch64-port-jdk8u-shenandoah-aarch64-shenandoah-jdk8u171-b10.tar.xz) = e5e356aff131bbaaffdd816ba4e7e13e1f267bc981469cd84a267959db5620e74ea9ae81f69c09457c3aff3f041195afe0e4dccb944971eb005392c3bda3d4f5