Compare commits
No commits in common. "c8-beta" and "imports/c8/java-17-openjdk-17.0.7.0.7-3.el8" have entirely different histories.
c8-beta
...
imports/c8
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,2 @@
|
|||||||
SOURCES/openjdk-jdk17u-jdk-17.0.6+9.tar.xz
|
SOURCES/openjdk-jdk17u-jdk-17.0.7+7.tar.xz
|
||||||
SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
95213324016613e314e5c97dc87f31a0576df00c SOURCES/openjdk-jdk17u-jdk-17.0.6+9.tar.xz
|
bc3222a9f338eeb1c03f2b95f429b954c5da3fa7 SOURCES/openjdk-jdk17u-jdk-17.0.7+7.tar.xz
|
||||||
c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
||||||
|
2185
SOURCES/NEWS
2185
SOURCES/NEWS
File diff suppressed because it is too large
Load Diff
41
SOURCES/README.md
Normal file
41
SOURCES/README.md
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
OpenJDK 17 is the latest Long-Term Support (LTS) release of the Java platform.
|
||||||
|
|
||||||
|
For a list of major changes from OpenJDK 11 (java-11-openjdk), see the upstream
|
||||||
|
release page for OpenJDK 17 and the preceding interim releases:
|
||||||
|
|
||||||
|
* 12: https://openjdk.java.net/projects/jdk/12/
|
||||||
|
* 13: https://openjdk.java.net/projects/jdk/13/
|
||||||
|
* 14: https://openjdk.java.net/projects/jdk/14/
|
||||||
|
* 15: https://openjdk.java.net/projects/jdk/15/
|
||||||
|
* 16: https://openjdk.java.net/projects/jdk/16/
|
||||||
|
* 17: https://openjdk.java.net/projects/jdk/17/
|
||||||
|
|
||||||
|
# Rebuilding the OpenJDK package
|
||||||
|
|
||||||
|
The OpenJDK packages are now created from a single build which is then
|
||||||
|
packaged for different major versions of Red Hat Enterprise Linux
|
||||||
|
(RHEL). This allows the OpenJDK team to focus their efforts on the
|
||||||
|
development and testing of this single build, rather than having
|
||||||
|
multiple builds which only differ by the platform they were built on.
|
||||||
|
|
||||||
|
This does make rebuilding the package slightly more complicated than a
|
||||||
|
normal package. Modifications should be made to the
|
||||||
|
`java-17-openjdk-portable.specfile` file, which can be found with this
|
||||||
|
README file in the source RPM or installed in the documentation tree
|
||||||
|
by the `java-17-openjdk-headless` RPM.
|
||||||
|
|
||||||
|
Once the modified `java-17-openjdk-portable` RPMs are built, they
|
||||||
|
should be installed and will produce a number of tarballs in the
|
||||||
|
`/usr/lib/jvm` directory. The `java-17-openjdk` RPMs can then be
|
||||||
|
built, which will use these tarballs to create the usual RPMs found in
|
||||||
|
RHEL. The `java-17-openjdk-portable` RPMs can be uninstalled once the
|
||||||
|
desired final RPMs are produced.
|
||||||
|
|
||||||
|
Note that the `java-17-openjdk.spec` file has a hard requirement on
|
||||||
|
the exact version of java-17-openjdk-portable to use, so this will
|
||||||
|
need to be modified if the version or rpmrelease values are changed in
|
||||||
|
`java-17-openjdk-portable.specfile`.
|
||||||
|
|
||||||
|
To reduce the number of RPMs involved, the `fastdebug` and `slowdebug`
|
||||||
|
builds may be disabled using `--without fastdebug` and `--without
|
||||||
|
slowdebug`.
|
File diff suppressed because it is too large
Load Diff
1990
SOURCES/java-17-openjdk-portable.specfile
Normal file
1990
SOURCES/java-17-openjdk-portable.specfile
Normal file
File diff suppressed because it is too large
Load Diff
53
SOURCES/jdk8274864-remove_amman_cairo_hacks.patch
Normal file
53
SOURCES/jdk8274864-remove_amman_cairo_hacks.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
commit 1b3825db8631e55771fb723d4fcd10040ea15b7e
|
||||||
|
Author: duke <duke@openjdk.org>
|
||||||
|
Date: Wed Apr 12 17:25:27 2023 +0000
|
||||||
|
|
||||||
|
Backport ec199072c5867624d66840238cc8828e16ae8da7
|
||||||
|
|
||||||
|
diff --git a/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java b/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
|
||||||
|
index 6f6e190efcd..ef278203182 100644
|
||||||
|
--- a/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
|
||||||
|
+++ b/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
|
||||||
|
@@ -608,34 +608,6 @@ public final class ZoneInfoFile {
|
||||||
|
params[8] = endRule.secondOfDay * 1000;
|
||||||
|
params[9] = toSTZTime[endRule.timeDefinition];
|
||||||
|
dstSavings = (startRule.offsetAfter - startRule.offsetBefore) * 1000;
|
||||||
|
-
|
||||||
|
- // Note: known mismatching -> Asia/Amman
|
||||||
|
- // ZoneInfo : startDayOfWeek=5 <= Thursday
|
||||||
|
- // startTime=86400000 <= 24 hours
|
||||||
|
- // This: startDayOfWeek=6
|
||||||
|
- // startTime=0
|
||||||
|
- // Similar workaround needs to be applied to Africa/Cairo and
|
||||||
|
- // its endDayOfWeek and endTime
|
||||||
|
- // Below is the workarounds, it probably slows down everyone a little
|
||||||
|
- if (params[2] == 6 && params[3] == 0 &&
|
||||||
|
- (zoneId.equals("Asia/Amman"))) {
|
||||||
|
- params[2] = 5;
|
||||||
|
- params[3] = 86400000;
|
||||||
|
- }
|
||||||
|
- // Additional check for startDayOfWeek=6 and starTime=86400000
|
||||||
|
- // is needed for Asia/Amman;
|
||||||
|
- if (params[2] == 7 && params[3] == 0 &&
|
||||||
|
- (zoneId.equals("Asia/Amman"))) {
|
||||||
|
- params[2] = 6; // Friday
|
||||||
|
- params[3] = 86400000; // 24h
|
||||||
|
- }
|
||||||
|
- //endDayOfWeek and endTime workaround
|
||||||
|
- if (params[7] == 6 && params[8] == 0 &&
|
||||||
|
- (zoneId.equals("Africa/Cairo"))) {
|
||||||
|
- params[7] = 5;
|
||||||
|
- params[8] = 86400000;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
} else if (nTrans > 0) { // only do this if there is something in table already
|
||||||
|
if (lastyear < LASTYEAR) {
|
||||||
|
// ZoneInfo has an ending entry for 2037
|
||||||
|
@@ -908,7 +880,6 @@ public final class ZoneInfoFile {
|
||||||
|
this.dow = dowByte == 0 ? -1 : dowByte;
|
||||||
|
this.secondOfDay = timeByte == 31 ? in.readInt() : timeByte * 3600;
|
||||||
|
this.timeDefinition = (data & (3 << 12)) >>> 12;
|
||||||
|
-
|
||||||
|
this.standardOffset = stdByte == 255 ? in.readInt() : (stdByte - 128) * 900;
|
||||||
|
this.offsetBefore = beforeByte == 3 ? in.readInt() : standardOffset + beforeByte * 1800;
|
||||||
|
this.offsetAfter = afterByte == 3 ? in.readInt() : standardOffset + afterByte * 1800;
|
1098
SOURCES/jdk8305113-tzdata2023c.patch
Normal file
1098
SOURCES/jdk8305113-tzdata2023c.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -67,14 +67,10 @@
|
|||||||
# (initiated in https://bugzilla.redhat.com/show_bug.cgi?id=1482192)
|
# (initiated in https://bugzilla.redhat.com/show_bug.cgi?id=1482192)
|
||||||
%global debug_suffix_unquoted -slowdebug
|
%global debug_suffix_unquoted -slowdebug
|
||||||
%global fastdebug_suffix_unquoted -fastdebug
|
%global fastdebug_suffix_unquoted -fastdebug
|
||||||
%global main_suffix_unquoted -main
|
|
||||||
%global staticlibs_suffix_unquoted -staticlibs
|
|
||||||
# quoted one for shell operations
|
# quoted one for shell operations
|
||||||
%global debug_suffix "%{debug_suffix_unquoted}"
|
%global debug_suffix "%{debug_suffix_unquoted}"
|
||||||
%global fastdebug_suffix "%{fastdebug_suffix_unquoted}"
|
%global fastdebug_suffix "%{fastdebug_suffix_unquoted}"
|
||||||
%global normal_suffix ""
|
%global normal_suffix ""
|
||||||
%global main_suffix "%{main_suffix_unquoted}"
|
|
||||||
%global staticlibs_suffix "%{staticlibs_suffix_unquoted}"
|
|
||||||
|
|
||||||
%global debug_warning This package is unoptimised with full debugging. Install only as needed and remove ASAP.
|
%global debug_warning This package is unoptimised with full debugging. Install only as needed and remove ASAP.
|
||||||
%global fastdebug_warning This package is optimised with full debugging. Install only as needed and remove ASAP.
|
%global fastdebug_warning This package is optimised with full debugging. Install only as needed and remove ASAP.
|
||||||
@ -196,12 +192,6 @@
|
|||||||
# Build and test slowdebug first as it provides the best diagnostics
|
# Build and test slowdebug first as it provides the best diagnostics
|
||||||
%global build_loop %{slowdebug_build} %{fastdebug_build} %{normal_build}
|
%global build_loop %{slowdebug_build} %{fastdebug_build} %{normal_build}
|
||||||
|
|
||||||
%if %{include_staticlibs}
|
|
||||||
%global staticlibs_loop %{staticlibs_suffix}
|
|
||||||
%else
|
|
||||||
%global staticlibs_loop %{nil}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?flatpak}
|
%if 0%{?flatpak}
|
||||||
%global bootstrap_build false
|
%global bootstrap_build false
|
||||||
%else
|
%else
|
||||||
@ -236,6 +226,8 @@
|
|||||||
# JDK to use for bootstrapping
|
# JDK to use for bootstrapping
|
||||||
%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
|
||||||
@ -321,7 +313,7 @@
|
|||||||
# New Version-String scheme-style defines
|
# New Version-String scheme-style defines
|
||||||
%global featurever 17
|
%global featurever 17
|
||||||
%global interimver 0
|
%global interimver 0
|
||||||
%global updatever 6
|
%global updatever 7
|
||||||
%global patchver 0
|
%global patchver 0
|
||||||
# buildjdkver is usually same as %%{featurever},
|
# buildjdkver is usually same as %%{featurever},
|
||||||
# but in time of bootstrap of next jdk, it is featurever-1,
|
# but in time of bootstrap of next jdk, it is featurever-1,
|
||||||
@ -356,20 +348,25 @@
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%global oj_vendor_version (Red_Hat-%{version}-%{release})
|
%global oj_vendor_version (Red_Hat-%{version}-%{portablerelease})
|
||||||
|
|
||||||
# Define IcedTea version used for SystemTap tapsets and desktop file
|
# Define IcedTea version used for SystemTap tapsets and desktop file
|
||||||
%global icedteaver 6.0.0pre00-c848b93a8598
|
%global icedteaver 6.0.0pre00-c848b93a8598
|
||||||
# Define current Git revision for the FIPS support patches
|
# Define current Git revision for the FIPS support patches
|
||||||
%global fipsver 72d08e3226f
|
%global fipsver bf363eecce3
|
||||||
|
|
||||||
# Standard JPackage naming and versioning defines
|
# Standard JPackage naming and versioning defines
|
||||||
%global origin openjdk
|
%global origin openjdk
|
||||||
%global origin_nice OpenJDK
|
%global origin_nice OpenJDK
|
||||||
%global top_level_dir_name %{origin}
|
%global top_level_dir_name %{origin}
|
||||||
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
||||||
%global buildver 9
|
%global buildver 7
|
||||||
%global rpmrelease 3
|
%global rpmrelease 3
|
||||||
|
# Settings used by the portable build
|
||||||
|
%global portablerelease 2
|
||||||
|
%global portablesuffix el8
|
||||||
|
%global portablebuilddir /builddir/build/BUILD
|
||||||
|
|
||||||
# Priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit
|
# Priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit
|
||||||
%if %is_system_jdk
|
%if %is_system_jdk
|
||||||
# Using 10 digits may overflow the int used for priority, so we combine the patch and build versions
|
# Using 10 digits may overflow the int used for priority, so we combine the patch and build versions
|
||||||
@ -395,7 +392,7 @@
|
|||||||
# 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,
|
||||||
# - N%%{?extraver}{?dist} for GA releases
|
# - N%%{?extraver}{?dist} for GA releases
|
||||||
%global is_ga 0
|
%global is_ga 1
|
||||||
%if %{is_ga}
|
%if %{is_ga}
|
||||||
%global build_type GA
|
%global build_type GA
|
||||||
%global ea_designator ""
|
%global ea_designator ""
|
||||||
@ -417,7 +414,7 @@
|
|||||||
%global jdkimage jdk
|
%global jdkimage jdk
|
||||||
%global static_libs_image static-libs
|
%global static_libs_image static-libs
|
||||||
# output dir stub
|
# output dir stub
|
||||||
%define buildoutputdir() %{expand:build/jdk%{featurever}.build%{?1}}
|
%define installoutputdir() %{expand:install/jdk%{featurever}.install%{?1}}
|
||||||
# we can copy the javadoc to not arched dir, or make it not noarch
|
# we can copy the javadoc to not arched dir, or make it not noarch
|
||||||
%define uniquejavadocdir() %{expand:%{fullversion}.%{_arch}%{?1}}
|
%define uniquejavadocdir() %{expand:%{fullversion}.%{_arch}%{?1}}
|
||||||
# main id and dir of this jdk
|
# main id and dir of this jdk
|
||||||
@ -801,6 +798,8 @@ exit 0
|
|||||||
%define files_jre_headless() %{expand:
|
%define files_jre_headless() %{expand:
|
||||||
%license %{_jvmdir}/%{sdkdir -- %{?1}}/legal
|
%license %{_jvmdir}/%{sdkdir -- %{?1}}/legal
|
||||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/NEWS
|
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/NEWS
|
||||||
|
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/README.md
|
||||||
|
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/java-%{featurever}-openjdk-portable.specfile
|
||||||
%dir %{_sysconfdir}/.java/.systemPrefs
|
%dir %{_sysconfdir}/.java/.systemPrefs
|
||||||
%dir %{_sysconfdir}/.java
|
%dir %{_sysconfdir}/.java
|
||||||
%dir %{_jvmdir}/%{sdkdir -- %{?1}}
|
%dir %{_jvmdir}/%{sdkdir -- %{?1}}
|
||||||
@ -1290,9 +1289,6 @@ Source8: tapsets-icedtea-%{icedteaver}.tar.xz
|
|||||||
# Desktop files. Adapted from IcedTea
|
# Desktop files. Adapted from IcedTea
|
||||||
Source9: jconsole.desktop.in
|
Source9: jconsole.desktop.in
|
||||||
|
|
||||||
# Release notes
|
|
||||||
Source10: NEWS
|
|
||||||
|
|
||||||
# nss configuration file
|
# nss configuration file
|
||||||
Source11: nss.cfg.in
|
Source11: nss.cfg.in
|
||||||
|
|
||||||
@ -1314,6 +1310,20 @@ Source16: CheckVendor.java
|
|||||||
# Ensure translations are available for new timezones
|
# Ensure translations are available for new timezones
|
||||||
Source18: TestTranslations.java
|
Source18: TestTranslations.java
|
||||||
|
|
||||||
|
# Include portable spec and instructions on how to rebuild
|
||||||
|
Source19: README.md
|
||||||
|
Source20: java-%{featurever}-openjdk-portable.specfile
|
||||||
|
|
||||||
|
# Setup variables to reference correct sources
|
||||||
|
%global releasezip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.unstripped.jdk.%{_arch}.tar.xz
|
||||||
|
%global staticlibzip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.static-libs.%{_arch}.tar.xz
|
||||||
|
%global docszip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.docs.%{_arch}.tar.xz
|
||||||
|
%global misczip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.misc.%{_arch}.tar.xz
|
||||||
|
%global slowdebugzip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.slowdebug.jdk.%{_arch}.tar.xz
|
||||||
|
%global slowdebugstaticlibzip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.slowdebug.static-libs.%{_arch}.tar.xz
|
||||||
|
%global fastdebugzip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.fastdebug.jdk.%{_arch}.tar.xz
|
||||||
|
%global fastdebugstaticlibzip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.fastdebug.static-libs.%{_arch}.tar.xz
|
||||||
|
|
||||||
############################################
|
############################################
|
||||||
#
|
#
|
||||||
# RPM/distribution specific patches
|
# RPM/distribution specific patches
|
||||||
@ -1336,7 +1346,7 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
|||||||
|
|
||||||
# Crypto policy and FIPS support patches
|
# Crypto policy and FIPS support patches
|
||||||
# Patch is generated from the fips-17u tree at https://github.com/rh-openjdk/jdk/tree/fips-17u
|
# Patch is generated from the fips-17u tree at https://github.com/rh-openjdk/jdk/tree/fips-17u
|
||||||
# as follows: git diff %%{vcstag} src make > fips-17u-$(git show -s --format=%h HEAD).patch
|
# as follows: git diff %%{vcstag} src make test > fips-17u-$(git show -s --format=%h HEAD).patch
|
||||||
# Diff is limited to src and make subdirectories to exclude .github changes
|
# Diff is limited to src and make subdirectories to exclude .github changes
|
||||||
# Fixes currently included:
|
# Fixes currently included:
|
||||||
# PR3183, RH1340845: Follow system wide crypto policy
|
# PR3183, RH1340845: Follow system wide crypto policy
|
||||||
@ -1365,6 +1375,11 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
|||||||
# Add nss.fips.cfg support to OpenJDK tree
|
# Add nss.fips.cfg support to OpenJDK tree
|
||||||
# RH2117972: Extend the support for NSS DBs (PKCS11) in FIPS mode
|
# RH2117972: Extend the support for NSS DBs (PKCS11) in FIPS mode
|
||||||
# Remove forgotten dead code from RH2020290 and RH2104724
|
# Remove forgotten dead code from RH2020290 and RH2104724
|
||||||
|
# OJ1357: Fix issue on FIPS with a SecurityManager in place
|
||||||
|
# RH2134669: Add missing attributes when registering services in FIPS mode.
|
||||||
|
# test/jdk/sun/security/pkcs11/fips/VerifyMissingAttributes.java: fixed jtreg main class
|
||||||
|
# RH1940064: Enable XML Signature provider in FIPS mode
|
||||||
|
# RH2173781: Avoid calling C_GetInfo() too early, before cryptoki is initialized
|
||||||
Patch1001: fips-17u-%{fipsver}.patch
|
Patch1001: fips-17u-%{fipsver}.patch
|
||||||
|
|
||||||
#############################################
|
#############################################
|
||||||
@ -1375,7 +1390,17 @@ Patch1001: fips-17u-%{fipsver}.patch
|
|||||||
|
|
||||||
#############################################
|
#############################################
|
||||||
#
|
#
|
||||||
# OpenJDK patches appearing in 17.0.5
|
# OpenJDK patches appearing in 17.0.8
|
||||||
|
#
|
||||||
|
#############################################
|
||||||
|
# JDK-8274864: Remove Amman/Cairo hacks in ZoneInfoFile
|
||||||
|
Patch2001: jdk8274864-remove_amman_cairo_hacks.patch
|
||||||
|
# JDK-8305113: (tz) Update Timezone Data to 2023c
|
||||||
|
Patch2002: jdk8305113-tzdata2023c.patch
|
||||||
|
|
||||||
|
#############################################
|
||||||
|
#
|
||||||
|
# Portable build specific patches
|
||||||
#
|
#
|
||||||
#############################################
|
#############################################
|
||||||
|
|
||||||
@ -1412,13 +1437,26 @@ BuildRequires: pkgconfig
|
|||||||
BuildRequires: xorg-x11-proto-devel
|
BuildRequires: xorg-x11-proto-devel
|
||||||
BuildRequires: zip
|
BuildRequires: zip
|
||||||
BuildRequires: javapackages-filesystem
|
BuildRequires: javapackages-filesystem
|
||||||
BuildRequires: java-17-openjdk-devel
|
%if %{include_normal_build}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-unstripped = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-static-libs = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
%endif
|
||||||
|
%if %{include_fastdebug_build}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-devel-fastdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-static-libs-fastdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
%endif
|
||||||
|
%if %{include_debug_build}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-devel-slowdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-static-libs-slowdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
%endif
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-docs = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
|
BuildRequires: java-%{featurever}-openjdk-portable-misc = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||||
# Zero-assembler build requirement
|
# Zero-assembler build requirement
|
||||||
%ifarch %{zero_arches}
|
%ifarch %{zero_arches}
|
||||||
BuildRequires: libffi-devel
|
BuildRequires: libffi-devel
|
||||||
%endif
|
%endif
|
||||||
# 2022g required as of JDK-8297804
|
# 2023c required as of JDK-8305113
|
||||||
BuildRequires: tzdata-java >= 2022g
|
BuildRequires: tzdata-java >= 2023c
|
||||||
# Earlier versions have a bug in tree vectorization on PPC
|
# Earlier versions have a bug in tree vectorization on PPC
|
||||||
BuildRequires: gcc >= 4.8.3-8
|
BuildRequires: gcc >= 4.8.3-8
|
||||||
|
|
||||||
@ -1447,8 +1485,6 @@ Provides: bundled(lcms2) = 2.12.0
|
|||||||
Provides: bundled(libjpeg) = 6b
|
Provides: bundled(libjpeg) = 6b
|
||||||
# Version in src/java.desktop/share/native/libsplashscreen/libpng/png.h
|
# Version in src/java.desktop/share/native/libsplashscreen/libpng/png.h
|
||||||
Provides: bundled(libpng) = 1.6.37
|
Provides: bundled(libpng) = 1.6.37
|
||||||
# We link statically against libstdc++ to increase portability
|
|
||||||
BuildRequires: libstdc++-static
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# this is always built, also during debug-only build
|
# this is always built, also during debug-only build
|
||||||
@ -1816,6 +1852,9 @@ pushd %{top_level_dir_name}
|
|||||||
%patch1001 -p1
|
%patch1001 -p1
|
||||||
# nss.cfg PKCS11 support; must come last as it also alters java.security
|
# nss.cfg PKCS11 support; must come last as it also alters java.security
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
|
# tzdata update
|
||||||
|
%patch2001 -p1
|
||||||
|
%patch2002 -p1
|
||||||
popd # openjdk
|
popd # openjdk
|
||||||
|
|
||||||
%patch600
|
%patch600
|
||||||
@ -1890,248 +1929,79 @@ done
|
|||||||
sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg
|
sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# How many CPU's do we have?
|
|
||||||
export NUM_PROC=%(/usr/bin/getconf _NPROCESSORS_ONLN 2> /dev/null || :)
|
|
||||||
export NUM_PROC=${NUM_PROC:-1}
|
|
||||||
%if 0%{?_smp_ncpus_max}
|
|
||||||
# Honor %%_smp_ncpus_max
|
|
||||||
[ ${NUM_PROC} -gt %{?_smp_ncpus_max} ] && export NUM_PROC=%{?_smp_ncpus_max}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%ifarch s390x sparc64 alpha %{power64} %{aarch64}
|
function customisejdk() {
|
||||||
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...
|
|
||||||
# Explicitly set the C++ standard as the default has changed on GCC >= 6
|
|
||||||
EXTRA_CFLAGS="%ourcppflags"
|
|
||||||
EXTRA_CPP_FLAGS="%ourcppflags"
|
|
||||||
|
|
||||||
%ifarch %{power64} ppc
|
|
||||||
# fix rpmlint warnings
|
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-strict-aliasing"
|
|
||||||
%endif
|
|
||||||
%ifarch %{ix86}
|
|
||||||
# Align stack boundary on x86_32
|
|
||||||
EXTRA_CFLAGS="$(echo ${EXTRA_CFLAGS} | sed -e 's|-mstackrealign|-mincoming-stack-boundary=2 -mpreferred-stack-boundary=4|')"
|
|
||||||
EXTRA_CPP_FLAGS="$(echo ${EXTRA_CPP_FLAGS} | sed -e 's|-mstackrealign|-mincoming-stack-boundary=2 -mpreferred-stack-boundary=4|')"
|
|
||||||
%endif
|
|
||||||
export EXTRA_CFLAGS EXTRA_CPP_FLAGS
|
|
||||||
|
|
||||||
function buildjdk() {
|
|
||||||
local outputdir=${1}
|
|
||||||
local buildjdk=${2}
|
|
||||||
local maketargets="${3}"
|
|
||||||
local debuglevel=${4}
|
|
||||||
local link_opt=${5}
|
|
||||||
|
|
||||||
local top_dir_abs_src_path=$(pwd)/%{top_level_dir_name}
|
|
||||||
local top_dir_abs_build_path=$(pwd)/${outputdir}
|
|
||||||
|
|
||||||
# This must be set using the global, so that the
|
|
||||||
# static libraries still use a dynamic stdc++lib
|
|
||||||
if [ "x%{link_type}" = "xbundled" ] ; then
|
|
||||||
libc_link_opt="static";
|
|
||||||
else
|
|
||||||
libc_link_opt="dynamic";
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Using output directory: ${outputdir}";
|
|
||||||
echo "Checking build JDK ${buildjdk} is operational..."
|
|
||||||
${buildjdk}/bin/java -version
|
|
||||||
echo "Using make targets: ${maketargets}"
|
|
||||||
echo "Using debuglevel: ${debuglevel}"
|
|
||||||
echo "Using link_opt: ${link_opt}"
|
|
||||||
echo "Building %{newjavaver}-%{buildver}, pre=%{ea_designator}, opt=%{lts_designator}"
|
|
||||||
|
|
||||||
mkdir -p ${outputdir}
|
|
||||||
pushd ${outputdir}
|
|
||||||
|
|
||||||
# Note: zlib and freetype use %{link_type}
|
|
||||||
# rather than ${link_opt} as the system versions
|
|
||||||
# are always used in a system_libs build, even
|
|
||||||
# for the static library build
|
|
||||||
bash ${top_dir_abs_src_path}/configure \
|
|
||||||
%ifarch %{zero_arches}
|
|
||||||
--with-jvm-variants=zero \
|
|
||||||
%endif
|
|
||||||
%ifarch %{ppc64le}
|
|
||||||
--with-jobs=1 \
|
|
||||||
%endif
|
|
||||||
--with-version-build=%{buildver} \
|
|
||||||
--with-version-pre="%{ea_designator}" \
|
|
||||||
--with-version-opt=%{lts_designator} \
|
|
||||||
--with-vendor-version-string="%{oj_vendor_version}" \
|
|
||||||
--with-vendor-name="%{oj_vendor}" \
|
|
||||||
--with-vendor-url="%{oj_vendor_url}" \
|
|
||||||
--with-vendor-bug-url="%{oj_vendor_bug_url}" \
|
|
||||||
--with-vendor-vm-bug-url="%{oj_vendor_bug_url}" \
|
|
||||||
--with-boot-jdk=${buildjdk} \
|
|
||||||
--with-debug-level=${debuglevel} \
|
|
||||||
--with-native-debug-symbols="%{debug_symbols}" \
|
|
||||||
--disable-sysconf-nss \
|
|
||||||
--enable-unlimited-crypto \
|
|
||||||
--with-zlib=%{link_type} \
|
|
||||||
--with-freetype=%{link_type} \
|
|
||||||
--with-libjpeg=${link_opt} \
|
|
||||||
--with-giflib=${link_opt} \
|
|
||||||
--with-libpng=${link_opt} \
|
|
||||||
--with-lcms=${link_opt} \
|
|
||||||
--with-harfbuzz=${link_opt} \
|
|
||||||
--with-stdc++lib=${libc_link_opt} \
|
|
||||||
--with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
|
|
||||||
--with-extra-cflags="$EXTRA_CFLAGS" \
|
|
||||||
--with-extra-ldflags="%{ourldflags}" \
|
|
||||||
--with-num-cores="$NUM_PROC" \
|
|
||||||
--with-source-date="${SOURCE_DATE_EPOCH}" \
|
|
||||||
--disable-javac-server \
|
|
||||||
%ifarch %{zgc_arches}
|
|
||||||
--with-jvm-features=zgc \
|
|
||||||
%endif
|
|
||||||
--disable-warnings-as-errors
|
|
||||||
|
|
||||||
cat spec.gmk
|
|
||||||
|
|
||||||
make \
|
|
||||||
LOG=trace \
|
|
||||||
WARNINGS_ARE_ERRORS="-Wno-error" \
|
|
||||||
CFLAGS_WARNINGS_ARE_ERRORS="-Wno-error" \
|
|
||||||
$maketargets || ( pwd; find ${top_dir_abs_src_path} ${top_dir_abs_build_path} -name "hs_err_pid*.log" | xargs cat && false )
|
|
||||||
|
|
||||||
popd
|
|
||||||
}
|
|
||||||
|
|
||||||
function installjdk() {
|
|
||||||
local imagepath=${1}
|
local imagepath=${1}
|
||||||
|
|
||||||
if [ -d ${imagepath} ] ; then
|
if [ -d ${imagepath} ] ; then
|
||||||
# the build (erroneously) removes read permissions from some jars
|
# Turn on system security properties
|
||||||
# this is a regression in OpenJDK 7 (our compiler):
|
sed -i -e "s:^security.useSystemPropertiesFile=.*:security.useSystemPropertiesFile=true:" \
|
||||||
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
|
${imagepath}/conf/security/java.security
|
||||||
find ${imagepath} -iname '*.jar' -exec chmod ugo+r {} \;
|
|
||||||
|
|
||||||
# Build screws up permissions on binaries
|
# Use system-wide tzdata
|
||||||
# https://bugs.openjdk.java.net/browse/JDK-8173610
|
rm ${imagepath}/lib/tzdb.dat
|
||||||
find ${imagepath} -iname '*.so' -exec chmod +x {} \;
|
ln -s %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/lib/tzdb.dat
|
||||||
find ${imagepath}/bin/ -exec chmod +x {} \;
|
|
||||||
|
|
||||||
# Install nss.cfg right away as we will be using the JRE above
|
|
||||||
install -m 644 nss.cfg ${imagepath}/conf/security/
|
|
||||||
|
|
||||||
# Turn on system security properties
|
|
||||||
sed -i -e "s:^security.useSystemPropertiesFile=.*:security.useSystemPropertiesFile=true:" \
|
|
||||||
${imagepath}/conf/security/java.security
|
|
||||||
|
|
||||||
# Use system-wide tzdata
|
|
||||||
rm ${imagepath}/lib/tzdb.dat
|
|
||||||
ln -s %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/lib/tzdb.dat
|
|
||||||
|
|
||||||
# Create fake alt-java as a placeholder for future alt-java
|
|
||||||
pushd ${imagepath}
|
|
||||||
# add alt-java man page
|
|
||||||
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
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
%if %{build_hotspot_first}
|
|
||||||
# Build a fresh libjvm.so first and use it to bootstrap
|
|
||||||
cp -LR --preserve=mode,timestamps %{bootjdk} newboot
|
|
||||||
systemjdk=$(pwd)/newboot
|
|
||||||
buildjdk build/newboot ${systemjdk} %{hotspot_target} "release" "bundled"
|
|
||||||
mv build/newboot/jdk/lib/server/libjvm.so newboot/lib/server
|
|
||||||
%else
|
|
||||||
systemjdk=%{bootjdk}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
for suffix in %{build_loop} ; do
|
for suffix in %{build_loop} ; do
|
||||||
|
|
||||||
if [ "x$suffix" = "x" ] ; then
|
if [ "x$suffix" = "x" ] ; then
|
||||||
debugbuild=release
|
jdkzip=%{releasezip}
|
||||||
else
|
staticlibzip=%{staticlibzip}
|
||||||
# change --something to something
|
elif [ "x$suffix" = "x%{fastdebug_suffix_unquoted}" ] ; then
|
||||||
debugbuild=`echo $suffix | sed "s/-//g"`
|
jdkzip=%{fastdebugzip}
|
||||||
|
staticlibzip=%{fastdebugstaticlibzip}
|
||||||
|
else # slowdebug
|
||||||
|
jdkzip=%{slowdebugzip}
|
||||||
|
staticlibzip=%{slowdebugstaticlibzip}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
installdir=%{installoutputdir -- ${suffix}}
|
||||||
|
|
||||||
for loop in %{main_suffix} %{staticlibs_loop} ; do
|
# TODO: should verify checksums when using packages from buildroot
|
||||||
|
tar -xJf ${jdkzip}
|
||||||
|
tar -xJf ${staticlibzip}
|
||||||
|
mkdir -p $(dirname ${installdir})
|
||||||
|
mv java-%{featurever}-openjdk* ${installdir}
|
||||||
|
|
||||||
builddir=%{buildoutputdir -- ${suffix}${loop}}
|
# Fix build paths in ELF files so it looks like we built them
|
||||||
bootbuilddir=boot${builddir}
|
portablenvr="%{name}-%{VERSION}-%{portablerelease}.%{portablesuffix}.%{_arch}"
|
||||||
|
for file in $(find ${installdir} -type f) ; do
|
||||||
if test "x${loop}" = "x%{main_suffix}" ; then
|
if file ${file} | grep -q 'ELF'; then
|
||||||
link_opt="%{link_type}"
|
%{debugedit} -b %{portablebuilddir}/${portablenvr} -d $(pwd) -n ${file}
|
||||||
%if %{system_libs}
|
|
||||||
# Copy the source tree so we can remove all in-tree libraries
|
|
||||||
cp -a %{top_level_dir_name} %{top_level_dir_name_backup}
|
|
||||||
# Remove all libraries that are linked
|
|
||||||
sh %{SOURCE12} %{top_level_dir_name} full
|
|
||||||
%endif
|
|
||||||
# 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
|
fi
|
||||||
if ${run_bootstrap} ; then
|
done
|
||||||
buildjdk ${bootbuilddir} ${systemjdk} "%{bootstrap_targets}" ${debugbuild} ${link_opt}
|
|
||||||
buildjdk ${builddir} $(pwd)/${bootbuilddir}/images/%{jdkimage} "${maketargets}" ${debugbuild} ${link_opt}
|
|
||||||
rm -rf ${bootbuilddir}
|
|
||||||
else
|
|
||||||
buildjdk ${builddir} ${systemjdk} "${maketargets}" ${debugbuild} ${link_opt}
|
|
||||||
fi
|
|
||||||
%if %{system_libs}
|
|
||||||
# Restore original source tree we modified by removing full in-tree sources
|
|
||||||
rm -rf %{top_level_dir_name}
|
|
||||||
mv %{top_level_dir_name_backup} %{top_level_dir_name}
|
|
||||||
%endif
|
|
||||||
else
|
|
||||||
# Use bundled libraries for building statically
|
|
||||||
link_opt="bundled"
|
|
||||||
# Static library cycle only builds the static libraries
|
|
||||||
maketargets="%{static_libs_target}"
|
|
||||||
# Always just do the one build for the static libraries
|
|
||||||
buildjdk ${builddir} ${systemjdk} "${maketargets}" ${debugbuild} ${link_opt}
|
|
||||||
fi
|
|
||||||
|
|
||||||
done # end of main / staticlibs loop
|
|
||||||
|
|
||||||
# Final setup on the main image
|
# Final setup on the main image
|
||||||
top_dir_abs_main_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{main_suffix}}
|
customisejdk ${installdir}
|
||||||
installjdk ${top_dir_abs_main_build_path}/images/%{jdkimage}
|
|
||||||
|
|
||||||
# Print release information
|
# Print release information
|
||||||
cat ${top_dir_abs_main_build_path}/images/%{jdkimage}/release
|
cat ${installdir}/release
|
||||||
|
|
||||||
# build cycles
|
# build cycles
|
||||||
done # end of release / debug cycle loop
|
done # end of release / debug cycle loop
|
||||||
|
|
||||||
|
docdir=%{installoutputdir -- "-docs"}
|
||||||
|
tar -xJf %{docszip}
|
||||||
|
mv java-%{featurever}-openjdk*.docs.* ${docdir}
|
||||||
|
|
||||||
|
miscdir=%{installoutputdir -- "-misc"}
|
||||||
|
tar -xJf %{misczip}
|
||||||
|
mv java-%{featurever}-openjdk*.misc.* ${miscdir}
|
||||||
|
|
||||||
%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
|
||||||
|
|
||||||
top_dir_abs_main_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{main_suffix}}
|
export JAVA_HOME=$(pwd)/%{installoutputdir -- ${suffix}}
|
||||||
%if %{include_staticlibs}
|
|
||||||
top_dir_abs_staticlibs_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{staticlibs_loop}}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
export JAVA_HOME=${top_dir_abs_main_build_path}/images/%{jdkimage}
|
|
||||||
|
|
||||||
# Pre-test setup
|
# Pre-test setup
|
||||||
|
|
||||||
#check Shenandoah is enabled
|
# Check Shenandoah is enabled
|
||||||
%if %{use_shenandoah_hotspot}
|
%if %{use_shenandoah_hotspot}
|
||||||
$JAVA_HOME//bin/java -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -version
|
$JAVA_HOME/bin/java -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -version
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Check unlimited policy has been used
|
# Check unlimited policy has been used
|
||||||
@ -2161,16 +2031,20 @@ nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation
|
|||||||
if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; else false; fi
|
if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; else false; fi
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Check translations are available for new timezones
|
%if ! 0%{?flatpak}
|
||||||
|
# Check translations are available for new timezones (during flatpak builds, the
|
||||||
|
# tzdb.dat used by this test is not where the test expects it, so this is
|
||||||
|
# disabled for flatpak builds)
|
||||||
$JAVA_HOME/bin/javac -d . %{SOURCE18}
|
$JAVA_HOME/bin/javac -d . %{SOURCE18}
|
||||||
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE
|
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE
|
||||||
$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed "s|\.java||") CLDR
|
$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed "s|\.java||") CLDR
|
||||||
|
%endif
|
||||||
|
|
||||||
%if %{include_staticlibs}
|
%if %{include_staticlibs}
|
||||||
# Check debug symbols in static libraries (smoke test)
|
# Check debug symbols in static libraries (smoke test)
|
||||||
export STATIC_LIBS_HOME=${top_dir_abs_staticlibs_build_path}/images/%{static_libs_image}
|
export STATIC_LIBS_HOME=${JAVA_HOME}/lib/static/linux-%{archinstall}/glibc
|
||||||
readelf --debug-dump $STATIC_LIBS_HOME/lib/libfdlibm.a | grep w_remainder.c
|
readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep w_remainder.c
|
||||||
readelf --debug-dump $STATIC_LIBS_HOME/lib/libfdlibm.a | grep e_remainder.c
|
readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep e_remainder.c
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
so_suffix="so"
|
so_suffix="so"
|
||||||
@ -2261,11 +2135,16 @@ STRIP_KEEP_SYMTAB=libjvm*
|
|||||||
|
|
||||||
for suffix in %{build_loop} ; do
|
for suffix in %{build_loop} ; do
|
||||||
|
|
||||||
top_dir_abs_main_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{main_suffix}}
|
jdk_image=$(pwd)/%{installoutputdir -- ${suffix}}
|
||||||
%if %{include_staticlibs}
|
# Should match same definitions in build section
|
||||||
top_dir_abs_staticlibs_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{staticlibs_loop}}
|
docdir=$(pwd)/%{installoutputdir -- "-docs"}
|
||||||
%endif
|
miscdir=%{installoutputdir -- "-misc"}
|
||||||
jdk_image=${top_dir_abs_main_build_path}/images/%{jdkimage}
|
|
||||||
|
# Install release notes and rebuild instructions
|
||||||
|
commondocdir=${RPM_BUILD_ROOT}%{_defaultdocdir}/%{uniquejavadocdir -- $suffix}
|
||||||
|
install -d -m 755 ${commondocdir}
|
||||||
|
mv ${jdk_image}/NEWS ${commondocdir}
|
||||||
|
cp -a %{SOURCE19} %{SOURCE20} ${commondocdir}
|
||||||
|
|
||||||
# Install the jdk
|
# Install the jdk
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}
|
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}
|
||||||
@ -2314,35 +2193,26 @@ pushd ${jdk_image}
|
|||||||
rm -rf $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/man
|
rm -rf $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/man
|
||||||
|
|
||||||
popd
|
popd
|
||||||
# Install static libs artefacts
|
|
||||||
%if %{include_staticlibs}
|
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/lib/static/linux-%{archinstall}/glibc
|
|
||||||
cp -a ${top_dir_abs_staticlibs_build_path}/images/%{static_libs_image}/lib/*.a \
|
|
||||||
$RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/lib/static/linux-%{archinstall}/glibc
|
|
||||||
%endif
|
|
||||||
|
|
||||||
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 ${top_dir_abs_main_build_path}/images/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
|
cp -a ${docdir}/docs $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}
|
||||||
built_doc_archive=jdk-%{filever}%{ea_designator_zip}+%{buildver}%{lts_designator_zip}-docs.zip
|
built_doc_archive=jdk-%{filever}%{ea_designator_zip}+%{buildver}%{lts_designator_zip}-docs.zip
|
||||||
cp -a ${top_dir_abs_main_build_path}/bundles/${built_doc_archive} \
|
cp -a ${docdir}/${built_doc_archive} \
|
||||||
$RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip || ls -l ${top_dir_abs_main_build_path}/bundles/
|
$RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip || ls -l ${top_dir_abs_main_build_path}/bundles/
|
||||||
|
touch $RPM_BUILD_ROOT%{_javadocdir}/%{uniquejavadocdir -- $suffix}.zip
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Install release notes
|
|
||||||
commondocdir=${RPM_BUILD_ROOT}%{_defaultdocdir}/%{uniquejavadocdir -- $suffix}
|
|
||||||
install -d -m 755 ${commondocdir}
|
|
||||||
cp -a %{SOURCE10} ${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}/src/java.desktop/unix/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
|
||||||
|
|
||||||
# Install desktop files
|
# Install desktop files
|
||||||
|
# TODO: provide desktop files via portable
|
||||||
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
|
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps}
|
||||||
for e in jconsole$suffix ; do
|
for e in jconsole$suffix ; do
|
||||||
desktop-file-install --vendor=%{uniquesuffix -- $suffix} --mode=644 \
|
desktop-file-install --vendor=%{uniquesuffix -- $suffix} --mode=644 \
|
||||||
@ -2354,8 +2224,7 @@ done
|
|||||||
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
|
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs
|
||||||
|
|
||||||
# copy samples next to demos; samples are mostly js files
|
# copy samples next to demos; samples are mostly js files
|
||||||
cp -r %{top_level_dir_name}/src/sample $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/
|
cp -r ${miscdir}/sample $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir -- $suffix}/
|
||||||
|
|
||||||
|
|
||||||
# moving config files to /etc
|
# moving config files to /etc
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}
|
mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}
|
||||||
@ -2621,6 +2490,58 @@ require "copy_jdk_configs.lua"
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Apr 26 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.7.0.7-3
|
||||||
|
- Sync portable spec file with current version
|
||||||
|
- Related: rhbz#2189330
|
||||||
|
|
||||||
|
* Wed Apr 26 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.7.0.7-2
|
||||||
|
- Update to jdk-17.0.7.0+7
|
||||||
|
- Update release notes to 17.0.7.0+7
|
||||||
|
- Require tzdata 2023c due to local inclusion of JDK-8274864 & JDK-8305113
|
||||||
|
- Update generate_tarball.sh to add support for passing a boot JDK to the configure run
|
||||||
|
- Add POSIX-friendly error codes to generate_tarball.sh and fix whitespace
|
||||||
|
- Remove .jcheck and GitHub support when generating tarballs, as done in upstream release tarballs
|
||||||
|
- Update FIPS support against 17.0.7+6 and bring in latest changes:
|
||||||
|
- * RH2134669: Add missing attributes when registering services in FIPS mode.
|
||||||
|
- * test/jdk/sun/security/pkcs11/fips/VerifyMissingAttributes.java: fixed jtreg main class
|
||||||
|
- * RH1940064: Enable XML Signature provider in FIPS mode
|
||||||
|
- * RH2173781: Avoid calling C_GetInfo() too early, before cryptoki is initialized
|
||||||
|
- Fix trailing '.' in tarball name
|
||||||
|
- Use portablerelease in vendor version to avoid inclusion of dist tag
|
||||||
|
- ** This tarball is embargoed until 2023-04-18 @ 1pm PT. **
|
||||||
|
- Resolves: rhbz#2185182
|
||||||
|
- Resolves: rhbz#2186834
|
||||||
|
- Resolves: rhbz#2186826
|
||||||
|
- Resolves: rhbz#2186830
|
||||||
|
|
||||||
|
* Wed Apr 26 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.10-6
|
||||||
|
- Include the java-17-openjdk-portable.spec file with instructions on how to rebuild.
|
||||||
|
- Related: rhbz#2189330
|
||||||
|
|
||||||
|
* Tue Apr 25 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.10-5
|
||||||
|
- Replace local copies of JDK portable binaries with build dependencies
|
||||||
|
- Resolves: rhbz#2189330
|
||||||
|
|
||||||
|
* Wed Feb 15 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.10-4
|
||||||
|
- 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#2150205
|
||||||
|
|
||||||
|
* Fri Jan 20 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.10-3
|
||||||
|
- Update to jdk-17.0.6.0+10
|
||||||
|
- Update release notes to 17.0.6.0+10
|
||||||
|
- Switch to GA mode for release
|
||||||
|
- Resolves: rhbz#2160111
|
||||||
|
|
||||||
|
* Fri Jan 13 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.9-0.4.ea
|
||||||
|
- Update FIPS support to bring in latest changes
|
||||||
|
- * OJ1357: Fix issue on FIPS with a SecurityManager in place
|
||||||
|
- Related: rhbz#2117972
|
||||||
|
|
||||||
|
* Fri Jan 13 2023 Stephan Bergmann <sbergman@redhat.com> - 1:17.0.6.0.9-0.4.ea
|
||||||
|
- Fix flatpak builds by disabling TestTranslations test due to missing tzdb.dat
|
||||||
|
- Related: rhbz#2150195
|
||||||
|
|
||||||
* Wed Jan 04 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.9-0.3.ea
|
* Wed Jan 04 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:17.0.6.0.9-0.3.ea
|
||||||
- Update to jdk-17.0.6+9
|
- Update to jdk-17.0.6+9
|
||||||
- Update release notes to 17.0.6+9
|
- Update release notes to 17.0.6+9
|
||||||
|
Loading…
Reference in New Issue
Block a user