Update to jdk-21.0.0+35
Update system crypto policy & FIPS patch from new fips-21u tree Update generate_tarball.sh to sync with upstream vanilla script inc. no more ECC removal Drop fakefeaturever now it is no longer needed Change top_level_dir_name to use the VCS tag, matching new upstream release style tarball Use upstream release URL for OpenJDK source Re-enable tzdata tests now we are on the latest JDK and things are back in sync Install jaxp.properties introduced by JDK-8303530 Install lible.so introduced by JDK-8306983 Related: RHEL-12998 Resolves: RHEL-41087
This commit is contained in:
parent
83fc55cc6b
commit
b426381567
1
.gitignore
vendored
1
.gitignore
vendored
@ -10,3 +10,4 @@
|
||||
/openjdk-jdk20u-jdk-20+36.tar.xz
|
||||
/openjdk-jdk20u-jdk-20.0.1+9.tar.xz
|
||||
/openjdk-jdk20u-jdk-20.0.2+9.tar.xz
|
||||
/openjdk-jdk21u-jdk-21+35.tar.xz
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,6 @@
|
||||
# Example:
|
||||
# When used from local repo set REPO_ROOT pointing to file:// with your repo
|
||||
# If your local repo follows upstream forests conventions, it may be enough to set OPENJDK_URL
|
||||
# If you want to use a local copy of patch PR3788, set the path to it in the PR3788 variable
|
||||
#
|
||||
# In any case you have to set PROJECT_NAME REPO_NAME and VERSION. eg:
|
||||
# PROJECT_NAME=openjdk
|
||||
@ -26,19 +25,11 @@
|
||||
# level folder, name is created, based on parameter
|
||||
#
|
||||
|
||||
if [ ! "x$PR3823" = "x" ] ; then
|
||||
if [ ! -f "$PR3823" ] ; then
|
||||
echo "You have specified PR3823 as $PR3823 but it does not exist. Exiting"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
OPENJDK_URL_DEFAULT=https://github.com
|
||||
COMPRESSION_DEFAULT=xz
|
||||
# Corresponding IcedTea version
|
||||
ICEDTEA_VERSION=15.0
|
||||
|
||||
if [ "x$1" = "xhelp" ] ; then
|
||||
echo -e "Behaviour may be specified by setting the following variables:\n"
|
||||
@ -48,8 +39,7 @@ if [ "x$1" = "xhelp" ] ; then
|
||||
echo "OPENJDK_URL - the URL to retrieve code from (optional; defaults to ${OPENJDK_URL_DEFAULT})"
|
||||
echo "COMPRESSION - the compression type to use (optional; defaults to ${COMPRESSION_DEFAULT})"
|
||||
echo "FILE_NAME_ROOT - name of the archive, minus extensions (optional; defaults to PROJECT_NAME-REPO_NAME-VERSION)"
|
||||
echo "TO_COMPRESS - what part of clone to pack (default is openjdk)"
|
||||
echo "PR3823 - the path to the PR3823 patch to apply (optional; downloaded if unavailable)"
|
||||
echo "TO_COMPRESS - what part of clone to pack (default is ${VERSION})"
|
||||
echo "BOOT_JDK - the bootstrap JDK to satisfy the configure run"
|
||||
exit 1;
|
||||
fi
|
||||
@ -126,7 +116,7 @@ if [ "x$REPO_ROOT" = "x" ] ; then
|
||||
fi;
|
||||
|
||||
if [ "x$TO_COMPRESS" = "x" ] ; then
|
||||
TO_COMPRESS="openjdk"
|
||||
TO_COMPRESS="${VERSION}"
|
||||
echo "No targets to be compressed specified, ; default to ${TO_COMPRESS}"
|
||||
fi;
|
||||
|
||||
@ -138,65 +128,35 @@ else
|
||||
mkdir "${FILE_NAME_ROOT}"
|
||||
pushd "${FILE_NAME_ROOT}"
|
||||
echo "Cloning ${VERSION} root repository from ${REPO_ROOT}"
|
||||
git clone -b ${VERSION} ${REPO_ROOT} openjdk
|
||||
git clone -b ${VERSION} ${REPO_ROOT} ${VERSION}
|
||||
popd
|
||||
fi
|
||||
pushd "${FILE_NAME_ROOT}"
|
||||
if [ -d openjdk/src ]; then
|
||||
pushd openjdk
|
||||
echo "Removing EC source code we don't build"
|
||||
CRYPTO_PATH=src/jdk.crypto.ec/share/native/libsunec/impl
|
||||
rm -vf ${CRYPTO_PATH}/ec2.h
|
||||
rm -vf ${CRYPTO_PATH}/ec2_163.c
|
||||
rm -vf ${CRYPTO_PATH}/ec2_193.c
|
||||
rm -vf ${CRYPTO_PATH}/ec2_233.c
|
||||
rm -vf ${CRYPTO_PATH}/ec2_aff.c
|
||||
rm -vf ${CRYPTO_PATH}/ec2_mont.c
|
||||
rm -vf ${CRYPTO_PATH}/ecp_192.c
|
||||
rm -vf ${CRYPTO_PATH}/ecp_224.c
|
||||
|
||||
echo "Syncing EC list with NSS"
|
||||
if [ "x$PR3823" = "x" ] ; then
|
||||
# get PR3823.patch (from https://github.com/icedtea-git/icedtea) in the ${ICEDTEA_VERSION} branch
|
||||
# Do not push it or publish it
|
||||
echo "PR3823 not found. Downloading..."
|
||||
wget -v https://github.com/icedtea-git/icedtea/raw/${ICEDTEA_VERSION}/patches/pr3823.patch
|
||||
echo "Applying ${PWD}/pr3823.patch"
|
||||
patch -Np1 < pr3823.patch
|
||||
rm pr3823.patch
|
||||
else
|
||||
echo "Applying ${PR3823}"
|
||||
patch -Np1 < $PR3823
|
||||
fi;
|
||||
find . -name '*.orig' -exec rm -vf '{}' ';'
|
||||
popd
|
||||
fi
|
||||
|
||||
# Generate .src-rev so build has knowledge of the revision the tarball was created from
|
||||
mkdir build
|
||||
pushd build
|
||||
sh ${PWD}/../openjdk/configure --with-boot-jdk=${BOOT_JDK}
|
||||
sh ${PWD}/../${VERSION}/configure --with-boot-jdk=${BOOT_JDK}
|
||||
make store-source-revision
|
||||
popd
|
||||
rm -rf build
|
||||
|
||||
# Remove commit checks
|
||||
echo "Removing $(find openjdk -name '.jcheck' -print)"
|
||||
find openjdk -name '.jcheck' -print0 | xargs -0 rm -r
|
||||
echo "Removing $(find ${VERSION} -name '.jcheck' -print)"
|
||||
find ${VERSION} -name '.jcheck' -print0 | xargs -0 rm -r
|
||||
|
||||
# Remove history and GHA
|
||||
echo "find openjdk -name '.hgtags'"
|
||||
find openjdk -name '.hgtags' -exec rm -v '{}' '+'
|
||||
echo "find openjdk -name '.hgignore'"
|
||||
find openjdk -name '.hgignore' -exec rm -v '{}' '+'
|
||||
echo "find openjdk -name '.gitattributes'"
|
||||
find openjdk -name '.gitattributes' -exec rm -v '{}' '+'
|
||||
echo "find openjdk -name '.gitignore'"
|
||||
find openjdk -name '.gitignore' -exec rm -v '{}' '+'
|
||||
echo "find openjdk -name '.git'"
|
||||
find openjdk -name '.git' -exec rm -rv '{}' '+'
|
||||
echo "find openjdk -name '.github'"
|
||||
find openjdk -name '.github' -exec rm -rv '{}' '+'
|
||||
echo "find ${VERSION} -name '.hgtags'"
|
||||
find ${VERSION} -name '.hgtags' -exec rm -v '{}' '+'
|
||||
echo "find ${VERSION} -name '.hgignore'"
|
||||
find ${VERSION} -name '.hgignore' -exec rm -v '{}' '+'
|
||||
echo "find ${VERSION} -name '.gitattributes'"
|
||||
find ${VERSION} -name '.gitattributes' -exec rm -v '{}' '+'
|
||||
echo "find ${VERSION} -name '.gitignore'"
|
||||
find ${VERSION} -name '.gitignore' -exec rm -v '{}' '+'
|
||||
echo "find ${VERSION} -name '.git'"
|
||||
find ${VERSION} -name '.git' -exec rm -rv '{}' '+'
|
||||
echo "find ${VERSION} -name '.github'"
|
||||
find ${VERSION} -name '.github' -exec rm -rv '{}' '+'
|
||||
|
||||
echo "Compressing remaining forest"
|
||||
if [ "X$COMPRESSION" = "Xxz" ] ; then
|
||||
|
@ -315,15 +315,14 @@
|
||||
%endif
|
||||
|
||||
# New Version-String scheme-style defines
|
||||
%global featurever 20
|
||||
%global fakefeaturever 21
|
||||
%global featurever 21
|
||||
%global interimver 0
|
||||
%global updatever 2
|
||||
%global updatever 0
|
||||
%global patchver 0
|
||||
# buildjdkver is usually same as %%{featurever},
|
||||
# but in time of bootstrap of next jdk, it is featurever-1,
|
||||
# and this it is better to change it here, on single place
|
||||
%global buildjdkver %{fakefeaturever}
|
||||
%global buildjdkver 20
|
||||
# We don't add any LTS designator for STS packages (Fedora and EPEL).
|
||||
# We need to explicitly exclude EPEL as it would have the %%{rhel} macro defined.
|
||||
%if 0%{?rhel} && !0%{?epel}
|
||||
@ -334,7 +333,7 @@
|
||||
%global lts_designator_zip ""
|
||||
%endif
|
||||
# JDK to use for bootstrapping
|
||||
%global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk
|
||||
%global bootjdk /usr/lib/jvm/java-%{featurever}-openjdk
|
||||
# Define whether to use the bootstrap JDK directly or with a fresh libjvm.so
|
||||
# This will only work where the bootstrap JDK is the same major version
|
||||
# as the JDK being built
|
||||
@ -368,14 +367,21 @@
|
||||
# Define IcedTea version used for SystemTap tapsets and desktop file
|
||||
%global icedteaver 6.0.0pre00-c848b93a8598
|
||||
# Define current Git revision for the FIPS support patches
|
||||
%global fipsver fd3de3d95b5
|
||||
%global fipsver 75ffdc48eda
|
||||
# Define JDK versions
|
||||
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
|
||||
%global javaver %{featurever}
|
||||
# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version used in filenames
|
||||
%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done; echo ${svn})
|
||||
# The tag used to create the OpenJDK tarball
|
||||
%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
|
||||
|
||||
# Standard JPackage naming and versioning defines
|
||||
%global origin openjdk
|
||||
%global origin_nice OpenJDK
|
||||
%global top_level_dir_name %{origin}
|
||||
%global top_level_dir_name %{vcstag}
|
||||
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
||||
%global buildver 9
|
||||
%global buildver 35
|
||||
%global rpmrelease 1
|
||||
#%%global tagsuffix %%{nil}
|
||||
# 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
|
||||
@ -390,15 +396,6 @@
|
||||
# for techpreview, using 1, so slowdebugs can have 0
|
||||
%global priority %( printf '%08d' 1 )
|
||||
%endif
|
||||
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
|
||||
# Force 21 until we are actually ready to build that JDK version
|
||||
%global javaver %{fakefeaturever}
|
||||
|
||||
# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version used in filenames
|
||||
%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done; echo ${svn})
|
||||
|
||||
# The tag used to create the OpenJDK tarball
|
||||
%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
|
||||
|
||||
# Define milestone (EA for pre-releases, GA for releases)
|
||||
# Release will be (where N is usually a number starting at 1):
|
||||
@ -420,15 +417,15 @@
|
||||
%endif
|
||||
|
||||
# parametrized macros are order-sensitive
|
||||
%global compatiblename java-%{fakefeaturever}-%{origin}
|
||||
%global compatiblename java-%{featurever}-%{origin}
|
||||
%global fullversion %{compatiblename}-%{version}-%{release}
|
||||
# images directories from upstream build
|
||||
%global jdkimage jdk
|
||||
%global static_libs_image static-libs
|
||||
# output dir stub
|
||||
%define buildoutputdir() %{expand:build/jdk%{fakefeaturever}.build%{?1}}
|
||||
%define installoutputdir() %{expand:install/jdk%{fakefeaturever}.install%{?1}}
|
||||
%define packageoutputdir() %{expand:packages/jdk%{fakefeaturever}.packages%{?1}}
|
||||
%define buildoutputdir() %{expand:build/jdk%{featurever}.build%{?1}}
|
||||
%define installoutputdir() %{expand:install/jdk%{featurever}.install%{?1}}
|
||||
%define packageoutputdir() %{expand:packages/jdk%{featurever}.packages%{?1}}
|
||||
# we can copy the javadoc to not arched dir, or make it not noarch
|
||||
%define uniquejavadocdir() %{expand:%{fullversion}.%{_arch}%{?1}}
|
||||
# main id and dir of this jdk
|
||||
@ -581,9 +578,8 @@ Group: Development/Languages
|
||||
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 and ISC and FTL and RSA
|
||||
URL: http://openjdk.java.net/
|
||||
|
||||
|
||||
# The source tarball, generated using generate_source_tarball.sh
|
||||
Source0: openjdk-jdk%{featurever}u-%{vcstag}.tar.xz
|
||||
Source0: https://openjdk-sources.osci.io/openjdk%{featurever}/openjdk-jdk%{featurever}u-%{vcstag}.tar.xz
|
||||
|
||||
# Use 'icedtea_sync.sh' to update the following
|
||||
# They are based on code contained in the IcedTea project (6.x).
|
||||
@ -636,8 +632,8 @@ Patch600: rh1750419-redhat_alt_java.patch
|
||||
Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-devel.patch
|
||||
|
||||
# Crypto policy and FIPS support patches
|
||||
# Patch is generated from the fips-20u tree at https://github.com/rh-openjdk/jdk/tree/fips-20u
|
||||
# as follows: git diff %%{vcstag} src make test > fips-20u-$(git show -s --format=%h HEAD).patch
|
||||
# Patch is generated from the fips-21u tree at https://github.com/rh-openjdk/jdk/tree/fips-21u
|
||||
# as follows: git diff %%{vcstag} src make test > fips-21u-$(git show -s --format=%h HEAD).patch
|
||||
# Diff is limited to src and make subdirectories to exclude .github changes
|
||||
# Fixes currently included:
|
||||
# PR3183, RH1340845: Follow system wide crypto policy
|
||||
@ -661,7 +657,7 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
||||
# RH2104724: Avoid import/export of DH private keys
|
||||
# RH2092507: P11Key.getEncoded does not work for DH keys in FIPS mode
|
||||
# Build the systemconf library on all platforms
|
||||
# RH2048582: Support PKCS#12 keystores
|
||||
# RH2048582: Support PKCS#12 keystores [now part of JDK-8301553 upstream]
|
||||
# RH2020290: Support TLS 1.3 in FIPS mode
|
||||
# Add nss.fips.cfg support to OpenJDK tree
|
||||
# RH2117972: Extend the support for NSS DBs (PKCS11) in FIPS mode
|
||||
@ -670,8 +666,8 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
||||
# 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-20u-%{fipsver}.patch
|
||||
# RH2173781: Avoid calling C_GetInfo() too early, before cryptoki is initialized [now part of JDK-8301553 upstream]
|
||||
Patch1001: fips-%{featurever}u-%{fipsver}.patch
|
||||
|
||||
#############################################
|
||||
#
|
||||
@ -730,7 +726,7 @@ BuildRequires: tar
|
||||
BuildRequires: unzip
|
||||
# Not needed for portables
|
||||
# BuildRequires: javapackages-filesystem
|
||||
BuildRequires: java-%{buildjdkver}-openjdk-devel
|
||||
BuildRequires: java-%{featurever}-openjdk-devel
|
||||
# Zero-assembler build requirement
|
||||
%ifarch %{zero_arches}
|
||||
BuildRequires: libffi-devel
|
||||
@ -972,9 +968,9 @@ pushd %{top_level_dir_name}
|
||||
%patch1001 -p1
|
||||
# nss.cfg PKCS11 support; must come last as it also alters java.security
|
||||
%patch1000 -p1
|
||||
%patch600 -p1
|
||||
popd # openjdk
|
||||
|
||||
%patch600
|
||||
|
||||
# The OpenJDK version file includes the current
|
||||
# upstream version information. For some reason,
|
||||
@ -1447,21 +1443,18 @@ if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; els
|
||||
# tzdb.dat used by this test is not where the test expects it, so this is
|
||||
# disabled for flatpak builds)
|
||||
# Disable test until we are on the latest JDK
|
||||
%if %{buildjdkver} == %{featurever}
|
||||
$JAVA_HOME/bin/javac -d . %{SOURCE18}
|
||||
$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
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{include_staticlibs}
|
||||
# Check debug symbols in static libraries (smoke test)
|
||||
export STATIC_LIBS_HOME=${top_dir_abs_staticlibs_build_path}/images/%{static_libs_image}
|
||||
ls -l $STATIC_LIBS_HOME
|
||||
ls -l $STATIC_LIBS_HOME/lib
|
||||
# they are here, but grep do not find the remainders
|
||||
#readelf --debug-dump $STATIC_LIBS_HOME/lib/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/lib/libnet.a | grep Inet4AddressImpl.c
|
||||
readelf --debug-dump $STATIC_LIBS_HOME/lib/libnet.a | grep Inet6AddressImpl.c
|
||||
%endif
|
||||
|
||||
# Release builds strip the debug symbols into external .debuginfo files
|
||||
@ -1678,6 +1671,20 @@ done
|
||||
%{_jvmdir}/%{miscportablearchive}.sha256sum
|
||||
|
||||
%changelog
|
||||
* Mon Aug 21 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:21.0.0.0.35-1
|
||||
- Update to jdk-21.0.0+35
|
||||
- Update release notes to 21.0.0+35
|
||||
- Update system crypto policy & FIPS patch from new fips-21u tree
|
||||
- Update generate_tarball.sh to sync with upstream vanilla script inc. no more ECC removal
|
||||
- Drop fakefeaturever now it is no longer needed
|
||||
- Hardcode buildjdkver while the build JDK is not yet 21
|
||||
- Change top_level_dir_name to use the VCS tag, matching new upstream release style tarball
|
||||
- Use upstream release URL for OpenJDK source
|
||||
- Re-enable tzdata tests now we are on the latest JDK and things are back in sync
|
||||
|
||||
* Mon Aug 21 2023 Petra Alice Mikova <pmikova@redhat.com> - 1:21.0.0.0.35-1
|
||||
- Replace smoke test files used in the staticlibs test, as fdlibm was removed by JDK-8303798
|
||||
|
||||
* Wed Aug 16 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:20.0.2.0.9-1
|
||||
- Update to jdk-20.0.2+9
|
||||
- Update release notes to 20.0.2+9
|
||||
|
@ -299,10 +299,9 @@
|
||||
%endif
|
||||
|
||||
# New Version-String scheme-style defines
|
||||
%global featurever 20
|
||||
%global fakefeaturever 21
|
||||
%global featurever 21
|
||||
%global interimver 0
|
||||
%global updatever 2
|
||||
%global updatever 0
|
||||
%global patchver 0
|
||||
# We don't add any LTS designator for STS packages (Fedora and EPEL).
|
||||
# We need to explicitly exclude EPEL as it would have the %%{rhel} macro defined.
|
||||
@ -310,8 +309,8 @@
|
||||
%global lts_designator "LTS"
|
||||
%global lts_designator_zip -%{lts_designator}
|
||||
%else
|
||||
%global lts_designator ""
|
||||
%global lts_designator_zip ""
|
||||
%global lts_designator ""
|
||||
%global lts_designator_zip ""
|
||||
%endif
|
||||
|
||||
# Define vendor information used by OpenJDK
|
||||
@ -338,14 +337,21 @@
|
||||
# Define IcedTea version used for SystemTap tapsets and desktop file
|
||||
%global icedteaver 6.0.0pre00-c848b93a8598
|
||||
# Define current Git revision for the FIPS support patches
|
||||
%global fipsver fd3de3d95b5
|
||||
%global fipsver 75ffdc48eda
|
||||
# Define JDK versions
|
||||
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
|
||||
%global javaver %{featurever}
|
||||
# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version used in filenames
|
||||
%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done; echo ${svn})
|
||||
# The tag used to create the OpenJDK tarball
|
||||
%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
|
||||
|
||||
# Standard JPackage naming and versioning defines
|
||||
%global origin openjdk
|
||||
%global origin_nice OpenJDK
|
||||
%global top_level_dir_name %{origin}
|
||||
%global top_level_dir_name %{vcstag}
|
||||
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
||||
%global buildver 9
|
||||
%global buildver 35
|
||||
%global rpmrelease 1
|
||||
# Settings used by the portable build
|
||||
%global portablerelease 1
|
||||
@ -364,15 +370,6 @@
|
||||
# for techpreview, using 1, so slowdebugs can have 0
|
||||
%global priority %( printf '%08d' 1 )
|
||||
%endif
|
||||
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
|
||||
# Force 21 until we are actually ready to build that JDK version
|
||||
%global javaver %{fakefeaturever}
|
||||
|
||||
# Strip up to 6 trailing zeros in newjavaver, as the JDK does, to get the correct version used in filenames
|
||||
%global filever %(svn=%{newjavaver}; for i in 1 2 3 4 5 6 ; do svn=${svn%%.0} ; done; echo ${svn})
|
||||
|
||||
# The tag used to create the OpenJDK tarball
|
||||
%global vcstag jdk-%{filever}+%{buildver}%{?tagsuffix:-%{tagsuffix}}
|
||||
|
||||
# Define milestone (EA for pre-releases, GA for releases)
|
||||
# Release will be (where N is usually a number starting at 1):
|
||||
@ -394,13 +391,13 @@
|
||||
%endif
|
||||
|
||||
# parametrized macros are order-sensitive
|
||||
%global compatiblename java-%{fakefeaturever}-%{origin}
|
||||
%global compatiblename java-%{featurever}-%{origin}
|
||||
%global fullversion %{compatiblename}-%{version}-%{release}
|
||||
# images directories from upstream build
|
||||
%global jdkimage jdk
|
||||
%global static_libs_image static-libs
|
||||
# output dir stub
|
||||
%define installoutputdir() %{expand:install/jdk%{fakefeaturever}.install%{?1}}
|
||||
%define installoutputdir() %{expand:install/jdk%{featurever}.install%{?1}}
|
||||
# we can copy the javadoc to not arched dir, or make it not noarch
|
||||
%define uniquejavadocdir() %{expand:%{fullversion}.%{_arch}%{?1}}
|
||||
# main id and dir of this jdk
|
||||
@ -410,7 +407,7 @@
|
||||
# fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1590796#c14
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1655938
|
||||
%global _privatelibs libsplashscreen[.]so.*|libawt_xawt[.]so.*|libjli[.]so.*|libattach[.]so.*|libawt[.]so.*|libextnet[.]so.*|libawt_headless[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjimage[.]so.*|libjsound[.]so.*|liblcms[.]so.*|libmanagement[.]so.*|libmanagement_agent[.]so.*|libmanagement_ext[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libprefs[.]so.*|librmi[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsystemconf[.]so.*|libzip[.]so.*%{freetype_lib}
|
||||
%global _privatelibs libsplashscreen[.]so.*|libawt_xawt[.]so.*|libjli[.]so.*|libattach[.]so.*|libawt[.]so.*|libextnet[.]so.*|libawt_headless[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjimage[.]so.*|libjsound[.]so.*|liblcms[.]so.*|lible[.]so.*|libmanagement[.]so.*|libmanagement_agent[.]so.*|libmanagement_ext[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libprefs[.]so.*|librmi[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsystemconf[.]so.*|libzip[.]so.*%{freetype_lib}
|
||||
%global _publiclibs libjawt[.]so.*|libjava[.]so.*|libjvm[.]so.*|libverify[.]so.*|libjsig[.]so.*
|
||||
%if %is_system_jdk
|
||||
%global __provides_exclude ^(%{_privatelibs})$
|
||||
@ -820,7 +817,7 @@ exit 0
|
||||
%license %{_jvmdir}/%{sdkdir -- %{?1}}/legal
|
||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/NEWS
|
||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/README.md
|
||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/java-%{fakefeaturever}-openjdk-portable.specfile
|
||||
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/java-%{featurever}-openjdk-portable.specfile
|
||||
%dir %{_sysconfdir}/.java/.systemPrefs
|
||||
%dir %{_sysconfdir}/.java
|
||||
%dir %{_jvmdir}/%{sdkdir -- %{?1}}
|
||||
@ -865,6 +862,7 @@ exit 0
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libjimage.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libjsound.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/liblcms.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/lible.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libmanagement.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libmanagement_agent.so
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libmanagement_ext.so
|
||||
@ -921,7 +919,6 @@ exit 0
|
||||
%{etcjavadir -- %{?1}}/conf/security/policy/README.txt
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/java.policy
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/java.security
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/logging.properties
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/nss.cfg
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/nss.fips.cfg
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/management/jmxremote.access
|
||||
@ -929,6 +926,8 @@ exit 0
|
||||
%config %{etcjavadir -- %{?1}}/conf/management/jmxremote.password.template
|
||||
%config %{etcjavadir -- %{?1}}/conf/sdp/sdp.conf.template
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/management/management.properties
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/jaxp.properties
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/logging.properties
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/net.properties
|
||||
%config(noreplace) %{etcjavadir -- %{?1}}/conf/sound.properties
|
||||
%{_jvmdir}/%{sdkdir -- %{?1}}/conf
|
||||
@ -1305,9 +1304,8 @@ Group: Development/Languages
|
||||
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 and ISC and FTL and RSA
|
||||
URL: http://openjdk.java.net/
|
||||
|
||||
|
||||
# The source tarball, generated using generate_source_tarball.sh
|
||||
Source0: openjdk-jdk%{featurever}u-%{vcstag}.tar.xz
|
||||
Source0: https://openjdk-sources.osci.io/openjdk%{featurever}/openjdk-jdk%{featurever}u-%{vcstag}.tar.xz
|
||||
|
||||
# Use 'icedtea_sync.sh' to update the following
|
||||
# They are based on code contained in the IcedTea project (6.x).
|
||||
@ -1340,7 +1338,7 @@ Source18: TestTranslations.java
|
||||
|
||||
# Include portable spec and instructions on how to rebuild
|
||||
Source19: README.md
|
||||
Source20: java-%{fakefeaturever}-openjdk-portable.specfile
|
||||
Source20: java-%{featurever}-openjdk-portable.specfile
|
||||
|
||||
# Setup variables to reference correct sources
|
||||
%global releasezip %{_jvmdir}/%{name}-%{version}-%{portablerelease}.portable.unstripped.jdk.%{_arch}.tar.xz
|
||||
@ -1373,8 +1371,8 @@ Patch3: rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk1
|
||||
Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-devel.patch
|
||||
|
||||
# Crypto policy and FIPS support patches
|
||||
# Patch is generated from the fips-20u tree at https://github.com/rh-openjdk/jdk/tree/fips-20u
|
||||
# as follows: git diff %%{vcstag} src make test > fips-20u-$(git show -s --format=%h HEAD).patch
|
||||
# Patch is generated from the fips-21u tree at https://github.com/rh-openjdk/jdk/tree/fips-21u
|
||||
# as follows: git diff %%{vcstag} src make test > fips-21u-$(git show -s --format=%h HEAD).patch
|
||||
# Diff is limited to src and make subdirectories to exclude .github changes
|
||||
# Fixes currently included:
|
||||
# PR3183, RH1340845: Follow system wide crypto policy
|
||||
@ -1398,7 +1396,7 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
||||
# RH2104724: Avoid import/export of DH private keys
|
||||
# RH2092507: P11Key.getEncoded does not work for DH keys in FIPS mode
|
||||
# Build the systemconf library on all platforms
|
||||
# RH2048582: Support PKCS#12 keystores
|
||||
# RH2048582: Support PKCS#12 keystores [now part of JDK-8301553 upstream]
|
||||
# RH2020290: Support TLS 1.3 in FIPS mode
|
||||
# Add nss.fips.cfg support to OpenJDK tree
|
||||
# RH2117972: Extend the support for NSS DBs (PKCS11) in FIPS mode
|
||||
@ -1407,8 +1405,8 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
||||
# 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-20u-%{fipsver}.patch
|
||||
# RH2173781: Avoid calling C_GetInfo() too early, before cryptoki is initialized [now part of JDK-8301553 upstream]
|
||||
Patch1001: fips-%{featurever}u-%{fipsver}.patch
|
||||
|
||||
#############################################
|
||||
#
|
||||
@ -1462,19 +1460,19 @@ BuildRequires: xorg-x11-proto-devel
|
||||
BuildRequires: zip
|
||||
BuildRequires: javapackages-filesystem
|
||||
%if %{include_normal_build}
|
||||
BuildRequires: java-%{fakefeaturever}-openjdk-portable-unstripped = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{fakefeaturever}-openjdk-portable-static-libs = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
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-%{fakefeaturever}-openjdk-portable-devel-fastdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{fakefeaturever}-openjdk-portable-static-libs-fastdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
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-%{fakefeaturever}-openjdk-portable-devel-slowdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{fakefeaturever}-openjdk-portable-static-libs-slowdebug = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
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-%{fakefeaturever}-openjdk-portable-docs = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{fakefeaturever}-openjdk-portable-misc = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{featurever}-openjdk-portable-docs = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
BuildRequires: java-%{featurever}-openjdk-portable-misc = %{epoch}:%{version}-%{portablerelease}.%{portablesuffix}
|
||||
# Zero-assembler build requirement
|
||||
%ifarch %{zero_arches}
|
||||
BuildRequires: libffi-devel
|
||||
@ -1877,9 +1875,9 @@ pushd %{top_level_dir_name}
|
||||
%patch1001 -p1
|
||||
# nss.cfg PKCS11 support; must come last as it also alters java.security
|
||||
%patch1000 -p1
|
||||
%patch600 -p1
|
||||
popd # openjdk
|
||||
|
||||
%patch600
|
||||
|
||||
# The OpenJDK version file includes the current
|
||||
# upstream version information. For some reason,
|
||||
@ -1963,12 +1961,6 @@ function customisejdk() {
|
||||
# Use system-wide tzdata
|
||||
rm ${imagepath}/lib/tzdb.dat
|
||||
ln -s %{_datadir}/javazi-1.8/tzdb.dat ${imagepath}/lib/tzdb.dat
|
||||
|
||||
# Add temporary empty nss.fips.cfg until full FIPS patches are restored
|
||||
%if %{fakefeaturever} > %{featurever}
|
||||
touch ${imagepath}/conf/security/nss.fips.cfg
|
||||
%endif
|
||||
|
||||
fi
|
||||
}
|
||||
|
||||
@ -1991,7 +1983,7 @@ for suffix in %{build_loop} ; do
|
||||
tar -xJf ${jdkzip}
|
||||
tar -xJf ${staticlibzip}
|
||||
mkdir -p $(dirname ${installdir})
|
||||
mv java-%{fakefeaturever}-openjdk* ${installdir}
|
||||
mv java-%{featurever}-openjdk* ${installdir}
|
||||
|
||||
# Fix build paths in ELF files so it looks like we built them
|
||||
portablenvr="%{name}-%{VERSION}-%{portablerelease}.%{portablesuffix}.%{_arch}"
|
||||
@ -2012,11 +2004,11 @@ done # end of release / debug cycle loop
|
||||
|
||||
docdir=%{installoutputdir -- "-docs"}
|
||||
tar -xJf %{docszip}
|
||||
mv java-%{fakefeaturever}-openjdk*.docs.* ${docdir}
|
||||
mv java-%{featurever}-openjdk*.docs.* ${docdir}
|
||||
|
||||
miscdir=%{installoutputdir -- "-misc"}
|
||||
tar -xJf %{misczip}
|
||||
mv java-%{fakefeaturever}-openjdk*.misc.* ${miscdir}
|
||||
mv java-%{featurever}-openjdk*.misc.* ${miscdir}
|
||||
|
||||
%check
|
||||
|
||||
@ -2064,18 +2056,16 @@ if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; els
|
||||
# tzdb.dat used by this test is not where the test expects it, so this is
|
||||
# disabled for flatpak builds)
|
||||
# Disable test until we are on the latest JDK
|
||||
%if %{fakefeaturever} == %{featurever}
|
||||
$JAVA_HOME/bin/javac -d . %{SOURCE18}
|
||||
$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
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{include_staticlibs}
|
||||
# Check debug symbols in static libraries (smoke test)
|
||||
export STATIC_LIBS_HOME=${JAVA_HOME}/lib/static/linux-%{archinstall}/glibc
|
||||
readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep w_remainder.c
|
||||
readelf --debug-dump $STATIC_LIBS_HOME/libfdlibm.a | grep e_remainder.c
|
||||
readelf --debug-dump $STATIC_LIBS_HOME/libnet.a | grep Inet4AddressImpl.c
|
||||
readelf --debug-dump $STATIC_LIBS_HOME/libnet.a | grep Inet6AddressImpl.c
|
||||
%endif
|
||||
|
||||
so_suffix="so"
|
||||
@ -2519,6 +2509,23 @@ cjc.mainProgram(args)
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Aug 21 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:21.0.0.0.35-1
|
||||
- Update to jdk-21.0.0+35
|
||||
- Update system crypto policy & FIPS patch from new fips-21u tree
|
||||
- Update generate_tarball.sh to sync with upstream vanilla script inc. no more ECC removal
|
||||
- Drop fakefeaturever now it is no longer needed
|
||||
- Change top_level_dir_name to use the VCS tag, matching new upstream release style tarball
|
||||
- Use upstream release URL for OpenJDK source
|
||||
- Re-enable tzdata tests now we are on the latest JDK and things are back in sync
|
||||
- Install jaxp.properties introduced by JDK-8303530
|
||||
- Install lible.so introduced by JDK-8306983
|
||||
- Related: RHEL-12998
|
||||
- Resolves: RHEL-41087
|
||||
|
||||
* Mon Aug 21 2023 Petra Alice Mikova <pmikova@redhat.com> - 1:21.0.0.0.35-1
|
||||
- Replace smoke test files used in the staticlibs test, as fdlibm was removed by JDK-8303798
|
||||
- Related: RHEL-12998
|
||||
|
||||
* Wed Aug 16 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:20.0.0.0.36-1
|
||||
- Update to jdk-20.0.2+9
|
||||
- Update release notes to 20.0.2+9
|
||||
|
2
sources
2
sources
@ -1,2 +1,2 @@
|
||||
SHA512 (tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz) = 97d026212363b3c83f6a04100ad7f6fdde833d16579717f8756e2b8c2eb70e144a41a330cb9ccde9c3badd37a2d54fdf4650a950ec21d8b686d545ecb2a64d30
|
||||
SHA512 (openjdk-jdk20u-jdk-20.0.2+9.tar.xz) = 1513a9f43613401055f2638d75cb6338c25c5c068c66e03c5943f47a0a7d41279013a3f455738b92947712e99bb279daa50c488a086354f4e74c6e0c50e2e3c5
|
||||
SHA512 (openjdk-jdk21u-jdk-21+35.tar.xz) = 311e954cc8d28a336b85efc05baade8945fe5292ae2d91cc7ff71c6b3a1830b1a4b9fc641f87e68a4b3db175eb5c21a18664457715da9b37720c5d4b3eb67195
|
||||
|
Loading…
Reference in New Issue
Block a user