Go to file
Andrew Hughes b06f70935c Update to jdk-21.0.1.0+12 (GA)
Update release notes to 21.0.1.0+12
Sync the copy of the portable specfile with the latest update
Update openjdk_news script to specify subdirectory last
Add missing discover_trees script required by openjdk_news
Synchronise bundled versions with 21u sources (FreeType, LCMS, HarfBuzz, libpng)
Sync generate_tarball.sh with 11u & 17u version
Update bug URL for RHEL to point to the Red Hat customer portal
Fix upstream release URL for OpenJDK source
Following JDK-8005165, class data sharing can be enabled on all JIT architectures
Use tapsets from the misc tarball
Introduce 'prelease' for the portable release versioning, to handle EA builds
Make sure root installation directory is created first
Use in-place substitution for all but the first of the tapset changes
Synchronise runtime and buildtime tzdata requirements
Remove ghosts for binaries not in java-21-openjdk (pack200, rmid, unpack200)
Add missing jfr, jpackage and jwebserver alternative ghosts
Move jcmd to the headless package
Revert alt-java binary location to being within the JDK tree
Fix packaging of CDS archives
Exclude classes_nocoops.jsa on i686 and arm32

Resolves: RHEL-12998
Resolves: RHEL-14953
Resolves: RHEL-13925
Resolves: RHEL-14957
Resolves: RHEL-14945
Resolves: RHEL-11321
Resolves: RHEL-14947
2024-07-24 23:22:14 +01:00
tests Add files missed by centpkg import. 2023-08-08 22:29:59 +01:00
.gitignore Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
alt-java.c Patch and documentation cleanup 2024-07-24 23:21:06 +01:00
CheckVendor.java Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
discover_trees.sh Add files missed by centpkg import. 2023-08-08 22:29:59 +01:00
fips-21u-75ffdc48eda.patch Update to jdk-21.0.0+35 2024-07-24 15:53:27 +01:00
gating.yaml Add files missed by centpkg import. 2023-08-08 22:29:59 +01:00
generate_source_tarball.sh Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
icedtea_sync.sh Add files missed by centpkg import. 2023-08-08 22:29:59 +01:00
java-21-openjdk-portable.specfile Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
java-21-openjdk.spec Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
jconsole.desktop.in Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
jdk8009550-rh910107-fail_to_load_pcsc_library.patch Patch and documentation cleanup 2024-07-24 23:21:06 +01:00
openjdk_news.sh Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
README.md Patch and documentation cleanup 2024-07-24 23:21:06 +01:00
remove-intree-libraries.sh Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
rpminspect.yaml Add files missed by centpkg import. 2023-08-08 22:29:59 +01:00
sources Update to jdk-21.0.1.0+12 (GA) 2024-07-24 23:22:14 +01:00
TestCryptoLevel.java Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
TestECDSA.java Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
TestSecurityProperties.java Create java-21-openjdk package based on java-17-openjdk 2023-08-08 18:48:01 +01:00
TestTranslations.java Update to jdk-20.0.2+9 2024-06-24 18:34:23 +01:00

OpenJDK 21 is the latest Long-Term Support (LTS) release of the Java platform.

For a list of major changes from OpenJDK 17 (java-17-openjdk), see the upstream release page for OpenJDK 21 and the preceding interim releases:

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-21-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-21-openjdk-headless RPM.

Once the modified java-21-openjdk-portable RPMs are built, they should be installed and will produce a number of tarballs in the /usr/lib/jvm directory. The java-21-openjdk RPMs can then be built, which will use these tarballs to create the usual RPMs found in RHEL. The java-21-openjdk-portable RPMs can be uninstalled once the desired final RPMs are produced.

Note that the java-21-openjdk.spec file has a hard requirement on the exact version of java-21-openjdk-portable to use, so this will need to be modified if the version or rpmrelease values are changed in java-21-openjdk-portable.specfile.

To reduce the number of RPMs involved, the fastdebug and slowdebug builds may be disabled using --without fastdebug and --without slowdebug.