Build flags injection for java-openjdk.
Resolves RHBZ#1571359.
This commit is contained in:
parent
903fd83316
commit
5bda264f7f
21
JDK-8202262-libjsig.so-extra-link-flags.patch
Normal file
21
JDK-8202262-libjsig.so-extra-link-flags.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# HG changeset patch
|
||||||
|
# User sgehwolf
|
||||||
|
# Date 1524663215 -7200
|
||||||
|
# Wed Apr 25 15:33:35 2018 +0200
|
||||||
|
# Node ID c000e94e3d789bcb30d18541a3be33856bb3fe17
|
||||||
|
# Parent a29fc1f5b37d344c771f83f528dcd223ad240e6c
|
||||||
|
8202262: libjsig.so not linked with extra linker flags from configure
|
||||||
|
Reviewed-by: duke
|
||||||
|
|
||||||
|
diff --git a/make/hotspot/lib/CompileLibjsig.gmk b/make/hotspot/lib/CompileLibjsig.gmk
|
||||||
|
--- a/make/hotspot/lib/CompileLibjsig.gmk
|
||||||
|
+++ b/make/hotspot/lib/CompileLibjsig.gmk
|
||||||
|
@@ -36,7 +36,7 @@
|
||||||
|
ifeq ($(STATIC_BUILD), false)
|
||||||
|
ifeq ($(OPENJDK_TARGET_OS), linux)
|
||||||
|
LIBJSIG_CFLAGS := -fPIC -D_GNU_SOURCE -D_REENTRANT $(EXTRA_CFLAGS)
|
||||||
|
- LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE) ${LDFLAGS_NO_EXEC_STACK} $(EXTRA_CFLAGS)
|
||||||
|
+ LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE) ${LDFLAGS_NO_EXEC_STACK} $(EXTRA_LDFLAGS)
|
||||||
|
LIBJSIG_LIBS := $(LIBDL)
|
||||||
|
|
||||||
|
# NOTE: The old build compiled this library without -soname.
|
@ -64,6 +64,15 @@
|
|||||||
%global targets all docs
|
%global targets all docs
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Filter out flags from the optflags macro that cause problems with the OpenJDK build
|
||||||
|
# We filter out -O flags so that the optimisation 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)
|
||||||
|
# We replace it with -Wformat (required by -Werror=format-security) and -Wno-cpp to avoid FORTIFY_SOURCE warnings
|
||||||
|
# We filter out -fexceptions as the HotSpot build explicitly does -fno-exceptions and it's otherwise the default for C++
|
||||||
|
%global ourflags %(echo %optflags | sed -e 's|-Wall|-Wformat -Wno-cpp|' | sed -r -e 's|-O[0-9]*||')
|
||||||
|
%global ourcppflags %(echo %ourflags | sed -e 's|-fexceptions||')
|
||||||
|
%global ourldflags %{__global_ldflags}
|
||||||
|
|
||||||
# With disabled nss is NSS deactivated, so NSS_LIBDIR can contain the wrong path
|
# With disabled nss is NSS deactivated, so NSS_LIBDIR can contain the wrong path
|
||||||
# the initialisation must be here. Later the pkg-config have buggy behaviour
|
# the initialisation must be here. Later the pkg-config have buggy behaviour
|
||||||
# looks like openjdk RPM specific bug
|
# looks like openjdk RPM specific bug
|
||||||
@ -825,7 +834,7 @@ Provides: java-%{javaver}-%{origin}-src%{?1} = %{epoch}:%{version}-%{release}
|
|||||||
|
|
||||||
Name: java-%{origin}
|
Name: java-%{origin}
|
||||||
Version: %{newjavaver}.%{buildver}
|
Version: %{newjavaver}.%{buildver}
|
||||||
Release: 2%{?dist}
|
Release: 3%{?dist}
|
||||||
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons
|
# 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
|
# 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
|
# also included the epoch in their virtual provides. This created a
|
||||||
@ -905,6 +914,10 @@ Patch102: java-openjdk-s390-size_t.patch
|
|||||||
Patch103: JDK-8201788-bootcycle-images-jobs.patch
|
Patch103: JDK-8201788-bootcycle-images-jobs.patch
|
||||||
# s390 (Zero) build fix. Pending upstream.
|
# s390 (Zero) build fix. Pending upstream.
|
||||||
Patch104: JDK-8201509-s390-atomic_store.patch
|
Patch104: JDK-8201509-s390-atomic_store.patch
|
||||||
|
# libjsig.so does not receive extra ld flags when
|
||||||
|
# being built. Not an issue on JDK 11. Missing fix for
|
||||||
|
# 10 upstream.
|
||||||
|
Patch105: JDK-8202262-libjsig.so-extra-link-flags.patch
|
||||||
|
|
||||||
# aarch64 slowdebug build fix. Pending upstream
|
# aarch64 slowdebug build fix. Pending upstream
|
||||||
Patch400: JDK-8200556-aarch64-slowdebug-crash.patch
|
Patch400: JDK-8200556-aarch64-slowdebug-crash.patch
|
||||||
@ -1173,6 +1186,7 @@ pushd %{top_level_dir_name}
|
|||||||
%patch102 -p1
|
%patch102 -p1
|
||||||
%patch103 -p1
|
%patch103 -p1
|
||||||
%patch104 -p1
|
%patch104 -p1
|
||||||
|
%patch105 -p1
|
||||||
|
|
||||||
%patch400 -p1
|
%patch400 -p1
|
||||||
|
|
||||||
@ -1240,20 +1254,14 @@ export ARCH_DATA_MODEL=64
|
|||||||
export CFLAGS="$CFLAGS -mieee"
|
export CFLAGS="$CFLAGS -mieee"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
EXTRA_CFLAGS="-fstack-protector-strong"
|
EXTRA_CFLAGS="%ourcppflags -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse"
|
||||||
# see https://bugzilla.redhat.com/show_bug.cgi?id=1120792
|
EXTRA_CPP_FLAGS="%ourcppflags -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse"
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-error"
|
|
||||||
EXTRA_CPP_FLAGS="-Wno-error"
|
|
||||||
%ifarch %{power64} ppc
|
%ifarch %{power64} ppc
|
||||||
# fix rpmlint warnings
|
# fix rpmlint warnings
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
|
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} > 23
|
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -Wno-error -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse -fpermissive"
|
|
||||||
EXTRA_CPP_FLAGS="$EXTRA_CPP_FLAGS -Wno-error -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse"
|
|
||||||
%endif
|
|
||||||
|
|
||||||
(cd %{top_level_dir_name}/make/autoconf
|
(cd %{top_level_dir_name}/make/autoconf
|
||||||
bash ./autogen.sh
|
bash ./autogen.sh
|
||||||
)
|
)
|
||||||
@ -1292,6 +1300,7 @@ bash ../configure \
|
|||||||
--with-stdc++lib=dynamic \
|
--with-stdc++lib=dynamic \
|
||||||
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
|
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
|
||||||
--with-extra-cflags="$EXTRA_CFLAGS" \
|
--with-extra-cflags="$EXTRA_CFLAGS" \
|
||||||
|
--with-extra-ldflags="%{ourldflags}" \
|
||||||
--with-num-cores="$NUM_PROC" \
|
--with-num-cores="$NUM_PROC" \
|
||||||
--disable-javac-server \
|
--disable-javac-server \
|
||||||
--disable-warnings-as-errors
|
--disable-warnings-as-errors
|
||||||
@ -1730,6 +1739,11 @@ require "copy_jdk_configs.lua"
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 23 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:10.0.1.10-3
|
||||||
|
- Inject build flags properly. See RHBZ#1571359
|
||||||
|
- Added patch JDK-8202262-libjsig.so-extra-link-flags.patch
|
||||||
|
since libjsig.so doesn't get linker flags injected properly.
|
||||||
|
|
||||||
* Fri Apr 20 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:10.0.1.10-2
|
* Fri Apr 20 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:10.0.1.10-2
|
||||||
- Removed unneeded patches:
|
- Removed unneeded patches:
|
||||||
PStack-808293.patch
|
PStack-808293.patch
|
||||||
|
Loading…
Reference in New Issue
Block a user