import java-1.8.0-openjdk-1.8.0.362.b09-4.el8
This commit is contained in:
parent
9c8f0b2b5b
commit
c0a6109674
18
.gitignore
vendored
18
.gitignore
vendored
@ -1,2 +1,20 @@
|
|||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.aarch64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.ppc64le.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.s390x.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.x86_64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.aarch64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.x86_64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.aarch64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.ppc64le.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.s390x.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.x86_64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.aarch64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.x86_64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.aarch64.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.ppc64le.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.s390x.tar.xz
|
||||||
|
SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.x86_64.tar.xz
|
||||||
SOURCES/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b09-4curve.tar.xz
|
SOURCES/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b09-4curve.tar.xz
|
||||||
SOURCES/tapsets-icedtea-3.15.0.tar.xz
|
SOURCES/tapsets-icedtea-3.15.0.tar.xz
|
||||||
|
@ -1,2 +1,20 @@
|
|||||||
|
5040c94ac7c5179ea177bfc9ef75328eb4241df0 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.aarch64.tar.xz
|
||||||
|
446076472f347a57c4fa011005179bebc1cde458 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.ppc64le.tar.xz
|
||||||
|
60da42b3472f51ce19b77e0dcca1bc0d3d361ba5 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.s390x.tar.xz
|
||||||
|
98265591c2ff120ac6aa962a480a0f2c81b83b3b SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.docs.el.x86_64.tar.xz
|
||||||
|
eb971e577fa2a015d196cf0b0cd153d3b1b43eb8 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.aarch64.tar.xz
|
||||||
|
b30396042c2b814aa9d1e5d7dca000bb38fb9b24 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
9de8f60988c05f5d268fd6cfb12e31302d9f6043 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.fastdebug.jdk.el.x86_64.tar.xz
|
||||||
|
d37e85a6b41ea87f803e864612a5e0b00e75c300 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.aarch64.tar.xz
|
||||||
|
446720bd908c3a94c10857344f3a1df065000f72 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.ppc64le.tar.xz
|
||||||
|
6422c248e0f9cab88f38c41e4736ad55993888e3 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.s390x.tar.xz
|
||||||
|
6a657b7794fdb110a255464b5c96ca4ce3c1e717 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.misc.el.x86_64.tar.xz
|
||||||
|
84caa2fb432ad3b86fc680417c4dd2f31b13a075 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.aarch64.tar.xz
|
||||||
|
980548c52d9b251f9f4fc5a4aef619f975e51130 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
34774ec568094a519ef14d48e1c0457e156c5d60 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.slowdebug.jdk.el.x86_64.tar.xz
|
||||||
|
b71a0a3de6ac340fac5934a6d3105791f697d460 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.aarch64.tar.xz
|
||||||
|
affb52225ed805edbad7149ceb5db7a1cdeba237 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.ppc64le.tar.xz
|
||||||
|
1a58a1681a661ad0bcac525ce43e3216b060f093 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.s390x.tar.xz
|
||||||
|
97b42aae506ddfd6b67501940764f4d2018842d5 SOURCES/java-1.8.0-openjdk-portable-1.8.0.362.b08-4.portable.unstripped.jdk.el.x86_64.tar.xz
|
||||||
10817d699dd7c85b03cfbd8eb820e00b19ddcae7 SOURCES/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b09-4curve.tar.xz
|
10817d699dd7c85b03cfbd8eb820e00b19ddcae7 SOURCES/openjdk-shenandoah-jdk8u-shenandoah-jdk8u362-b09-4curve.tar.xz
|
||||||
7ae2cba67467825b2c2a5fec7aea041865023002 SOURCES/tapsets-icedtea-3.15.0.tar.xz
|
7ae2cba67467825b2c2a5fec7aea041865023002 SOURCES/tapsets-icedtea-3.15.0.tar.xz
|
||||||
|
@ -17,7 +17,7 @@ fi
|
|||||||
d=`mktemp -d`
|
d=`mktemp -d`
|
||||||
NW=$d/$f
|
NW=$d/$f
|
||||||
pushd $d
|
pushd $d
|
||||||
jar xf $ORIG
|
unzip $ORIG
|
||||||
cat $M
|
cat $M
|
||||||
# sed -i "s/Created-By.*/Created-By: 1.7.0/g" $M
|
# sed -i "s/Created-By.*/Created-By: 1.7.0/g" $M
|
||||||
sed -i "s/Created-By.*/Created-By: $2/g" $M
|
sed -i "s/Created-By.*/Created-By: $2/g" $M
|
||||||
|
@ -123,6 +123,8 @@
|
|||||||
%global ssbd_arches x86_64
|
%global ssbd_arches x86_64
|
||||||
# Set of architectures where we verify backtraces with gdb
|
# Set of architectures where we verify backtraces with gdb
|
||||||
%global gdb_arches %{jit_arches} %{zero_arches}
|
%global gdb_arches %{jit_arches} %{zero_arches}
|
||||||
|
# Set of architectures for which we have a portable build
|
||||||
|
%global portable_build_arches %{aarch64} %{power64} s390x x86_64
|
||||||
|
|
||||||
# By default, we build a debug build during main build on JIT architectures
|
# By default, we build a debug build during main build on JIT architectures
|
||||||
%if %{with slowdebug}
|
%if %{with slowdebug}
|
||||||
@ -189,6 +191,9 @@
|
|||||||
%endif
|
%endif
|
||||||
%global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk
|
%global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk
|
||||||
|
|
||||||
|
# debugedit tool for rewriting ELF file paths
|
||||||
|
%global debugedit %{_rpmconfigdir}/debugedit
|
||||||
|
|
||||||
# Filter out flags from the optflags macro that cause problems with the OpenJDK build
|
# 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 -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)
|
# We filter out -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs)
|
||||||
@ -334,7 +339,16 @@
|
|||||||
%global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u})
|
%global updatever %(VERSION=%{whole_update}; echo ${VERSION##*u})
|
||||||
# eg jdk8u60-b27 -> b27
|
# eg jdk8u60-b27 -> b27
|
||||||
%global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-})
|
%global buildver %(VERSION=%{version_tag}; echo ${VERSION##*-})
|
||||||
%global rpmrelease 3
|
%global rpmrelease 4
|
||||||
|
# Settings used by the portable build
|
||||||
|
%global portablerelease 4
|
||||||
|
%global portablesuffix el7openjdkportable
|
||||||
|
%global portablebuilddir /builddir/build/BUILD
|
||||||
|
# Temporary override until we have the portable version in sync
|
||||||
|
# b09 only contains some build fixes for RHEL 6 & Windows
|
||||||
|
%global portablebuildver b08
|
||||||
|
%global portableversion %{javaver}.%{updatever}.%{portablebuildver}
|
||||||
|
|
||||||
# Define milestone (EA for pre-releases, GA ("fcs") for releases)
|
# Define milestone (EA for pre-releases, GA ("fcs") for releases)
|
||||||
# Release will be (where N is usually a number starting at 1):
|
# Release will be (where N is usually a number starting at 1):
|
||||||
# - 0.N%%{?extraver}%%{?dist} for EA releases,
|
# - 0.N%%{?extraver}%%{?dist} for EA releases,
|
||||||
@ -1068,7 +1082,11 @@ exit 0
|
|||||||
|
|
||||||
%define files_demo() %{expand:
|
%define files_demo() %{expand:
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
%license %{installoutputdir -- %{?1}}/jre/LICENSE
|
||||||
|
%else
|
||||||
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
||||||
|
%endif
|
||||||
}
|
}
|
||||||
|
|
||||||
%define files_src() %{expand:
|
%define files_src() %{expand:
|
||||||
@ -1080,13 +1098,21 @@ exit 0
|
|||||||
%define files_javadoc() %{expand:
|
%define files_javadoc() %{expand:
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}
|
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
%license %{installoutputdir -- %{?1}}/jre/LICENSE
|
||||||
|
%else
|
||||||
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
||||||
|
%endif
|
||||||
}
|
}
|
||||||
|
|
||||||
%define files_javadoc_zip() %{expand:
|
%define files_javadoc_zip() %{expand:
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
|
%doc %{_javadocdir}/%{uniquejavadocdir -- %{?1}}.zip
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
%license %{installoutputdir -- %{?1}}/jre/LICENSE
|
||||||
|
%else
|
||||||
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
%license %{installoutputdir -- %{?1}}/images/%{jdkimage}/jre/LICENSE
|
||||||
|
%endif
|
||||||
}
|
}
|
||||||
|
|
||||||
%define files_accessibility() %{expand:
|
%define files_accessibility() %{expand:
|
||||||
@ -1334,6 +1360,65 @@ Source20: repackReproduciblePolycies.sh
|
|||||||
Source100: config.guess
|
Source100: config.guess
|
||||||
Source101: config.sub
|
Source101: config.sub
|
||||||
|
|
||||||
|
# TODO: Portable packages are not yet available in buildroot
|
||||||
|
# Temporarily add them as sources
|
||||||
|
|
||||||
|
# aarch64
|
||||||
|
Source1000: %{name}-portable-%{portableversion}-%{portablerelease}.portable.unstripped.jdk.el.aarch64.tar.xz
|
||||||
|
Source1002: %{name}-portable-%{portableversion}-%{portablerelease}.portable.docs.el.aarch64.tar.xz
|
||||||
|
Source1003: %{name}-portable-%{portableversion}-%{portablerelease}.portable.misc.el.aarch64.tar.xz
|
||||||
|
Source1004: %{name}-portable-%{portableversion}-%{portablerelease}.portable.slowdebug.jdk.el.aarch64.tar.xz
|
||||||
|
Source1006: %{name}-portable-%{portableversion}-%{portablerelease}.portable.fastdebug.jdk.el.aarch64.tar.xz
|
||||||
|
|
||||||
|
# ppc64le
|
||||||
|
Source2000: %{name}-portable-%{portableversion}-%{portablerelease}.portable.unstripped.jdk.el.ppc64le.tar.xz
|
||||||
|
Source2002: %{name}-portable-%{portableversion}-%{portablerelease}.portable.docs.el.ppc64le.tar.xz
|
||||||
|
Source2003: %{name}-portable-%{portableversion}-%{portablerelease}.portable.misc.el.ppc64le.tar.xz
|
||||||
|
Source2004: %{name}-portable-%{portableversion}-%{portablerelease}.portable.slowdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
Source2006: %{name}-portable-%{portableversion}-%{portablerelease}.portable.fastdebug.jdk.el.ppc64le.tar.xz
|
||||||
|
|
||||||
|
# s390x
|
||||||
|
Source3000: %{name}-portable-%{portableversion}-%{portablerelease}.portable.unstripped.jdk.el.s390x.tar.xz
|
||||||
|
Source3002: %{name}-portable-%{portableversion}-%{portablerelease}.portable.docs.el.s390x.tar.xz
|
||||||
|
Source3003: %{name}-portable-%{portableversion}-%{portablerelease}.portable.misc.el.s390x.tar.xz
|
||||||
|
|
||||||
|
# x86_64
|
||||||
|
Source4000: %{name}-portable-%{portableversion}-%{portablerelease}.portable.unstripped.jdk.el.x86_64.tar.xz
|
||||||
|
Source4002: %{name}-portable-%{portableversion}-%{portablerelease}.portable.docs.el.x86_64.tar.xz
|
||||||
|
Source4003: %{name}-portable-%{portableversion}-%{portablerelease}.portable.misc.el.x86_64.tar.xz
|
||||||
|
Source4004: %{name}-portable-%{portableversion}-%{portablerelease}.portable.slowdebug.jdk.el.x86_64.tar.xz
|
||||||
|
Source4006: %{name}-portable-%{portableversion}-%{portablerelease}.portable.fastdebug.jdk.el.x86_64.tar.xz
|
||||||
|
|
||||||
|
# Setup variables to reference correct sources
|
||||||
|
%ifarch %{aarch64}
|
||||||
|
%global releasezip %{SOURCE1000}
|
||||||
|
%global docszip %{SOURCE1002}
|
||||||
|
%global misczip %{SOURCE1003}
|
||||||
|
%global slowdebugzip %{SOURCE1004}
|
||||||
|
%global fastdebugzip %{SOURCE1006}
|
||||||
|
%endif
|
||||||
|
%ifarch %{ppc64le}
|
||||||
|
%global releasezip %{SOURCE2000}
|
||||||
|
%global docszip %{SOURCE2002}
|
||||||
|
%global misczip %{SOURCE2003}
|
||||||
|
%global slowdebugzip %{SOURCE2004}
|
||||||
|
%global fastdebugzip %{SOURCE2006}
|
||||||
|
%endif
|
||||||
|
%ifarch s390x
|
||||||
|
%global releasezip %{SOURCE3000}
|
||||||
|
%global docszip %{SOURCE3002}
|
||||||
|
%global misczip %{SOURCE3003}
|
||||||
|
%global slowdebugzip %{nil}
|
||||||
|
%global fastdebugzip %{nil}
|
||||||
|
%endif
|
||||||
|
%ifarch x86_64
|
||||||
|
%global releasezip %{SOURCE4000}
|
||||||
|
%global docszip %{SOURCE4002}
|
||||||
|
%global misczip %{SOURCE4003}
|
||||||
|
%global slowdebugzip %{SOURCE4004}
|
||||||
|
%global fastdebugzip %{SOURCE4006}
|
||||||
|
%endif
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
#
|
#
|
||||||
# RPM/distribution specific patches
|
# RPM/distribution specific patches
|
||||||
@ -1521,8 +1606,19 @@ BuildRequires: pkgconfig
|
|||||||
BuildRequires: xorg-x11-proto-devel
|
BuildRequires: xorg-x11-proto-devel
|
||||||
BuildRequires: zip
|
BuildRequires: zip
|
||||||
BuildRequires: unzip
|
BuildRequires: unzip
|
||||||
|
# For definitions and macros like jvmdir
|
||||||
|
BuildRequires: javapackages-filesystem
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
# TODO: Portable packages are not yet available in buildroot
|
||||||
|
#BuildRequires: %{name}-portable-unstripped = %{VERSION}
|
||||||
|
#BuildRequires: %{name}-portable-docs = %{VERSION}
|
||||||
|
#BuildRequires: %{name}-portable-misc = %{VERSION}
|
||||||
|
#BuildRequires: %{name}-portable-devel-fastdebug = %{VERSION}
|
||||||
|
#BuildRequires: %{name}-portable-devel-slowdebug = %{VERSION}
|
||||||
|
%else
|
||||||
# Require a boot JDK which doesn't fail due to RH1482244
|
# Require a boot JDK which doesn't fail due to RH1482244
|
||||||
BuildRequires: java-%{buildjdkver}-openjdk-devel >= 1.7.0.151-2.6.11.3
|
BuildRequires: java-%{buildjdkver}-openjdk-devel >= 1.7.0.151-2.6.11.3
|
||||||
|
%endif
|
||||||
# Zero-assembler build requirement
|
# Zero-assembler build requirement
|
||||||
%ifarch %{zero_arches}
|
%ifarch %{zero_arches}
|
||||||
BuildRequires: libffi-devel
|
BuildRequires: libffi-devel
|
||||||
@ -1550,9 +1646,11 @@ Provides: bundled(lcms2) = 2.10.0
|
|||||||
Provides: bundled(libjpeg) = 6b
|
Provides: bundled(libjpeg) = 6b
|
||||||
# Version in jdk/src/share/native/sun/awt/libpng/png.h
|
# Version in jdk/src/share/native/sun/awt/libpng/png.h
|
||||||
Provides: bundled(libpng) = 1.6.37
|
Provides: bundled(libpng) = 1.6.37
|
||||||
|
%ifnarch %{portable_build_arches}
|
||||||
# We link statically against libstdc++ to increase portability
|
# We link statically against libstdc++ to increase portability
|
||||||
BuildRequires: libstdc++-static
|
BuildRequires: libstdc++-static
|
||||||
%endif
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
# this is always built, also during debug-only build
|
# this is always built, also during debug-only build
|
||||||
# when it is built in debug-only this package is just placeholder
|
# when it is built in debug-only this package is just placeholder
|
||||||
@ -1958,6 +2056,8 @@ sed -i -e "s:^security.systemCACerts=.*:security.systemCACerts=%{cacerts_file}:"
|
|||||||
|
|
||||||
%build
|
%build
|
||||||
|
|
||||||
|
%ifnarch %{portable_build_arches}
|
||||||
|
|
||||||
# How many CPU's do we have?
|
# How many CPU's do we have?
|
||||||
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
|
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
|
||||||
export NUM_PROC=${NUM_PROC:-1}
|
export NUM_PROC=${NUM_PROC:-1}
|
||||||
@ -2006,7 +2106,7 @@ function buildjdk() {
|
|||||||
libc_link_opt="static";
|
libc_link_opt="static";
|
||||||
else
|
else
|
||||||
libc_link_opt="dynamic";
|
libc_link_opt="dynamic";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Checking build JDK ${buildjdk} is operational..."
|
echo "Checking build JDK ${buildjdk} is operational..."
|
||||||
${buildjdk}/bin/java -version
|
${buildjdk}/bin/java -version
|
||||||
@ -2056,13 +2156,13 @@ function buildjdk() {
|
|||||||
cat hotspot-spec.gmk
|
cat hotspot-spec.gmk
|
||||||
|
|
||||||
make \
|
make \
|
||||||
JAVAC_FLAGS=-g \
|
JAVAC_FLAGS=-g \
|
||||||
LOG=trace \
|
LOG=trace \
|
||||||
SCTP_WERROR= \
|
SCTP_WERROR= \
|
||||||
${maketargets} || ( pwd; find ${top_srcdir_abs_path} ${top_builddir_abs_path} -name "hs_err_pid*.log" | xargs cat && false )
|
${maketargets} || ( pwd; find ${top_srcdir_abs_path} ${top_builddir_abs_path} -name "hs_err_pid*.log" | xargs cat && false )
|
||||||
|
|
||||||
popd
|
popd
|
||||||
}
|
}
|
||||||
|
|
||||||
function installjdk() {
|
function installjdk() {
|
||||||
local outputdir=${1}
|
local outputdir=${1}
|
||||||
@ -2074,12 +2174,12 @@ function installjdk() {
|
|||||||
echo "Installing images..."
|
echo "Installing images..."
|
||||||
mv ${outputdir}/images ${installdir}
|
mv ${outputdir}/images ${installdir}
|
||||||
if [ -d ${outputdir}/bundles ] ; then
|
if [ -d ${outputdir}/bundles ] ; then
|
||||||
echo "Installing bundles...";
|
echo "Installing bundles...";
|
||||||
mv ${outputdir}/bundles ${installdir} ;
|
mv ${outputdir}/bundles ${installdir} ;
|
||||||
fi
|
fi
|
||||||
if [ -d ${outputdir}/docs ] ; then
|
if [ -d ${outputdir}/docs ] ; then
|
||||||
echo "Installing docs...";
|
echo "Installing docs...";
|
||||||
mv ${outputdir}/docs ${installdir} ;
|
mv ${outputdir}/docs ${installdir} ;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%if !%{with artifacts}
|
%if !%{with artifacts}
|
||||||
@ -2088,50 +2188,37 @@ function installjdk() {
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
if [ -d ${imagepath} ] ; then
|
if [ -d ${imagepath} ] ; then
|
||||||
# the build (erroneously) removes read permissions from some jars
|
# the build (erroneously) removes read permissions from some jars
|
||||||
# this is a regression in OpenJDK 7 (our compiler):
|
# this is a regression in OpenJDK 7 (our compiler):
|
||||||
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
|
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
|
||||||
find ${imagepath} -iname '*.jar' -exec chmod ugo+r {} \;
|
find ${imagepath} -iname '*.jar' -exec chmod ugo+r {} \;
|
||||||
chmod ugo+r ${imagepath}/lib/ct.sym
|
chmod ugo+r ${imagepath}/lib/ct.sym
|
||||||
|
|
||||||
# remove redundant *diz and *debuginfo files
|
# remove redundant *diz and *debuginfo files
|
||||||
find ${imagepath} -iname '*.diz' -exec rm -v {} \;
|
find ${imagepath} -iname '*.diz' -exec rm -v {} \;
|
||||||
find ${imagepath} -iname '*.debuginfo' -exec rm -v {} \;
|
find ${imagepath} -iname '*.debuginfo' -exec rm -v {} \;
|
||||||
|
|
||||||
# Build screws up permissions on binaries
|
# Build screws up permissions on binaries
|
||||||
# https://bugs.openjdk.java.net/browse/JDK-8173610
|
# https://bugs.openjdk.java.net/browse/JDK-8173610
|
||||||
find ${imagepath} -iname '*.so' -exec chmod +x {} \;
|
find ${imagepath} -iname '*.so' -exec chmod +x {} \;
|
||||||
find ${imagepath}/bin/ -exec chmod +x {} \;
|
find ${imagepath}/bin/ -exec chmod +x {} \;
|
||||||
|
|
||||||
# Install nss.cfg right away as we will be using the JRE above
|
# Install nss.cfg right away as we will be using the JRE above
|
||||||
install -m 644 nss.cfg ${imagepath}/jre/lib/security/
|
install -m 644 nss.cfg ${imagepath}/jre/lib/security/
|
||||||
|
|
||||||
# Install nss.fips.cfg: NSS configuration for global FIPS mode (crypto-policies)
|
# Install nss.fips.cfg: NSS configuration for global FIPS mode (crypto-policies)
|
||||||
install -m 644 nss.fips.cfg ${imagepath}/jre/lib/security/
|
install -m 644 nss.fips.cfg ${imagepath}/jre/lib/security/
|
||||||
|
|
||||||
# Turn on system security properties
|
# add alt-java man page
|
||||||
sed -i -e "s:^security.useSystemPropertiesFile=.*:security.useSystemPropertiesFile=true:" \
|
pushd ${imagepath}
|
||||||
${imagepath}/jre/lib/security/java.security
|
echo "Hardened java binary recommended for launching untrusted code from the Web e.g. javaws" > man/man1/%{alt_java_name}.1
|
||||||
|
cat man/man1/java.1 >> man/man1/%{alt_java_name}.1
|
||||||
|
popd
|
||||||
|
|
||||||
# Use system-wide tzdata
|
# Print release information
|
||||||
mv ${imagepath}/jre/lib/tzdb.dat{,.upstream}
|
cat ${imagepath}/release
|
||||||
ln -sv %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/jre/lib/tzdb.dat
|
|
||||||
|
|
||||||
# Rename OpenJDK cacerts database
|
fi
|
||||||
mv ${imagepath}/jre/lib/security/cacerts{,.upstream}
|
|
||||||
# Install cacerts symlink needed by some apps which hard-code the path
|
|
||||||
ln -sv %{cacerts_file} ${imagepath}/jre/lib/security
|
|
||||||
|
|
||||||
# add alt-java man page
|
|
||||||
pushd ${imagepath}
|
|
||||||
echo "Hardened java binary recommended for launching untrusted code from the Web e.g. javaws" > man/man1/%{alt_java_name}.1
|
|
||||||
cat man/man1/java.1 >> man/man1/%{alt_java_name}.1
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Print release information
|
|
||||||
cat ${imagepath}/release
|
|
||||||
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
%if %{build_hotspot_first}
|
%if %{build_hotspot_first}
|
||||||
@ -2144,51 +2231,126 @@ function installjdk() {
|
|||||||
systemjdk=%{bootjdk}
|
systemjdk=%{bootjdk}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%endif # portable_builds
|
||||||
|
|
||||||
|
function customisejdk() {
|
||||||
|
local imagepath=${1}
|
||||||
|
|
||||||
|
if [ -d ${imagepath} ] ; then
|
||||||
|
# Turn on system security properties
|
||||||
|
sed -i -e "s:^security.useSystemPropertiesFile=.*:security.useSystemPropertiesFile=true:" \
|
||||||
|
${imagepath}/jre/lib/security/java.security
|
||||||
|
|
||||||
|
# Use system-wide tzdata
|
||||||
|
mv ${imagepath}/jre/lib/tzdb.dat{,.upstream}
|
||||||
|
ln -sv %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/jre/lib/tzdb.dat
|
||||||
|
|
||||||
|
# Rename OpenJDK cacerts database
|
||||||
|
mv ${imagepath}/jre/lib/security/cacerts{,.upstream}
|
||||||
|
# Install cacerts symlink needed by some apps which hard-code the path
|
||||||
|
ln -sv %{cacerts_file} ${imagepath}/jre/lib/security
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
for suffix in %{build_loop} ; do
|
for suffix in %{build_loop} ; do
|
||||||
if [ "x$suffix" = "x" ] ; then
|
|
||||||
debugbuild=release
|
|
||||||
else
|
|
||||||
# change --something to something
|
|
||||||
debugbuild=`echo $suffix | sed "s/-//g"`
|
|
||||||
fi
|
|
||||||
|
|
||||||
builddir=%{buildoutputdir -- $suffix}
|
%ifarch %{portable_build_arches}
|
||||||
bootbuilddir=boot${builddir}
|
|
||||||
installdir=%{installoutputdir -- $suffix}
|
|
||||||
bootinstalldir=boot${installdir}
|
|
||||||
link_opt="%{link_type}"
|
|
||||||
|
|
||||||
# Debug builds don't need same targets as release for
|
if [ "x$suffix" = "x" ] ; then
|
||||||
# build speed-up. We also avoid bootstrapping these
|
jdkzip=%{releasezip}
|
||||||
# slower builds.
|
elif [ "x$suffix" = "x%{fastdebug_suffix_unquoted}" ] ; then
|
||||||
if echo $debugbuild | grep -q "debug" ; then
|
jdkzip=%{fastdebugzip}
|
||||||
maketargets="%{debug_targets}"
|
else # slowdebug
|
||||||
run_bootstrap=false
|
jdkzip=%{slowdebugzip}
|
||||||
else
|
debugbuild=release
|
||||||
maketargets="%{release_targets}"
|
fi
|
||||||
run_bootstrap=%{bootstrap_build}
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ${run_bootstrap} ; then
|
installdir=%{installoutputdir -- ${suffix}}
|
||||||
buildjdk ${bootbuilddir} ${systemjdk} "%{bootstrap_targets}" ${debugbuild} ${link_opt}
|
imagedir=${installdir}
|
||||||
installjdk ${bootbuilddir} ${bootinstalldir}
|
|
||||||
buildjdk ${builddir} $(pwd)/${bootinstalldir}/images/%{jdkimage} "${maketargets}" ${debugbuild} ${link_opt}
|
# TODO: should verify checksums when using packages from buildroot
|
||||||
installjdk ${builddir} ${installdir}
|
tar -xJf ${jdkzip}
|
||||||
%{!?with_artifacts:rm -rf ${bootinstalldir}}
|
mkdir -p $(dirname ${installdir})
|
||||||
else
|
mv %{name}* ${installdir}
|
||||||
buildjdk ${builddir} ${systemjdk} "${maketargets}" ${debugbuild} ${link_opt}
|
# Fix build paths in ELF files so it looks like we built them
|
||||||
installjdk ${builddir} ${installdir}
|
portablenvr="%{name}-portable-%{portableversion}-%{portablerelease}.%{portablesuffix}.%{_arch}"
|
||||||
fi
|
for file in $(find ${installdir} -type f) ; do
|
||||||
|
if file ${file} | grep -q 'ELF'; then
|
||||||
|
%{debugedit} -b %{portablebuilddir}/${portablenvr} -d $(pwd) -n ${file}
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
%else
|
||||||
|
|
||||||
|
if [ "x$suffix" = "x" ] ; then
|
||||||
|
debugbuild=release
|
||||||
|
else
|
||||||
|
# change --something to something
|
||||||
|
debugbuild=`echo $suffix | sed "s/-//g"`
|
||||||
|
fi
|
||||||
|
|
||||||
|
builddir=%{buildoutputdir -- $suffix}
|
||||||
|
bootbuilddir=boot${builddir}
|
||||||
|
installdir=%{installoutputdir -- $suffix}
|
||||||
|
bootinstalldir=boot${installdir}
|
||||||
|
imagedir=${installdir}/images/%{jdkimage}
|
||||||
|
link_opt="%{link_type}"
|
||||||
|
|
||||||
|
# Debug builds don't need same targets as release for
|
||||||
|
# build speed-up. We also avoid bootstrapping these
|
||||||
|
# slower builds.
|
||||||
|
if echo $debugbuild | grep -q "debug" ; then
|
||||||
|
maketargets="%{debug_targets}"
|
||||||
|
run_bootstrap=false
|
||||||
|
else
|
||||||
|
maketargets="%{release_targets}"
|
||||||
|
run_bootstrap=%{bootstrap_build}
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ${run_bootstrap} ; then
|
||||||
|
buildjdk ${bootbuilddir} ${systemjdk} "%{bootstrap_targets}" ${debugbuild} ${link_opt}
|
||||||
|
installjdk ${bootbuilddir} ${bootinstalldir}
|
||||||
|
buildjdk ${builddir} $(pwd)/${bootinstalldir}/images/%{jdkimage} "${maketargets}" ${debugbuild} ${link_opt}
|
||||||
|
installjdk ${builddir} ${installdir}
|
||||||
|
%{!?with_artifacts:rm -rf ${bootinstalldir}}
|
||||||
|
else
|
||||||
|
buildjdk ${builddir} ${systemjdk} "${maketargets}" ${debugbuild} ${link_opt}
|
||||||
|
installjdk ${builddir} ${installdir}
|
||||||
|
fi
|
||||||
|
|
||||||
|
%endif # portable_builds
|
||||||
|
|
||||||
|
# Final setup on the main image
|
||||||
|
customisejdk ${imagedir}
|
||||||
|
|
||||||
|
# Print release information
|
||||||
|
cat ${imagedir}/release
|
||||||
|
|
||||||
# build cycles
|
# build cycles
|
||||||
done
|
done
|
||||||
|
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
|
||||||
|
docdir=%{installoutputdir -- "-docs"}
|
||||||
|
tar -xJf %{docszip}
|
||||||
|
mv %{name}*.docs.* ${docdir}
|
||||||
|
|
||||||
|
miscdir=%{installoutputdir -- "-misc"}
|
||||||
|
tar -xJf %{misczip}
|
||||||
|
mv %{name}*.misc.* ${miscdir}
|
||||||
|
|
||||||
|
%endif
|
||||||
|
|
||||||
%check
|
%check
|
||||||
|
|
||||||
# We test debug first as it will give better diagnostics on a crash
|
# We test debug first as it will give better diagnostics on a crash
|
||||||
for suffix in %{build_loop} ; do
|
for suffix in %{build_loop} ; do
|
||||||
|
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
export JAVA_HOME=$(pwd)/%{installoutputdir -- $suffix}
|
||||||
|
%else
|
||||||
export JAVA_HOME=$(pwd)/%{installoutputdir -- $suffix}/images/%{jdkimage}
|
export JAVA_HOME=$(pwd)/%{installoutputdir -- $suffix}/images/%{jdkimage}
|
||||||
|
%endif
|
||||||
|
|
||||||
# Check unlimited policy has been used
|
# Check unlimited policy has been used
|
||||||
$JAVA_HOME/bin/javac -d . %{SOURCE13}
|
$JAVA_HOME/bin/javac -d . %{SOURCE13}
|
||||||
@ -2292,7 +2454,7 @@ grep 'JavaCallWrapper::JavaCallWrapper' gdb.out
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Check src.zip has all sources. See RHBZ#1130490
|
# Check src.zip has all sources. See RHBZ#1130490
|
||||||
jar -tf $JAVA_HOME/src.zip | grep 'sun.misc.Unsafe'
|
unzip -l $JAVA_HOME/src.zip | grep 'sun.misc.Unsafe'
|
||||||
|
|
||||||
# Check class files include useful debugging information
|
# Check class files include useful debugging information
|
||||||
$JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from"
|
$JAVA_HOME/bin/javap -l java.lang.Object | grep "Compiled from"
|
||||||
@ -2312,12 +2474,32 @@ STRIP_KEEP_SYMTAB=libjvm*
|
|||||||
|
|
||||||
for suffix in %{build_loop} ; do
|
for suffix in %{build_loop} ; do
|
||||||
|
|
||||||
# Install the jdk
|
# Should match same definitions in build section
|
||||||
pushd %{installoutputdir -- $suffix}/images/%{jdkimage}
|
%ifarch %{portable_build_arches}
|
||||||
|
jdk_image=%{installoutputdir -- $suffix}
|
||||||
|
docdir=$(pwd)/%{installoutputdir -- "-docs"}
|
||||||
|
miscdir=%{installoutputdir -- "-misc"}
|
||||||
|
%else
|
||||||
|
jdk_image=%{installoutputdir -- $suffix}/images/%{jdkimage}
|
||||||
|
docdir=%{installoutputdir -- $suffix}
|
||||||
|
miscdir=%{top_level_dir_name}/jdk/src/solaris/classes/sun/awt/X11
|
||||||
|
%endif
|
||||||
|
|
||||||
# Install jsa directories so we can owe them
|
# Install release notes
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/server/
|
commondocdir=${RPM_BUILD_ROOT}%{_defaultdocdir}/%{uniquejavadocdir -- $suffix}
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/client/
|
install -d -m 755 ${commondocdir}
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
mv ${jdk_image}/NEWS ${commondocdir}
|
||||||
|
%else
|
||||||
|
cp -a %{SOURCE7} ${commondocdir}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Install the jdk
|
||||||
|
pushd ${jdk_image}
|
||||||
|
|
||||||
|
# Install jsa directories so we can owe them
|
||||||
|
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/server/
|
||||||
|
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{jredir -- $suffix}/lib/%{archinstall}/client/
|
||||||
|
|
||||||
# Install main files.
|
# Install main files.
|
||||||
install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
|
install -d -m 755 $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}
|
||||||
@ -2373,20 +2555,20 @@ popd
|
|||||||
if ! echo $suffix | grep -q "debug" ; then
|
if ! echo $suffix | grep -q "debug" ; then
|
||||||
# Install Javadoc documentation
|
# Install Javadoc documentation
|
||||||
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
|
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
|
||||||
cp -a %{installoutputdir -- $suffix}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
|
cp -a ${docdir}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
|
||||||
|
%ifarch %{portable_build_arches}
|
||||||
|
built_doc_archive=jdk-%{javaver}_%{updatever}%{milestone_version}$suffix-%{portablebuildver}-docs.zip
|
||||||
|
cp -a ${docdir}/$built_doc_archive $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
|
||||||
|
%else
|
||||||
built_doc_archive=jdk-%{javaver}_%{updatever}%{milestone_version}$suffix-%{buildver}-docs.zip
|
built_doc_archive=jdk-%{javaver}_%{updatever}%{milestone_version}$suffix-%{buildver}-docs.zip
|
||||||
cp -a %{installoutputdir -- $suffix}/bundles/$built_doc_archive $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
|
cp -a %{installoutputdir -- $suffix}/bundles/$built_doc_archive $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
|
||||||
|
%endif
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Install release notes
|
|
||||||
commondocdir=${RPM_BUILD_ROOT}%{_defaultdocdir}/%{uniquejavadocdir -- $suffix}
|
|
||||||
install -d -m 755 ${commondocdir}
|
|
||||||
cp -a %{SOURCE7} ${commondocdir}
|
|
||||||
|
|
||||||
# Install icons and menu entries
|
# Install icons and menu entries
|
||||||
for s in 16 24 32 48 ; do
|
for s in 16 24 32 48 ; do
|
||||||
install -D -p -m 644 \
|
install -D -p -m 644 \
|
||||||
%{top_level_dir_name}/jdk/src/solaris/classes/sun/awt/X11/java-icon${s}.png \
|
${miscdir}/java-icon${s}.png \
|
||||||
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png
|
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -2694,6 +2876,11 @@ cjc.mainProgram(args)
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 28 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.362.b09-4
|
||||||
|
- On portable architectures, replace build section with extraction of existing builds from portables
|
||||||
|
- Rewrite ELF files so the source file path is correct and debugsources can be assembled
|
||||||
|
- Resolves: rhbz#2150203
|
||||||
|
|
||||||
* Tue Jan 24 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.362.b09-3
|
* Tue Jan 24 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:1.8.0.362.b09-3
|
||||||
- Update cacerts patch to fix OPENJDK-1433 SecurityManager issue
|
- Update cacerts patch to fix OPENJDK-1433 SecurityManager issue
|
||||||
- Update to shenandoah-jdk8u352-b09 (GA)
|
- Update to shenandoah-jdk8u352-b09 (GA)
|
||||||
|
Loading…
Reference in New Issue
Block a user