From c7e3bbc7814877d48d19f3b69eb327f3ad775dd9 Mon Sep 17 00:00:00 2001 From: Andrew Hughes Date: Fri, 17 Jul 2026 16:08:59 +0100 Subject: [PATCH] Sync the copy of the portable specfile with the latest update Related: RHEL-212095 --- java-1.8.0-openjdk-portable.specfile | 43 ++++++++++++++++++++++------ java-1.8.0-openjdk.spec | 1 + 2 files changed, 35 insertions(+), 9 deletions(-) diff --git a/java-1.8.0-openjdk-portable.specfile b/java-1.8.0-openjdk-portable.specfile index aa8fa60..f77f591 100644 --- a/java-1.8.0-openjdk-portable.specfile +++ b/java-1.8.0-openjdk-portable.specfile @@ -177,6 +177,10 @@ %endif %global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk +# Disable LTO as this causes build failures at the moment. +# See RHBZ#1861401 and https://bugs.gentoo.org/833097 +%define _lto_cflags %{nil} + # Filter out flags from the optflags macro that cause problems with the OpenJDK build # We filter out -O flags so that the optimization of HotSpot is not lowered from O3 to O2 # We filter out -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs) @@ -317,7 +321,7 @@ %global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u}) # eg jdk8u60-b27 -> b27 %global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-}) -%global rpmrelease 1 +%global rpmrelease 2 # Define milestone (EA for pre-releases, GA ("fcs") for releases) # Release will be (where N is usually a number starting at 1): # - 0.N%%{?extraver}%%{?dist} for EA releases, @@ -501,6 +505,8 @@ Patch534: rh1648246-always_instruct_vm_to_assume_multiple_processors_are_availab Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch # RH1582504: Use RSA as default for keytool, as DSA is disabled in all crypto policies except LEGACY Patch1003: rh1582504-rsa_default_for_keytool.patch +# RH1750419: Enable build of speculative store bypass hardened alt-java (CVE-2018-3639) +Patch600: rh1750419-redhat_alt_java.patch # Crypto policy and FIPS support patches # Patch is generated from the fips tree at https://github.com/rh-openjdk/jdk8u/tree/fips @@ -547,8 +553,8 @@ Patch528: pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_t # as follows: git diff fips > pr2888-rh2055274-support_system_cacerts-$(git show -s --format=%h HEAD).patch Patch539: pr2888-rh2055274-support_system_cacerts-%{cacertsver}.patch Patch541: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-devel.patch -# RH1750419: Enable build of speculative store bypass hardened alt-java (CVE-2018-3639) -Patch600: rh1750419-redhat_alt_java.patch +# JDK-8385876: [8u] hotspot/src/share/vm/code/compiledIC.cpp:406:30: error: 'this' pointer is null +Patch542: jdk8385876-zero_this_pointer_is_null.patch ############################################# # @@ -881,6 +887,7 @@ pushd %{top_level_dir_name} %patch -P502 -p1 %patch -P14 -p1 %patch -P15 -p1 +%patch -P542 -p1 popd # Early fixes @@ -959,21 +966,30 @@ export XZ_OPT="-T0" %ifarch s390x sparc64 alpha %{power64} %{aarch64} export ARCH_DATA_MODEL=64 %endif -%ifarch alpha -export CFLAGS="$CFLAGS -mieee" -%endif -# We use ourcppflags because the OpenJDK build seems to -# pass EXTRA_CFLAGS to the HotSpot C++ compiler... +# HotSpot uses EXTRA_CPP_FLAGS since JDK-8374917 in 8u492-b01 EXTRA_CFLAGS="%ourcppflags -Wno-error" EXTRA_CPP_FLAGS="%ourcppflags" + +%ifarch alpha +export EXTRA_CPP_FLAGS="$CFLAGS -mieee" +%endif + %ifarch %{power64} ppc EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-tree-vectorize" # fix rpmlint warnings EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing" +# Workaround -Wnonnull warnings (OPENJDK-4894) +EXTRA_CPP_FLAGS="$EXTRA_CPP_FLAGS -Wno-nonnull" %endif + +%ifnarch %{zero_arches} +EXTRA_CPP_FLAGS="$EXTRA_CPP_FLAGS -Wno-error=stringop-overflow" +%endif + EXTRA_ASFLAGS="${EXTRA_CFLAGS} -Wa,--generate-missing-build-notes=yes" -export EXTRA_CFLAGS EXTRA_ASFLAGS + +export EXTRA_CFLAGS EXTRA_CPP_FLAGS EXTRA_ASFLAGS function buildjdk() { local outputdir=${1} @@ -1560,6 +1576,14 @@ done %endif %changelog +* Wed Jul 15 2026 Andrew Hughes - 1:1.8.0.492.b09-2 +- Add attempted patch for JDK-8385876 to fix -Wnonnull build failure with s390x Zero on CentOS 9 +- Workaround -Wnonull failure with ppc64le on CentOS 9 using -Wno-nonnull +- Workaround -Werror=stringop-overflow failure with JIT debug builds on CentOS 9 using -Wno-error=stringop-overflow +- Resolves: OPENJDK-4893 +- Resolves: OPENJDK-4894 +- Resolves: OPENJDK-4895 + * Fri Apr 17 2026 Andrew Hughes - 1:1.8.0.492.b09-1 - Update to 8u492-b09 (GA) - Update release notes for 8u492-b09. @@ -1806,6 +1830,7 @@ done - Regenerate PR2462 patch following JDK-8315135 - Bump version of bundled libpng to 1.6.39 - Add backport of JDK-8312489 heading upstream for 8u402 (see OPENJDK-2095) +- Workaround undefined symbol: _ZN16G1TriggerClosure9do_oop_nvIjEEvPT_ by disabling LTO - ** This tarball is embargoed until 2023-10-17 @ 1pm PT. ** * Fri Sep 29 2023 Andrew Hughes - 1:1.8.0.392.b01-1 diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index 6d59f93..16cd356 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -2972,6 +2972,7 @@ cjc.mainProgram(args) %changelog * Wed Jul 15 2026 Andrew Hughes - 1:1.8.0.492.b09-3 - Add attempted patch for JDK-8385876 to fix -Wnonnull build failure with s390x Zero on CentOS 9 +- Sync the copy of the portable specfile with the latest update - Resolves: RHEL-212095 * Mon Apr 20 2026 Andrew Hughes - 1:1.8.0.492.b09-2