Compare commits

...

21 Commits

Author SHA1 Message Date
Andrew Hughes
84feccfe25 Remove superfluous backslashes that cause two alternative commands to be combined
Related: RHEL-120553
2025-11-12 01:05:18 +00:00
Andrew Hughes
80cc65126a Sync the copy of the portable specfile with the latest update
Related: RHEL-120553
2025-11-10 14:30:31 +00:00
Andrew Hughes
297f11a7fc Update to jdk-25.0.1+8 (GA)
- Update release notes to 25.0.1+8

Resolves: RHEL-120553
2025-11-10 14:28:55 +00:00
Andrew Hughes
34e3149c5a Drop fakefeaturever now we have reached OpenJDK 25
Related: RHEL-120553
2025-11-10 14:23:31 +00:00
Andrew Hughes
5a5069d570 Update to jdk-25.0.0+36 (GA)
- Update release notes with features of JDK 25
- Mention finalisation JEP for features finalised in JDK 22, 23 & 24

Related: RHEL-120553
2025-11-10 14:16:48 +00:00
Andrew Hughes
8068bbc02a Support libsleef on AArch64 & RISC-V added by JDK-8329816, JDK-8320500 (RISC-V) & JDK-8312425 (AArch64)
Related: RHEL-120553
2025-11-09 03:25:03 +00:00
Andrew Hughes
1e53c2a5c7 Add recent native libraries to _privatelibs (libjsvml.so, libsimdsort.so, libsyslookup.so)
Related: RHEL-120553
2025-11-09 03:17:17 +00:00
Andrew Hughes
96ab801691 Support jnativescan added by JDK-8317611: "Add a tool like jdeprscan to find usage of restricted methods"
Related: RHEL-120553
2025-11-09 01:53:06 +00:00
Andrew Hughes
d620f3b109 Add missing man page alternatives for jdeprscan, jfr, jhsdb, jimage, jlink & jmod and fix alphabetical ordering
Related: RHEL-120553
2025-11-09 01:49:33 +00:00
Andrew Hughes
335fe3d7e6 Handle new CDS archive variants (*_coh*) added by Compact Object Headers (JDK-8305895)
Related: RHEL-120553
2025-11-09 01:33:29 +00:00
Andrew Hughes
e446d04709 Make man page handling dependent on pandoc being available during the portable build
Related: RHEL-120553
2025-11-09 01:26:36 +00:00
Andrew Hughes
85c438123f Remove default.policy and java.policy following JDK-8338411: "Permanently Disable the Security Manager"
Related: RHEL-120553
2025-11-08 22:56:54 +00:00
Andrew Hughes
2e8c01e6e7 Sync the copy of the portable specfile with the latest update
Related: RHEL-120553
2025-11-08 22:18:44 +00:00
Andrew Hughes
d4379dbf2e Run javap with the disassembled code (-c) option now required for -l by JDK-8345145
Related: RHEL-120553
2025-11-08 22:11:46 +00:00
Andrew Hughes
8d24c254b9 Adjust TestTranslations.java with updated German translations from CLDR 46 (JDK-8333582) (Mountain->Mountains)
Related: RHEL-120553
2025-11-08 22:10:58 +00:00
Andrew Hughes
e8bdda3a9e alt-java man page installation is now handled by the OpenJDK build
Related: RHEL-120553
2025-11-08 22:10:30 +00:00
Andrew Hughes
c40cb590e9 Update to jdk-24.0.2+12 (GA)
- Update release notes with features of JDK 24

Related: RHEL-120553
2025-11-08 22:09:50 +00:00
Andrew Hughes
6877ce43a3 Install jaxp-strict.properties.template added by JDK-8330542: "Template for Creating Strict JAXP Configuration File"
Related: RHEL-120553
2025-10-26 21:14:17 +00:00
Andrew Hughes
4482c92918 Remove lible.so handling following its removal in JDK-8327476: "Upgrade JLine to 3.26.1"
Related: RHEL-120553
2025-10-26 19:53:41 +00:00
Andrew Hughes
97eed77585 Sync the copy of the portable specfile with the latest update
Related: RHEL-120553
2025-10-26 16:56:31 +00:00
Andrew Hughes
f9b6975315 Update to jdk-23.0.2+7 (GA)
- Update release notes with features of JDK 23

Related: RHEL-120553
2025-10-26 16:51:31 +00:00
6 changed files with 830 additions and 203 deletions

4
.gitignore vendored
View File

@ -39,3 +39,7 @@
/openjdk-21.0.8+8-ea.tar.xz
/openjdk-21.0.8+9.tar.xz
/openjdk-22.0.2+9.tar.xz
/openjdk-23.0.2+7.tar.xz
/openjdk-24.0.2+12.tar.xz
/openjdk-25+36.tar.xz
/openjdk-25.0.1+8.tar.xz

561
NEWS
View File

@ -3,7 +3,96 @@ Key:
JDK-X - https://bugs.openjdk.java.net/browse/JDK-X
CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY
New in release OpenJDK 22.0.0 (2024-03-19):
New in release OpenJDK 25.0.1 (2025-10-21):
===========================================
* CVEs
- CVE-2025-53057
- CVE-2025-53066
- CVE-2025-61748
* Changes
- JDK-8315131: Clarify VarHandle set/get access on 32-bit platforms
- JDK-8352637: Enhance bytecode verification
- JDK-8356294: Enhance Path Factories
- JDK-8356587: Missing object ID X in pool jdk.types.Method
- JDK-8357826: Avoid running some jtreg tests when asan is configured
- JDK-8358452: JNI exception pending in Java_sun_awt_screencast_ScreencastHelper_remoteDesktopKeyImpl of screencast_pipewire.c:1214 (ID: 51119)
- JDK-8358577: Test serviceability/jvmti/thread/GetCurrentContendedMonitor/contmon01/contmon01.java failed: unexpexcted monitor object
- JDK-8358819: The first year is not displayed correctly in Japanese Calendar
- JDK-8359059: Bump version numbers for 25.0.1
- JDK-8359218: RISC-V: Only enable CRC32 intrinsic when AvoidUnalignedAccess == false
- JDK-8359270: C2: alignment check should consider base offset when emitting arraycopy runtime call
- JDK-8359454: Enhance String handling
- JDK-8359596: Behavior change when both -Xlint:options and -Xlint:-options flags are given
- JDK-8360179: RISC-V: Only enable BigInteger intrinsics when AvoidUnalignedAccess == false
- JDK-8360533: ContainerRuntimeVersionTestUtils fromVersionString fails with some docker versions
- JDK-8360647: [XWayland] [OL10] NumPad keys are not triggered
- JDK-8360679: Shenandoah: AOT saved adapter calls into broken GC barrier stub
- JDK-8360937: Enhance certificate handling
- JDK-8361212: Remove AffirmTrust root CAs
- JDK-8361532: RISC-V: Several vector tests fail after JDK-8354383
- JDK-8361829: [TESTBUG] RISC-V: compiler/vectorization/runner/BasicIntOpTest.java fails with RVV but not Zvbb
- JDK-8362109: Change milestone to fcs for all releases
- JDK-8362882: Update SubmissionPublisher() specification to reflect use of ForkJoinPool.asyncCommonPool()
- JDK-8366223: ZGC: ZPageAllocator::cleanup_failed_commit_multi_partition is broken
- JDK-8367031: [backout] Change java.time month/day field types to 'byte'
- JDK-8368308: ISO 4217 Amendment 180 Update
Notes on individual issues:
===========================
core-libs/java.io:serialization:
JDK-8367031: [backout] Change java.time month/day field types to 'byte'
=======================================================================
In the initial release of OpenJDK 25, attempting to read serialised
Class objects created by earlier versions of OpenJDK for several of
the `java.time` classes would fail with a
`InvalidClassException`. Similarly, `java.time` Class objects
serialised with OpenJDK 25 could not be read by older OpenJDK
versions. This was due to the type of the day and month fields in
these classes being changed to `byte`. This change has now been
reverted and compatibility between OpenJDK 25 and older versions
restored.
Note that this incompatibility occurred with the `Class` object and
not an instance of the object i.e. `writeObject(LocalDate.class)`
would produce incompatible serialised data, but
`writeObject(LocalDate.now())` would not.
security-libs/java.security:
JDK-8361212: Remove AffirmTrust root CAs
========================================
The following root certificates from AffirmTrust, which were
deactivated in the 21.0.5 release of October 2024, have been removed
from the `cacerts` keystore:
Alias name: affirmtrustcommercialca [jdk]
CN=AffirmTrust Commercial
O=AffirmTrust
C=US
SHA256: 03:76:AB:1D:54:C5:F9:80:3C:E4:B2:E2:01:A0:EE:7E:EF:7B:57:B6:36:E8:A9:3C:9B:8D:48:60:C9:6F:5F:A7
Alias name: affirmtrustnetworkingca [jdk]
CN=AffirmTrust Networking
O=AffirmTrust
C=US
SHA256: 0A:81:EC:5A:92:97:77:F1:45:90:4A:F3:8D:5D:50:9F:66:B5:E2:C5:8F:CD:B5:31:05:8B:0E:17:F3:F0B4:1B
Alias name: affirmtrustpremiumca [jdk]
CN=AffirmTrust Premium
O=AffirmTrust
C=US
SHA256: 70:A7:3F:7F:37:6B:60:07:42:48:90:45:34:B1:14:82:D5:BF:0E:69:8E:CC:49:8D:F5:25:77:EB:F2:E9:3B:9A
Alias name: affirmtrustpremiumeccca [jdk]
CN=AffirmTrust Premium ECC
O=AffirmTrust
C=US
SHA256: BD:71:FD:F6:DA:97:E4:CF:62:D1:64:7A:DD:25:81:B0:7D:79:AD:F8:39:7E:B4:EC:BA:9C:5E:84:88:82:14:23
New in release OpenJDK 25.0.0 (2025-09-16):
===========================================
Major changes are listed below. Some changes may have been backported
to earlier releases following their first appearance in OpenJDK 22
@ -15,16 +104,27 @@ NEW FEATURES
Language Features
=================
Statements before super(...)
Flexible Constructor Bodies
============================
https://openjdk.org/jeps/447
https://openjdk.org/jeps/482
https://openjdk.org/jeps/492
https://openjdk.org/jeps/513
In constructors in the Java programming language, allow statements
that do not reference the instance being created to appear before an
explicit constructor invocation (i.e. super()).
In constructors in the Java programming language, allow statements to
appear before an explicit constructor invocation, i.e., super(..) or
this(..). The statements cannot reference the instance under
construction, but they can initialize its fields. Initializing fields
before invoking another constructor makes a class more reliable when
methods are overridden.
This is a preview language feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 22 (JEP 447).
This language feature is now finalised (JEP 513). It was first
introduced as a preview language feature
(http://openjdk.java.net/jeps/12) in OpenJDK 22 (JEP 447) under the
name "Statements before super(...)". It reached a second preview in
OpenJDK 23 (JEP 482) with the addition of allowing fields to be
initialized before invoking another constructor. It reached a third
preview in OpenJDK 24 (JEP 492).
Unnamed Patterns and Variables
==============================
@ -36,22 +136,37 @@ component without stating the component's name or type, and unnamed
variables, which can be initialized but not used. Both are denoted by
an underscore character, _.
This feature is now final. It was a preview feature
This feature is now finalised (JEP 456). It was a preview feature
(http://openjdk.java.net/jeps/12) in OpenJDK 21 (JEP 443).
String Templates
================
https://openjdk.org/jeps/430
https://openjdk.org/jeps/459
Primitive Types in Patterns, instanceof, and switch
===================================================
https://openjdk.org/jeps/455
https://openjdk.org/jeps/488
https://openjdk.org/jeps/507
Enhance the Java programming language with string templates. String
templates complement Java's existing string literals and text blocks
by coupling literal text with embedded expressions and template
processors to produce specialized results.
Enhance pattern matching by allowing primitive type patterns in all
pattern contexts, and extend instanceof and switch to work with all
primitive types.
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
in OpenJDK 21 (JEP 430) and reaching its second preview in OpenJDK 22
(JEP 459).
This is a preview language feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 23 (JEP 455) with a second preview in OpenJDK 24
(JEP 488) and reaching a third in OpenJDK 25 (JEP 507).
Module Import Declarations
==========================
https://openjdk.org/jeps/476
https://openjdk.org/jeps/494
https://openjdk.org/jeps/511
Enhance the Java programming language with the ability to succinctly
import all of the packages exported by a module. This simplifies the
reuse of modular libraries, but does not require the importing code to
be in a module itself.
This language feature is now finalised (JEP 511). It was introduced as
a preview language feature (http://openjdk.java.net/jeps/12) in
OpenJDK 23 (JEP 476) and had a second preview in OpenJDK 24 (JEP 494).
Library Features
================
@ -72,25 +187,41 @@ foreign memory (i.e., memory not managed by the JVM), the API enables
Java programs to call native libraries and process native data without
the brittleness and danger of JNI.
This API is now finalised. It was first introduced in incubation
(https://openjdk.java.net/jeps/11) in OpenJDK 17 (JEP 412), and is an
evolution of the Foreign Memory Access API (OpenJDK 14 through 16) and
Foreign Linker API (OpenJDK 16) (see release notes for
This API is now finalised (JEP 454). It was first introduced in
incubation (https://openjdk.java.net/jeps/11) in OpenJDK 17 (JEP 412),
and is an evolution of the Foreign Memory Access API (OpenJDK 14
through 16) and Foreign Linker API (OpenJDK 16) (see release notes for
java-17-openjdk). OpenJDK 18 saw a second round of incubation (JEP
419) before its inclusion as a preview feature
(http://openjdk.java.net/jeps/12) in OpenJDK 19 (JEP 424). A second
preview took place in OpenJDK 20 (JEP 434) and a third and final
preview in OpenJDK 21 (JEP 442).
Prepare to Restrict the Use of JNI
==================================
https://openjdk.org/jeps/472
Issue warnings about uses of the Java Native Interface (JNI) and
adjust the Foreign Function & Memory (FFM) API to issue warnings in a
consistent manner. All such warnings aim to prepare developers for a
future release that ensures integrity by default by uniformly
restricting JNI and the FFM API. Application developers can avoid both
current warnings and future restrictions by selectively enabling these
interfaces where essential using the --enable-native-access
command-line option.
Class-File API
==============
https://openjdk.org/jeps/457
https://openjdk.org/jeps/466
https://openjdk.org/jeps/484
Provide a standard API for parsing, generating, and transforming Java
class files.
This is a preview library feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 22 (JEP 457).
This API is now finalised (JEP 484). It was introduced as a preview
library feature (http://openjdk.java.net/jeps/12) in OpenJDK 22 (JEP
457) with a second preview in OpenJDK 23 (JEP 466).
Vector API
==========
@ -101,6 +232,9 @@ https://openjdk.org/jeps/426
https://openjdk.org/jeps/438
https://openjdk.org/jeps/448
https://openjdk.org/jeps/460
https://openjdk.org/jeps/469
https://openjdk.org/jeps/489
https://openjdk.org/jeps/508
Introduce an API to express vector computations that reliably compile
at runtime to optimal vector hardware instructions on supported CPU
@ -111,19 +245,23 @@ This is an incubation feature (https://openjdk.java.net/jeps/11)
introduced in OpenJDK 16 (JEP 338). A second round of incubation took
place in OpenJDK 17 (JEP 414), OpenJDK 18 (JEP 417) saw a third,
OpenJDK 19 a fourth (JEP 426), OpenJDK 20 (JEP 438) a fifth, OpenJDK
21 a sixth (JEP 448) and it reaches its seventh in OpenJDK 22 (JEP
460).
21 a sixth (JEP 448), OpenJDK 22 a seventh (JEP 460), OpenJDK 23 an
eighth (JEP 469), OpenJDK 24 a ninth (JEP 489) and it reaches its
tenth in OpenJDK 25 (JEP 508).
Stream Gatherers
================
https://openjdk.org/jeps/461
https://openjdk.org/jeps/473
https://openjdk.org/jeps/485
Enhance the Stream API to support custom intermediate operations. This
will allow stream pipelines to transform data in ways that are not
easily achievable with the existing built-in intermediate operations.
This is a preview library feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 22 (JEP 461).
This API is now finalised (JEP 485). It was introduced as a preview
library feature (http://openjdk.java.net/jeps/12) in OpenJDK 22 (JEP
461) with a second preview in OpenJDK 23 (JEP 473).
Structured Concurrency
======================
@ -131,6 +269,9 @@ https://openjdk.org/jeps/428
https://openjdk.org/jeps/437
https://openjdk.org/jeps/453
https://openjdk.org/jeps/462
https://openjdk.org/jeps/480
https://openjdk.org/jeps/499
https://openjdk.org/jeps/505
Simplify multithreaded programming by introducing an API for
structured concurrency. Structured concurrency treats multiple tasks
@ -142,41 +283,124 @@ This API was first introduced in incubation
(https://openjdk.java.net/jeps/11) in OpenJDK 19 (JEP 428) and had a
second round of incubation in OpenJDK 20 (JEP 437). It became a
preview feature (http://openjdk.java.net/jeps/12) in OpenJDK 21 (JEP
453) and reaches its second preview in OpenJDK 22 (JEP 462).
453), reached its second preview in OpenJDK 22 (JEP 462), had a third
preview in OpenJDK 23 (JEP 480), a fourth in OpenJDK 24 (JEP 499) and
reaches its fifth in OpenJDK 25 (JEP 505).
Implicitly Declared Classes and Instance Main Methods
=====================================================
Compact Source Files and Instance Main Methods
==============================================
https://openjdk.org/jeps/445
https://openjdk.org/jeps/463
https://openjdk.org/jeps/477
https://openjdk.org/jeps/495
https://openjdk.org/jeps/512
Evolve the Java language so that students can write their first
programs without needing to understand language features designed for
large programs. Far from using a separate dialect of Java, students
can write streamlined declarations for single-class programs and then
seamlessly expand their programs to use more advanced features as
their skills grow.
Evolve the Java programming language so that beginners can write their
first programs without needing to understand language features
designed for large programs. Far from using a separate dialect of the
language, beginners can write streamlined declarations for
single-class programs and then seamlessly expand their programs to use
more advanced features as their skills grow. Experienced developers
can likewise enjoy writing small programs succinctly, without the need
for constructs intended for programming in the large.
This library feature was introduced as a preview
This library feature is now finalised (JEP 512) with some minor
changes from the last release. It was first introduced as a preview
(http://openjdk.java.net/jeps/12) in OpenJDK 21 (JEP 445) under the
name "Unnamed Classes and Instance Main Methods". It reaches a second
preview in OpenJDK 22 (JEP 463) under a new name, due to the move away
from unnamed classes to an implicitly declared name chosen by the host
system.
name "Unnamed Classes and Instance Main Methods". It reached a second
preview in OpenJDK 22 (JEP 463) and a third in OpenJDK 23 (JEP 477)
under the new name, "Implicitly Declared Classes and Instance Main
Methods", due to the move away from unnamed classes to an implicitly
declared name chosen by the host system. It had a fourth preview in
OpenJDK 24 (JEP 495) with new terminology and a revised title ("Simple
Source Files and Instance Main Methods"), but otherwise unchanged.
Scoped Values
=============
https://openjdk.org/jeps/429
https://openjdk.org/jeps/446
https://openjdk.org/jeps/464
https://openjdk.org/jeps/481
https://openjdk.org/jeps/487
https://openjdk.org/jeps/506
Introduce scoped values, which enable the sharing of immutable data
within and across threads. They are preferred to thread-local
variables, especially when using large numbers of virtual threads.
This API was first introduced in incubation
(https://openjdk.java.net/jeps/11) in OpenJDK 20 (JEP 429). It became a
preview feature (http://openjdk.java.net/jeps/12) in OpenJDK 21 (JEP
446) and reaches its second preview in OpenJDK 22 (JEP 464).
This API is now finalised (JEP 506). This API was first introduced in
incubation (https://openjdk.java.net/jeps/11) in OpenJDK 20 (JEP
429). It became a preview feature (http://openjdk.java.net/jeps/12) in
OpenJDK 21 (JEP 446), had a second preview in OpenJDK 22 (JEP 464), a
third in OpenJDK 23 (JEP 481) and a fourth in OpenJDK 24 (JEP 487).
Key Derivation Function API
===========================
https://openjdk.org/jeps/478
https://openjdk.org/jeps/510
Introduce an API for Key Derivation Functions (KDFs), which are
cryptographic algorithms for deriving additional keys from a secret
key and other data.
This API is now finalised (JEP 510). It was first introduced as a
preview library feature (http://openjdk.java.net/jeps/12) in OpenJDK
24 (JEP 478).
Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism
==================================================================
https://openjdk.org/jeps/496
Enhance the security of Java applications by providing an
implementation of the quantum-resistant Module-Lattice-Based
Key-Encapsulation Mechanism (ML-KEM). Key encapsulation mechanisms
(KEMs) are used to secure symmetric keys over insecure communication
channels using public key cryptography. ML-KEM is designed to be
secure against future quantum computing attacks. It has been
standardized by the United States National Institute of Standards and
Technology (NIST) in FIPS 203 [0].
[0] https://csrc.nist.gov/pubs/fips/203/final
Quantum-Resistant Module-Lattice-Based Digital Signature Algorithm
==================================================================
https://openjdk.org/jeps/497
Enhance the security of Java applications by providing an
implementation of the quantum-resistant Module-Lattice-Based Digital
Signature Algorithm (ML-DSA). Digital signatures are used to detect
unauthorized modifications to data and to authenticate the identity of
signatories. ML-DSA is designed to be secure against future quantum
computing attacks. It has been standardized by the United States
National Institute of Standards and Technology (NIST) in FIPS 204 [0].
[0] https://csrc.nist.gov/pubs/fips/204/final
PEM Encodings of Cryptographic Objects
======================================
https://openjdk.org/jeps/470
Introduce an API for encoding objects that represent cryptographic
keys, certificates, and certificate revocation lists into the
widely-used Privacy-Enhanced Mail (PEM) transport format, and for
decoding from that format back into objects.
This is a preview library feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 25 (JEP 470).
Stable Values
=============
https://openjdk.org/jeps/502
Introduce an API for stable values, which are objects that hold
immutable data. Stable values are treated as constants by the JVM,
enabling the same performance optimizations that are enabled by
declaring a field final. Compared to final fields, however, stable
values offer greater flexibility as to the timing of their
initialization.
This is a preview library feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 25 (JEP 502).
Virtual Machine Enhancements
============================
@ -189,6 +413,144 @@ Reduce latency by implementing region pinning in G1, so that garbage
collection need not be disabled during Java Native Interface (JNI)
critical regions.
ZGC: Generational Mode by Default
=================================
https://openjdk.org/jeps/439
https://openjdk.org/jeps/474
Switch the default mode of the Z Garbage Collector (ZGC) to the
generational mode. Deprecate the non-generational mode, with the
intent to remove it in a future release.
Late Barrier Expansion for G1
=============================
https://openjdk.org/jeps/475
Simplify the implementation of the G1 garbage collector's barriers,
which record information about application memory accesses, by
shifting their expansion from early in the C2 JIT's compilation
pipeline to later.
Ahead-of-Time Class Loading & Linking
=====================================
https://openjdk.org/jeps/483
https://openjdk.org/jeps/514
Improve startup time by making the classes of an application instantly
available, in a loaded and linked state, when the HotSpot Java Virtual
Machine starts. Achieve this by monitoring the application during one
run and storing the loaded and linked forms of all classes in a cache
for use in subsequent runs. Lay a foundation for future improvements
to both startup and warmup time.
Using this feature requires a two stage process:
1. Create the Ahead-of-Time cache from a training run of the
application using the option `--XX:AOTCacheOutput=<cache name>` where
`<cache name>` is the cache reference to use in later runs.
2. When running the application in testing or production, use the
option `-XX:AOTCache=<cache name>` to run the application with the
cache generated in #2.
Previously, in OpenJDK 24 (JEP 483), the training run and cache
creation were handled by two separate steps:
1. Populate the Ahead-of-Time configuration data with a training run
of the application using the options `-XX:AOTMode=record
-XX:AOTConfiguration=<config name>` where `<config name>` is the
configuration reference to use in #2.
2. Create the Ahead-of-Time cache using the options
`-XX:AOTMode=create -XX:AOTConfiguration=<config name>
-XX:AOTCache=<cache name>` where `<config name>` is the configuration
reference from #1 and `<cache name>` is the cache reference to use in
later runs.
JEP 514 ("Ahead-of-Time Command-Line Ergonomics") in OpenJDK 25 adds
the option `--XX:AOTCacheOutput` which performs both the above steps
from a single command-line invocation using a temporary configuration
file. A new environment variable, `JDK_AOT_VM_OPTIONS`, can be used
to pass options to the cache creation step without affecting the
training run step.
Ahead-of-Time Method Profiling
==============================
https://openjdk.org/jeps/515
Improve warmup time by making method-execution profiles from a
previous run of an application instantly available, when the HotSpot
Java Virtual Machine starts. This will enable the JIT compiler to
generate native code immediately upon application startup, rather than
having to wait for profiles to be collected.
Synchronize Virtual Threads without Pinning
===========================================
https://openjdk.org/jeps/491
Improve the scalability of Java code that uses synchronized methods
and statements by arranging for virtual threads that block in such
constructs to release their underlying platform threads for use by
other virtual threads. This will eliminate nearly all cases of virtual
threads being pinned to platform threads, which severely restricts the
number of virtual threads available to handle an application's
workload.
Compact Object Headers
======================
https://openjdk.org/jeps/450
https://openjdk.org/jeps/519
Reduce the size of object headers in the HotSpot JVM from between 96
and 128 bits down to 64 bits on 64-bit architectures. This will reduce
heap size, improve deployment density, and increase data locality.
This is now a production feature in OpenJDK 25 (JEP 519) enabled using
`-XX:+UseCompactObjectHeaders`. It was first introduced as an
experimental feature (JEP 450) that also required the use of
`-XX:+UnlockExperimentalVMOptions`.
Generational Shenandoah
=======================
https://openjdk.org/jeps/404
https://openjdk.org/jeps/521
Enhance the Shenandoah garbage collector with experimental
generational collection capabilities to improve sustainable
throughput, load-spike resilience, and memory utilization.
This is now a production feature in OpenJDK 25 (JEP 521) enabled using
`-XX:ShenandoahGCMode=generational`. It was first introduced as an
experimental feature (JEP 404) that also required the use of
`-XX:+UnlockExperimentalVMOptions`.
JFR Cooperative Sampling
========================
https://openjdk.org/jeps/518
Improve the stability of the JDK Flight Recorder (JFR) when it
asynchronously samples Java thread stacks. Achieve this by walking
call stacks only at safepoints, while minimizing safepoint bias.
JFR Method Timing & Tracing
===========================
https://openjdk.org/jeps/520
Extend the JDK Flight Recorder (JFR) with facilities for method timing
and tracing via bytecode instrumentation.
JFR CPU-Time Profiling
======================
https://openjdk.org/jeps/509
Enhance the JDK Flight Recorder (JFR) to capture more accurate
CPU-time profiling information on Linux.
This is an experimental feature so its JFR events are tagged with the
`@Experimental` annotation. Unlike other experimental virtual machine
features, it does not need to be explicitly enabled with
`-XX:+UnlockExperimentalVMOptions`.
Tools
=====
@ -201,3 +563,108 @@ supplied as multiple files of Java source code. This will make the
transition from small programs to larger ones more gradual, enabling
developers to choose whether and when to go to the trouble of
configuring a build tool.
Markdown Documentation Comments
===============================
https://openjdk.org/jeps/467
Enable JavaDoc documentation comments to be written in Markdown rather
than solely in a mixture of HTML and JavaDoc @-tags.
Linking Run-Time Images without JMODs
=====================================
https://openjdk.org/jeps/493
Reduce the size of the JDK by approximately 25% by enabling the jlink
tool to create custom run-time images without using the JDK's JMOD
files.
This feature must be enabled when the JDK is built using the
--enable-linkable-runtime option. It will not be enabled by default,
and some JDK vendors may choose not to enable it.
DEPRECATIONS
============
Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal
==================================================================
https://openjdk.org/jeps/471
Deprecate the memory-access methods in sun.misc.Unsafe for removal in
a future release. These unsupported methods have been superseded by
standard APIs, namely the VarHandle API (JEP 193, OpenJDK 9) and the
Foreign Function & Memory API (JEP 454, OpenJDK 22). We strongly
encourage library developers to migrate from sun.misc.Unsafe to
supported replacements, so that applications can migrate smoothly to
modern JDK releases.
Warn upon Use of Memory-Access Methods in sun.misc.Unsafe
=========================================================
https://openjdk.org/jeps/498
Issue a warning at run time on the first occasion that any
memory-access method in sun.misc.Unsafe is invoked. All of these
unsupported methods were terminally deprecated in JDK 23 (see JEP 471
above). They have been superseded by standard APIs, namely the
VarHandle API (JEP 193, OpenJDK 9) and the Foreign Function & Memory
API (JEP 454, OpenJDK 22). We strongly encourage library developers to
migrate from sun.misc.Unsafe to supported replacements, so that
applications can migrate smoothly to modern JDK releases.
Permanently Disable the Security Manager
========================================
https://openjdk.org/jeps/486
The Security Manager has not been the primary means of securing
client-side Java code for many years, it has rarely been used to
secure server-side code, and it is costly to maintain. We therefore
deprecated it for removal in OpenJDK 17 via JEP 411 (2021). As the
next step toward removing the Security Manager, we will revise the
Java Platform specification so that developers cannot enable it and
other Platform classes do not refer to it. This change will have no
impact on the vast majority of applications, libraries, and tools. We
will remove the Security Manager API in a future release.
REMOVALS
========
String Templates
================
https://openjdk.org/jeps/430
https://openjdk.org/jeps/459
https://openjdk.org/jeps/465
This was a preview feature (http://openjdk.java.net/jeps/12)
introduced in OpenJDK 21 (JEP 430) with a second preview in OpenJDK 22
(JEP 459). A third preview was proposed but ultimately withdrawn for
OpenJDK 23 (JEP 465) and the feature is no longer present. See [0]
for further explanation.
[0] https://mail.openjdk.org/pipermail/amber-spec-experts/2024-April/004106.html
Remove the Windows & Linux 32-bit x86 Ports
===========================================
https://openjdk.org/jeps/449
https://openjdk.org/jeps/479
https://openjdk.org/jeps/501
https://openjdk.org/jeps/503
Remove the source code and build support for the Windows (JEP 479) &
Linux (JEP 503) 32-bit x86 ports. The Windows port was deprecated for
removal in JDK 21 by JEP 449 and the Linux port was deprecated for
removal in JDK 24 by JEP 501. Both deprecations took place with the
express intent to remove the ports in a future release.
Following this removal of these 32-bit x86 ports, the
architecture-agnostic Zero port is the only way to run Java programs
on 32-bit x86 processors.
ZGC: Remove the Non-Generational Mode
=====================================
https://openjdk.org/jeps/439
https://openjdk.org/jeps/474
https://openjdk.org/jeps/490
Remove the non-generational mode of the Z Garbage Collector (ZGC),
keeping the generational mode as the default for ZGC (see JEP 439 &
474).

View File

@ -52,9 +52,9 @@ public class TestTranslations {
map.put(Locale.FRANCE, new String[] { "heure normale des Rocheuses", "UTC\u221207:00", "MST",
"heure d\u2019\u00e9t\u00e9 des Rocheuses", "UTC\u221206:00", "MST",
"heure des Rocheuses", "UTC\u221207:00", "MST"});
map.put(Locale.GERMANY, new String[] { "Rocky-Mountain-Normalzeit", "GMT-07:00", "MST",
"Rocky-Mountain-Sommerzeit", "GMT-06:00", "MST",
"Rocky-Mountain-Zeit", "GMT-07:00", "MST"});
map.put(Locale.GERMANY, new String[] { "Rocky-Mountains-Normalzeit", "GMT-07:00", "MST",
"Rocky-Mountains-Sommerzeit", "GMT-06:00", "MST",
"Rocky-Mountains-Zeit", "GMT-07:00", "MST"});
CIUDAD_JUAREZ = Collections.unmodifiableMap(map);
}

View File

@ -247,6 +247,13 @@
%global dtsversion 10
%endif
# Check if pandoc is available to generate docs (including man pages)
%if 0%{?rhel} == 8
%global pandoc_available 1
%else
%global pandoc_available 0
%endif
# 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 -Wall which will otherwise cause HotSpot to produce hundreds of thousands of warnings (100+mb logs)
@ -327,10 +334,9 @@
%endif
# New Version-String scheme-style defines
%global featurever 22
%global fakefeaturever 25
%global featurever 25
%global interimver 0
%global updatever 2
%global updatever 1
%global patchver 0
# buildjdkver is usually same as %%{featurever},
# but in time of bootstrap of next jdk, it is featurever-1,
@ -345,21 +351,6 @@
%global lts_designator ""
%global lts_designator_zip ""
%endif
# JDK to use for bootstrapping
%global bootjdkpkg java-%{fakefeaturever}-openjdk
%ifarch %{fastdebug_arches}
%global bootdebugpkg fastdebug
%endif
%global bootjdkzip %{_jvmdir}/%{bootjdkpkg}-*.portable%{?bootdebugpkg:.%{bootdebugpkg}}.jdk.%{_arch}.tar.xz
%global bootjdk %{_builddir}/%{bootjdkpkg}.boot
# 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
%if %{with fresh_libjvm} && %{buildjdkver} == %{featurever}
%global build_hotspot_first 1
%else
%global build_hotspot_first 0
%endif
# Define vendor information used by OpenJDK
%global oj_vendor Red Hat, Inc.
@ -388,8 +379,7 @@
%global fipsver 9203d50836c
# Define JDK versions
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
# Force 25 until we are actually ready to build that JDK version
%global javaver %{fakefeaturever}
%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
@ -400,8 +390,8 @@
%global origin_nice OpenJDK
%global top_level_dir_name %{vcstag}
%global top_level_dir_name_backup %{top_level_dir_name}-backup
%global buildver 9
%global rpmrelease 2
%global buildver 8
%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
%if %is_system_jdk
@ -436,16 +426,16 @@
%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 buildoutputdir() %{expand:build/jdk%{featurever}.build%{?1}}
%define installoutputdir() %{expand:install/jdk%{featurever}.install%{?1}}
%global altjavaoutputdir install/altjava.install
%define packageoutputdir() %{expand:packages/jdk%{fakefeaturever}.packages%{?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
@ -468,6 +458,22 @@
%define miscportablename() %(echo %{uniquesuffix ""} | sed "s;el%{rhel}\\(_[0-9]\\)*;portable.misc;g")
%define miscportablearchive() %{miscportablename}.tar.xz
# JDK to use for bootstrapping
%global bootjdkpkg java-%{featurever}-%{origin}
%ifarch %{fastdebug_arches}
%global bootdebugpkg fastdebug
%endif
%global bootjdkzip %{_jvmdir}/%{bootjdkpkg}-*.portable%{?bootdebugpkg:.%{bootdebugpkg}}.jdk.%{_arch}.tar.xz
%global bootjdk %{_builddir}/%{uniquesuffix -- ""}/%{bootjdkpkg}.boot
# 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
%if %{with fresh_libjvm} && %{buildjdkver} == %{featurever}
%global build_hotspot_first 1
%else
%global build_hotspot_first 0
%endif
#################################################################
# fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349
# https://bugzilla.redhat.com/show_bug.cgi?id=1590796#c14
@ -597,7 +603,7 @@ Source0: https://openjdk-sources.osci.io/openjdk%{featurever}/open%{vcstag}%{ea_
# Use 'icedtea_sync.sh' to update the following
# They are based on code contained in the IcedTea project (6.x).
# Systemtap tapsets. Zipped up to keep it small.
Source8: tapsets-icedtea-%%{icedteaver}.tar.xz
Source8: tapsets-icedtea-%{icedteaver}.tar.xz
# Desktop files. Adapted from IcedTea
# Disabled in portables
@ -738,14 +744,14 @@ BuildRequires: zip
BuildRequires: tar
BuildRequires: unzip
BuildRequires: javapackages-filesystem
BuildRequires: %{bootjdkpkg}-portable-devel%{?bootdebugpkg:-%{bootdebugpkg}}
BuildRequires: %{bootjdkpkg}-portable-devel%{?bootdebugpkg:-%{bootdebugpkg}} >= %{buildjdkver}
# Zero-assembler build requirement
%ifarch %{zero_arches}
BuildRequires: libffi-devel
%endif
# Full documentation build requirements
# pandoc is only available on RHEL/CentOS 8
%if 0%{?rhel} == 8
%if %{pandoc_available}
BuildRequires: graphviz
BuildRequires: pandoc
%endif
@ -1001,6 +1007,12 @@ pushd %{top_level_dir_name}
#%patch -P1001 -p1
popd # openjdk
echo "Generating %{alt_java_name} man page"
altjavamanpage=%{top_level_dir_name}/src/java.base/share/man/%{alt_java_name}.md
altjavatext="Hardened java binary recommended for launching untrusted code from the Web e.g. javaws"
sed -r -e 's|([^/.])java([^./])|\1alt-java\2|g' %{top_level_dir_name}/src/java.base/share/man/java.md | \
sed -e 's|JAVA(|ALT-JAVA(|' | \
sed -e "s|java - launch a Java application|alt-java - ${altjavatext}|" >> ${altjavamanpage}
# The OpenJDK version file includes the current
# upstream version information. For some reason,
@ -1066,7 +1078,7 @@ pushd %{_jvmdir}
sha256sum --check %{bootjdkzip}.sha256sum
popd
tar -xJf %{bootjdkzip}
mv java-%{fakefeaturever}-openjdk-%{featurever}* %{bootjdk}
mv java-%{featurever}-openjdk-%{buildjdkver}* %{bootjdk}
# Print release information
echo "Installed boot JDK:"
cat %{bootjdk}/release
@ -1361,6 +1373,7 @@ function installjdk() {
# legacy-jre-image target does not install any man pages for the JRE
# We copy the jdk man directory and then remove pages for binaries that
# don't exist in the JRE
%if %{pandoc_available}
cp -a ${jdkimagepath}/man ${jreimagepath}
for manpage in $(find ${jreimagepath}/man -name '*.1'); do
filename=$(basename ${manpage});
@ -1370,6 +1383,7 @@ function installjdk() {
rm -f ${manpage};
fi;
done
%endif
for imagepath in ${jdkimagepath} ${jreimagepath} ${unstripped}; do
@ -1520,7 +1534,7 @@ function packagejdk() {
%if %{with_systemtap}
cp -a ${tapsetdir}* ${miscname}
%endif
cp -av ${altjavadir}/%{alt_java_name}{,.1} ${miscname}
cp -av ${altjavadir}/%{alt_java_name} ${miscname}
createtar ${miscname} ${miscarchive}
genchecksum ${miscarchive}
fi
@ -1561,10 +1575,6 @@ function packagejdk() {
echo "Building %{SOURCE11}"
mkdir -p %{altjavaoutputdir}
LD_LIBRARY_PATH="${LIBPATH}" ${GCC} ${EXTRA_CFLAGS} -o %{altjavaoutputdir}/%{alt_java_name} %{SOURCE11}
echo "Generating %{alt_java_name} man page"
altjavamanpage=%{altjavaoutputdir}/%{alt_java_name}.1
echo "Hardened java binary recommended for launching untrusted code from the Web e.g. javaws" > ${altjavamanpage}
cat %{top_level_dir_name}/src/java.base/share/man/java.1 >> ${altjavamanpage}
echo "Building %{newjavaver}-%{buildver}, pre=%{ea_designator}, opt=%{lts_designator}"
@ -1718,14 +1728,14 @@ $JAVA_HOME/bin/java -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -versi
unzip -l $JAVA_HOME/lib/src.zip | grep 'sun.misc.Unsafe'
# 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 LineNumberTable
$JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep "Compiled from"
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep LineNumberTable
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep LocalVariableTable
# Check generated class files include useful debugging information
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from"
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep "Compiled from"
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep LineNumberTable
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep LocalVariableTable
%else
@ -1957,6 +1967,40 @@ done
%endif
%changelog
* Mon Nov 10 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:25.0.1.0.8-1
- Update to jdk-25.0.1+8 (GA)
- Update release notes to 25.0.1+8
- Related: RHELBU-3203
* Mon Nov 10 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:25.0.0.0.36-2
- Drop fakefeaturever and rebuild with ourselves now we have reached OpenJDK 25
- Related: RHELBU-3203
* Sun Nov 09 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:25.0.0.0.36-1
- Update to jdk-25.0.0+36 (GA)
- Update release notes with features of JDK 25
- Mention finalisation JEP for features finalised in JDK 22, 23 & 24
- Resolves: RHELBU-3203
* Wed Nov 05 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:24.0.2.0.12-1
- Update to jdk-24.0.2+12 (GA)
- Update release notes with features of JDK 24
- Generate alt-java.md during prep following removal of pre-generated man pages in JDK-8344056
- Introduce pandoc_available global for conditional handling of both pandoc dependency and manpages
- Adjust TestTranslations.java with updated German translations from CLDR 46 (JDK-8333582) (Mountain->Mountains)
- Run javap with the disassembled code (-c) option now required for -l by JDK-8345145
- Related: RHELBU-3203
* Sat Oct 25 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:23.0.2.0.7-1
- Update to jdk-23.0.2+7 (GA)
- Update release notes with features of JDK 23
- Switch buildjdkver to featurever + 1
- Use buildjdkver in the path to the extracted bootstrap JDK
- Move bootstrap declarations later so they can use variables like uniquesuffix
- Fix bootjdk so it uses our build subdirectory created in setup (_builddir only gives the top-level BUILD)
- Fix double '%' in specification of IcedTea sources
- Related: RHELBU-3203
* Mon Sep 22 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:22.0.2.0.9-2
- Build using ourselves rather than the system JDK as java-25-openjdk is unavailable on older systems
- Switch buildjdkver back to featurever temporarily for this rebuild

View File

@ -142,6 +142,8 @@
%global svml_arches x86_64
# Set of architectures for which java has intrinsics for Arrays.sort (libsimdsort.so)
%global simdsort_arches x86_64
# Set of architectures for which SLEEF is used for vector math operations
%global sleef_arches %{aarch64} riscv64
# Set of architectures where we verify backtraces with gdb
%global gdb_arches %{jit_arches} %{zero_arches}
# Architecture on which we run Java only tests
@ -312,10 +314,9 @@
%endif
# New Version-String scheme-style defines
%global featurever 22
%global fakefeaturever 25
%global featurever 25
%global interimver 0
%global updatever 2
%global updatever 1
%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.
@ -356,8 +357,7 @@
%global crypto_policy_active false
# Define JDK versions
%global newjavaver %{featurever}.%{interimver}.%{updatever}.%{patchver}
# Force 25 until we are actually ready to build that JDK version
%global javaver %{fakefeaturever}
%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
@ -375,17 +375,24 @@
%global origin_nice OpenJDK
%global top_level_dir_name %{vcstag}
%global top_level_dir_name_backup %{top_level_dir_name}-backup
%global buildver 9
%global rpmrelease 1
%global buildver 8
%global rpmrelease 2
# Settings used by the portable build
%global portablerelease 2
%global portablerelease 1
# Portable suffix differs between RHEL and CentOS
%if 0%{?centos} == 0
%global portablesuffix %{?pkgos:el7_9}%{!?pkgos:el8}
%global portablerhel %{?pkgos:7_9}%{!?pkgos:8}
%else
%global portablesuffix el9
%global portablerhel 9
%endif
%global portablebuilddir /builddir/build/BUILD
%global portablesuffix el%{portablerhel}
# Check if pandoc was available to generate docs (including man pages)
%if 0%{?portablerhel} == 8
%global pandoc_available 1
%else
%global pandoc_available 0
%endif
# 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
@ -420,13 +427,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:%{compatiblename}%{?1}}
# main id and dir of this jdk
@ -436,7 +443,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.*|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.*|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.*|libjsvml[.]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.*|libsimdsort[.]so.*|libsleef[.]so.*|libsyslookup[.]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})$
@ -523,12 +530,20 @@ alternatives --install %{_bindir}/java java %{jrebindir -- %{?1}}/java %{priorit
--slave %{_bindir}/%{alt_java_name} %{alt_java_name} %{jrebindir -- %{?1}}/%{alt_java_name} \\
--slave %{_bindir}/jcmd jcmd %{sdkbindir -- %{?1}}/jcmd \\
--slave %{_bindir}/keytool keytool %{jrebindir -- %{?1}}/keytool \\
--slave %{_bindir}/rmiregistry rmiregistry %{jrebindir -- %{?1}}/rmiregistry \\
--slave %{_mandir}/man1/java.1%{man_comp} java.1%{man_comp} %{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/%{alt_java_name}.1%{man_comp} %{alt_java_name}.1%{man_comp} %{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jcmd.1%{man_comp} jcmd.1%{man_comp} %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/keytool.1%{man_comp} keytool.1%{man_comp} %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/rmiregistry.1%{man_comp} rmiregistry.1%{man_comp} %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1%{man_comp}
--slave %{_bindir}/rmiregistry rmiregistry %{jrebindir -- %{?1}}/rmiregistry
%if %{pandoc_available}
alternatives --add-slave java %{jrebindir -- %{?1}}/java \\
%{_mandir}/man1/java.1%{man_comp} java.1%{man_comp} %{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave java %{jrebindir -- %{?1}}/java \\
%{_mandir}/man1/%{alt_java_name}.1%{man_comp} %{alt_java_name}.1%{man_comp} %{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave java %{jrebindir -- %{?1}}/java \\
%{_mandir}/man1/jcmd.1%{man_comp} jcmd.1%{man_comp} %{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave java %{jrebindir -- %{?1}}/java \\
%{_mandir}/man1/keytool.1%{man_comp} keytool.1%{man_comp} %{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave java %{jrebindir -- %{?1}}/java \\
%{_mandir}/man1/rmiregistry.1%{man_comp} rmiregistry.1%{man_comp} %{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1%{man_comp}
%endif
alternatives --install %{_jvmdir}/jre-%{origin} jre_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}} %{priority_for -- %{?1}}
alternatives --install %{_jvmdir}/jre-%{javaver} jre_%{javaver} %{_jvmdir}/%{sdkdir -- %{?1}} %{priority_for -- %{?1}}
alternatives --install %{_jvmdir}/jre-%{javaver}-%{origin} jre_%{javaver}_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}} %{priority_for -- %{?1}}
@ -596,13 +611,6 @@ if [ "x$debug" == "xtrue" ] ; then
fi
alternatives --install %{_bindir}/javac javac %{sdkbindir -- %{?1}}/javac %{priority_for -- %{?1}} \\
--slave %{_jvmdir}/java java_sdk %{_jvmdir}/%{sdkdir -- %{?1}} \\
--slave %{_bindir}/jlink jlink %{sdkbindir -- %{?1}}/jlink \\
--slave %{_bindir}/jmod jmod %{sdkbindir -- %{?1}}/jmod \\
%ifarch %{sa_arches}
%ifnarch %{zero_arches}
--slave %{_bindir}/jhsdb jhsdb %{sdkbindir -- %{?1}}/jhsdb \\
%endif
%endif
--slave %{_bindir}/jar jar %{sdkbindir -- %{?1}}/jar \\
--slave %{_bindir}/jarsigner jarsigner %{sdkbindir -- %{?1}}/jarsigner \\
--slave %{_bindir}/javadoc javadoc %{sdkbindir -- %{?1}}/javadoc \\
@ -612,9 +620,17 @@ alternatives --install %{_bindir}/javac javac %{sdkbindir -- %{?1}}/javac %{prio
--slave %{_bindir}/jdeps jdeps %{sdkbindir -- %{?1}}/jdeps \\
--slave %{_bindir}/jdeprscan jdeprscan %{sdkbindir -- %{?1}}/jdeprscan \\
--slave %{_bindir}/jfr jfr %{sdkbindir -- %{?1}}/jfr \\
%ifarch %{sa_arches}
%ifnarch %{zero_arches}
--slave %{_bindir}/jhsdb jhsdb %{sdkbindir -- %{?1}}/jhsdb \\
%endif
%endif
--slave %{_bindir}/jimage jimage %{sdkbindir -- %{?1}}/jimage \\
--slave %{_bindir}/jinfo jinfo %{sdkbindir -- %{?1}}/jinfo \\
--slave %{_bindir}/jlink jlink %{sdkbindir -- %{?1}}/jlink \\
--slave %{_bindir}/jmap jmap %{sdkbindir -- %{?1}}/jmap \\
--slave %{_bindir}/jmod jmod %{sdkbindir -- %{?1}}/jmod \\
--slave %{_bindir}/jnativescan jnativescan %{sdkbindir -- %{?1}}/jnativescan \\
--slave %{_bindir}/jps jps %{sdkbindir -- %{?1}}/jps \\
--slave %{_bindir}/jpackage jpackage %{sdkbindir -- %{?1}}/jpackage \\
--slave %{_bindir}/jrunscript jrunscript %{sdkbindir -- %{?1}}/jrunscript \\
@ -623,25 +639,63 @@ alternatives --install %{_bindir}/javac javac %{sdkbindir -- %{?1}}/javac %{prio
--slave %{_bindir}/jstat jstat %{sdkbindir -- %{?1}}/jstat \\
--slave %{_bindir}/jstatd jstatd %{sdkbindir -- %{?1}}/jstatd \\
--slave %{_bindir}/jwebserver jwebserver %{sdkbindir -- %{?1}}/jwebserver \\
--slave %{_bindir}/serialver serialver %{sdkbindir -- %{?1}}/serialver \\
--slave %{_mandir}/man1/jar.1%{man_comp} jar.1%{man_comp} %{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jarsigner.1%{man_comp} jarsigner.1%{man_comp} %{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/javac.1%{man_comp} javac.1%{man_comp} %{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/javadoc.1%{man_comp} javadoc.1%{man_comp} %{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/javap.1%{man_comp} javap.1%{man_comp} %{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jconsole.1%{man_comp} jconsole.1%{man_comp} %{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jdb.1%{man_comp} jdb.1%{man_comp} %{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jdeps.1%{man_comp} jdeps.1%{man_comp} %{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jinfo.1%{man_comp} jinfo.1%{man_comp} %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jmap.1%{man_comp} jmap.1%{man_comp} %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jps.1%{man_comp} jps.1%{man_comp} %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jpackage.1%{man_comp} jpackage.1%{man_comp} %{_mandir}/man1/jpackage-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jrunscript.1%{man_comp} jrunscript.1%{man_comp} %{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jstack.1%{man_comp} jstack.1%{man_comp} %{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jstat.1%{man_comp} jstat.1%{man_comp} %{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jwebserver.1%{man_comp} jwebserver.1%{man_comp} %{_mandir}/man1/jwebserver-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/jstatd.1%{man_comp} jstatd.1%{man_comp} %{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1%{man_comp} \\
--slave %{_mandir}/man1/serialver.1%{man_comp} serialver.1%{man_comp} %{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1%{man_comp}
--slave %{_bindir}/serialver serialver %{sdkbindir -- %{?1}}/serialver
%if %{pandoc_available}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jar.1%{man_comp} jar.1%{man_comp} %{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jarsigner.1%{man_comp} jarsigner.1%{man_comp} %{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/javac.1%{man_comp} javac.1%{man_comp} %{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/javadoc.1%{man_comp} javadoc.1%{man_comp} %{_mandir}/man1/javadoc-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/javap.1%{man_comp} javap.1%{man_comp} %{_mandir}/man1/javap-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jconsole.1%{man_comp} jconsole.1%{man_comp} %{_mandir}/man1/jconsole-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jdb.1%{man_comp} jdb.1%{man_comp} %{_mandir}/man1/jdb-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jdeps.1%{man_comp} jdeps.1%{man_comp} %{_mandir}/man1/jdeps-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jdeprscan.1%{man_comp} jdeprscan.1%{man_comp} %{_mandir}/man1/jdeprscan-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jfr.1%{man_comp} jfr.1%{man_comp} %{_mandir}/man1/jfr-%{uniquesuffix -- %{?1}}.1%{man_comp}
%ifarch %{sa_arches}
%ifnarch %{zero_arches}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jhsdb.1%{man_comp} jhsdb.1%{man_comp} %{_mandir}/man1/jhsdb-%{uniquesuffix -- %{?1}}.1%{man_comp}
%endif
%endif
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jimage.1%{man_comp} jimage.1%{man_comp} %{_mandir}/man1/jimage-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jinfo.1%{man_comp} jinfo.1%{man_comp} %{_mandir}/man1/jinfo-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jlink.1%{man_comp} jlink.1%{man_comp} %{_mandir}/man1/jlink-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jmap.1%{man_comp} jmap.1%{man_comp} %{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jmod.1%{man_comp} jmod.1%{man_comp} %{_mandir}/man1/jmod-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jnativescan.1%{man_comp} jnativescan.1%{man_comp} %{_mandir}/man1/jnativescan-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jps.1%{man_comp} jps.1%{man_comp} %{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jpackage.1%{man_comp} jpackage.1%{man_comp} %{_mandir}/man1/jpackage-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jrunscript.1%{man_comp} jrunscript.1%{man_comp} %{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jstack.1%{man_comp} jstack.1%{man_comp} %{_mandir}/man1/jstack-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jstat.1%{man_comp} jstat.1%{man_comp} %{_mandir}/man1/jstat-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jstatd.1%{man_comp} jstatd.1%{man_comp} %{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/jwebserver.1%{man_comp} jwebserver.1%{man_comp} %{_mandir}/man1/jwebserver-%{uniquesuffix -- %{?1}}.1%{man_comp}
alternatives --add-slave javac %{sdkbindir -- %{?1}}/javac \\
%{_mandir}/man1/serialver.1%{man_comp} serialver.1%{man_comp} %{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1%{man_comp}
%endif
alternatives --install %{_jvmdir}/java-%{origin} java_sdk_%{origin} %{_jvmdir}/%{sdkdir -- %{?1}} %{priority_for -- %{?1}}
alternatives --install %{_jvmdir}/java-%{javaver} java_sdk_%{javaver} %{_jvmdir}/%{sdkdir -- %{?1}} %{priority_for -- %{?1}}
}
@ -734,7 +788,7 @@ fi
%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
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/openjdk-devkit.specfile
%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}/0*.patch
%dir %{_defaultdocdir}/%{uniquejavadocdir -- %{?1}}
@ -785,7 +839,6 @@ fi
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libjsvml.so
%endif
%{_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
@ -804,23 +857,30 @@ fi
%ifarch %{simdsort_arches}
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsimdsort.so
%endif
%ifarch %{sleef_arches}
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsleef.so
%endif
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libsyslookup.so
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libverify.so
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libzip.so
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib/jfr
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jfr/default.jfc
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/jfr/profile.jfc
%if %{pandoc_available}
%{_mandir}/man1/java-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/%{alt_java_name}-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jcmd-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/keytool-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/rmiregistry-%{uniquesuffix -- %{?1}}.1*
%endif
%dir %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/*.so
%ifarch %{share_arches}
%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes.jsa
%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes_coh.jsa
%ifnarch %{ix86} %{arm32}
%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes_nocoops.jsa
%attr(444, root, root) %{_jvmdir}/%{sdkdir -- %{?1}}/lib/%{vm_variant}/classes_nocoops_coh.jsa
%endif
%endif
%dir %{etcjavasubdir}
@ -835,7 +895,6 @@ fi
%dir %{etcjavadir -- %{?1}}/conf/security/policy
%dir %{etcjavadir -- %{?1}}/conf/security/policy/limited
%dir %{etcjavadir -- %{?1}}/conf/security/policy/unlimited
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/default.policy
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/blocked.certs
%config(noreplace) %{etcjavadir -- %{?1}}/lib/security/public_suffix_list.dat
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/limited/exempt_local.policy
@ -844,7 +903,6 @@ fi
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/unlimited/default_local.policy
%config(noreplace) %{etcjavadir -- %{?1}}/conf/security/policy/unlimited/default_US_export.policy
%{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/management/jmxremote.access
# This is a config template, thus not config-noreplace
@ -852,6 +910,7 @@ fi
%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/jaxp-strict.properties.template
%config(noreplace) %{etcjavadir -- %{?1}}/conf/logging.properties
%config(noreplace) %{etcjavadir -- %{?1}}/conf/net.properties
%config(noreplace) %{etcjavadir -- %{?1}}/conf/sound.properties
@ -893,13 +952,16 @@ fi
%ifarch %{sa_arches}
%ifnarch %{zero_arches}
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jhsdb
%if %{pandoc_available}
%{_mandir}/man1/jhsdb-%{uniquesuffix -- %{?1}}.1*
%endif
%endif
%endif
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jinfo
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jlink
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmap
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jmod
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jnativescan
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jps
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jpackage
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/jrunscript
@ -911,10 +973,14 @@ fi
%{_jvmdir}/%{sdkdir -- %{?1}}/bin/serialver
%{_jvmdir}/%{sdkdir -- %{?1}}/include
%{_jvmdir}/%{sdkdir -- %{?1}}/lib/ct.sym
%if %{with_systemtap}
%{_jvmdir}/%{sdkdir -- %{?1}}/tapset
%endif
%{_datadir}/applications/*jconsole%{?1}.desktop
%if %{pandoc_available}
%{_mandir}/man1/jar-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jarsigner-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/javac-%{uniquesuffix -- %{?1}}.1*
@ -929,6 +995,7 @@ fi
%{_mandir}/man1/jlink-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jmap-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jmod-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jnativescan-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jps-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jpackage-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jrunscript-%{uniquesuffix -- %{?1}}.1*
@ -938,6 +1005,7 @@ fi
%{_mandir}/man1/jstatd-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/jwebserver-%{uniquesuffix -- %{?1}}.1*
%{_mandir}/man1/serialver-%{uniquesuffix -- %{?1}}.1*
%endif
%if %{with_systemtap}
%dir %{tapsetroot}
@ -945,12 +1013,11 @@ fi
%dir %{tapsetdir}
%{tapsetdir}/*%{_arch}%{?1}.stp
%endif
%if %is_system_jdk
%if %{is_release_build -- %{?1}}
%ghost %{_bindir}/javac
%ghost %{_jvmdir}/java
%ghost %{_bindir}/jlink
%ghost %{_bindir}/jmod
%ghost %{_bindir}/jhsdb
%ghost %{_bindir}/jar
%ghost %{_bindir}/jarsigner
@ -963,7 +1030,10 @@ fi
%ghost %{_bindir}/jfr
%ghost %{_bindir}/jimage
%ghost %{_bindir}/jinfo
%ghost %{_bindir}/jlink
%ghost %{_bindir}/jmap
%ghost %{_bindir}/jmod
%ghost %{_bindir}/jnativescan
%ghost %{_bindir}/jps
%ghost %{_bindir}/jpackage
%ghost %{_bindir}/jrunscript
@ -1185,7 +1255,7 @@ Provides: java-%{origin}-src%{?1} = %{epoch}:%{version}-%{release}
# Prevent brp-java-repack-jars from being run
%global __jar_repack 0
# Define the root name of the portable packages
%global pkgnameroot java-%{fakefeaturever}-%{origin}-portable%{?pkgos:-%{pkgos}}
%global pkgnameroot java-%{featurever}-%{origin}-portable%{?pkgos:-%{pkgos}}
# Define the architectures on which we build
ExclusiveArch: %{aarch64} %{ppc64le} s390x x86_64 riscv64
@ -1206,7 +1276,7 @@ Release: %{?eaprefix}%{rpmrelease}%{?extraver}%{?dist}
# provides >= 1.6.0 must specify the epoch, "java >= 1:1.6.0".
Epoch: 1
Summary: %{origin_nice} %{fakefeaturever} Runtime Environment
Summary: %{origin_nice} %{featurever} Runtime Environment
# Groups are only used up to RHEL 8 and on Fedora versions prior to F30
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
@ -1230,7 +1300,7 @@ License: ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv
URL: http://openjdk.java.net/
# The source tarball, generated using generate_source_tarball.sh
Source0: https://openjdk-sources.osci.io/openjdk%{fakefeaturever}/open%{vcstag}%{ea_designator_zip}.tar.xz
Source0: https://openjdk-sources.osci.io/openjdk%{featurever}/open%{vcstag}%{ea_designator_zip}.tar.xz
# Use 'icedtea_sync.sh' to update the following
# They are based on code contained in the IcedTea project (6.x).
@ -1263,7 +1333,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
Source21: NEWS
Source22: openjdk-devkit.specfile
# Devkit patches; see https://github.com/rh-openjdk/jdk/tree/devkit
@ -1444,43 +1514,48 @@ Provides: bundled(libpng) = 1.6.47
# Version in src/java.base/share/native/libzip/zlib/zlib.h
Provides: bundled(zlib) = 1.3.1
%endif
%ifarch %{sleef_arches}
# SLEEF is always bundled
# Version in src/jdk.incubator.vector/linux/native/libsleef/generated/sleefinline_advsimd.h
Provides: bundled(sleef) = 3.6.1
%endif
# this is always built, also during debug-only build
# when it is built in debug-only this package is just placeholder
%{java_rpo %{nil}}
%description
The %{origin_nice} %{fakefeaturever} runtime environment.
The %{origin_nice} %{featurever} runtime environment.
%if %{include_debug_build}
%package slowdebug
Summary: %{origin_nice} %{fakefeaturever} Runtime Environment %{debug_on}
Summary: %{origin_nice} %{featurever} Runtime Environment %{debug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
%{java_rpo -- %{debug_suffix_unquoted}}
%description slowdebug
The %{origin_nice} %{fakefeaturever} runtime environment.
The %{origin_nice} %{featurever} runtime environment.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package fastdebug
Summary: %{origin_nice} %{fakefeaturever} Runtime Environment %{fastdebug_on}
Summary: %{origin_nice} %{featurever} Runtime Environment %{fastdebug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
%{java_rpo -- %{fastdebug_suffix_unquoted}}
%description fastdebug
The %{origin_nice} %{fakefeaturever} runtime environment.
The %{origin_nice} %{featurever} runtime environment.
%{fastdebug_warning}
%endif
%if %{include_normal_build}
%package headless
Summary: %{origin_nice} %{fakefeaturever} Headless Runtime Environment
Summary: %{origin_nice} %{featurever} Headless Runtime Environment
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1488,12 +1563,12 @@ Group: Development/Languages
%{java_headless_rpo %{nil}}
%description headless
The %{origin_nice} %{fakefeaturever} runtime environment without audio and video support.
The %{origin_nice} %{featurever} runtime environment without audio and video support.
%endif
%if %{include_debug_build}
%package headless-slowdebug
Summary: %{origin_nice} %{fakefeaturever} Runtime Environment %{debug_on}
Summary: %{origin_nice} %{featurever} Runtime Environment %{debug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1501,13 +1576,13 @@ Group: Development/Languages
%{java_headless_rpo -- %{debug_suffix_unquoted}}
%description headless-slowdebug
The %{origin_nice} %{fakefeaturever} runtime environment without audio and video support.
The %{origin_nice} %{featurever} runtime environment without audio and video support.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package headless-fastdebug
Summary: %{origin_nice} %{fakefeaturever} Runtime Environment %{fastdebug_on}
Summary: %{origin_nice} %{featurever} Runtime Environment %{fastdebug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1515,13 +1590,13 @@ Group: Development/Languages
%{java_headless_rpo -- %{fastdebug_suffix_unquoted}}
%description headless-fastdebug
The %{origin_nice} %{fakefeaturever} runtime environment without audio and video support.
The %{origin_nice} %{featurever} runtime environment without audio and video support.
%{fastdebug_warning}
%endif
%if %{include_normal_build}
%package devel
Summary: %{origin_nice} %{fakefeaturever} Development Environment
Summary: %{origin_nice} %{featurever} Development Environment
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1529,12 +1604,12 @@ Group: Development/Languages
%{java_devel_rpo %{nil}}
%description devel
The %{origin_nice} %{fakefeaturever} development tools.
The %{origin_nice} %{featurever} development tools.
%endif
%if %{include_debug_build}
%package devel-slowdebug
Summary: %{origin_nice} %{fakefeaturever} Development Environment %{debug_on}
Summary: %{origin_nice} %{featurever} Development Environment %{debug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1542,13 +1617,13 @@ Group: Development/Languages
%{java_devel_rpo -- %{debug_suffix_unquoted}}
%description devel-slowdebug
The %{origin_nice} %{fakefeaturever} development tools.
The %{origin_nice} %{featurever} development tools.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package devel-fastdebug
Summary: %{origin_nice} %{fakefeaturever} Development Environment %{fastdebug_on}
Summary: %{origin_nice} %{featurever} Development Environment %{fastdebug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Tools
%endif
@ -1556,7 +1631,7 @@ Group: Development/Tools
%{java_devel_rpo -- %{fastdebug_suffix_unquoted}}
%description devel-fastdebug
The %{origin_nice} %{fakefeaturever} development tools .
The %{origin_nice} %{featurever} development tools .
%{fastdebug_warning}
%endif
@ -1564,33 +1639,33 @@ The %{origin_nice} %{fakefeaturever} development tools .
%if %{include_normal_build}
%package static-libs
Summary: %{origin_nice} %{fakefeaturever} libraries for static linking
Summary: %{origin_nice} %{featurever} libraries for static linking
%{java_static_libs_rpo %{nil}}
%description static-libs
The %{origin_nice} %{fakefeaturever} libraries for static linking.
The %{origin_nice} %{featurever} libraries for static linking.
%endif
%if %{include_debug_build}
%package static-libs-slowdebug
Summary: %{origin_nice} %{fakefeaturever} libraries for static linking %{debug_on}
Summary: %{origin_nice} %{featurever} libraries for static linking %{debug_on}
%{java_static_libs_rpo -- %{debug_suffix_unquoted}}
%description static-libs-slowdebug
The %{origin_nice} %{fakefeaturever} libraries for static linking.
The %{origin_nice} %{featurever} libraries for static linking.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package static-libs-fastdebug
Summary: %{origin_nice} %{fakefeaturever} libraries for static linking %{fastdebug_on}
Summary: %{origin_nice} %{featurever} libraries for static linking %{fastdebug_on}
%{java_static_libs_rpo -- %{fastdebug_suffix_unquoted}}
%description static-libs-fastdebug
The %{origin_nice} %{fakefeaturever} libraries for static linking.
The %{origin_nice} %{featurever} libraries for static linking.
%{fastdebug_warning}
%endif
@ -1599,7 +1674,7 @@ The %{origin_nice} %{fakefeaturever} libraries for static linking.
%if %{include_normal_build}
%package jmods
Summary: JMods for %{origin_nice} %{fakefeaturever}
Summary: JMods for %{origin_nice} %{featurever}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1607,12 +1682,12 @@ Group: Development/Languages
%{java_jmods_rpo %{nil}}
%description jmods
The JMods for %{origin_nice} %{fakefeaturever}.
The JMods for %{origin_nice} %{featurever}.
%endif
%if %{include_debug_build}
%package jmods-slowdebug
Summary: JMods for %{origin_nice} %{fakefeaturever} %{debug_on}
Summary: JMods for %{origin_nice} %{featurever} %{debug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1620,13 +1695,13 @@ Group: Development/Languages
%{java_jmods_rpo -- %{debug_suffix_unquoted}}
%description jmods-slowdebug
The JMods for %{origin_nice} %{fakefeaturever}.
The JMods for %{origin_nice} %{featurever}.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package jmods-fastdebug
Summary: JMods for %{origin_nice} %{fakefeaturever} %{fastdebug_on}
Summary: JMods for %{origin_nice} %{featurever} %{fastdebug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Tools
%endif
@ -1634,13 +1709,13 @@ Group: Development/Tools
%{java_jmods_rpo -- %{fastdebug_suffix_unquoted}}
%description jmods-fastdebug
The JMods for %{origin_nice} %{fakefeaturever}.
The JMods for %{origin_nice} %{featurever}.
%{fastdebug_warning}
%endif
%if %{include_normal_build}
%package demo
Summary: %{origin_nice} %{fakefeaturever} Demos
Summary: %{origin_nice} %{featurever} Demos
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1648,12 +1723,12 @@ Group: Development/Languages
%{java_demo_rpo %{nil}}
%description demo
The %{origin_nice} %{fakefeaturever} demos.
The %{origin_nice} %{featurever} demos.
%endif
%if %{include_debug_build}
%package demo-slowdebug
Summary: %{origin_nice} %{fakefeaturever} Demos %{debug_on}
Summary: %{origin_nice} %{featurever} Demos %{debug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1661,13 +1736,13 @@ Group: Development/Languages
%{java_demo_rpo -- %{debug_suffix_unquoted}}
%description demo-slowdebug
The %{origin_nice} %{fakefeaturever} demos.
The %{origin_nice} %{featurever} demos.
%{debug_warning}
%endif
%if %{include_fastdebug_build}
%package demo-fastdebug
Summary: %{origin_nice} %{fakefeaturever} Demos %{fastdebug_on}
Summary: %{origin_nice} %{featurever} Demos %{fastdebug_on}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1675,13 +1750,13 @@ Group: Development/Languages
%{java_demo_rpo -- %{fastdebug_suffix_unquoted}}
%description demo-fastdebug
The %{origin_nice} %{fakefeaturever} demos.
The %{origin_nice} %{featurever} demos.
%{fastdebug_warning}
%endif
%if %{include_normal_build}
%package src
Summary: %{origin_nice} %{fakefeaturever} Source Bundle
Summary: %{origin_nice} %{featurever} Source Bundle
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1689,13 +1764,13 @@ Group: Development/Languages
%{java_src_rpo %{nil}}
%description src
The %{compatiblename}-src sub-package contains the complete %{origin_nice} %{fakefeaturever}
The %{compatiblename}-src sub-package contains the complete %{origin_nice} %{featurever}
class library source code for use by IDE indexers and debuggers.
%endif
%if %{include_debug_build}
%package src-slowdebug
Summary: %{origin_nice} %{fakefeaturever} Source Bundle %{for_debug}
Summary: %{origin_nice} %{featurever} Source Bundle %{for_debug}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1703,13 +1778,13 @@ Group: Development/Languages
%{java_src_rpo -- %{debug_suffix_unquoted}}
%description src-slowdebug
The %{compatiblename}-src-slowdebug sub-package contains the complete %{origin_nice} %{fakefeaturever}
The %{compatiblename}-src-slowdebug sub-package contains the complete %{origin_nice} %{featurever}
class library source code for use by IDE indexers and debuggers, %{for_debug}.
%endif
%if %{include_fastdebug_build}
%package src-fastdebug
Summary: %{origin_nice} %{fakefeaturever} Source Bundle %{for_fastdebug}
Summary: %{origin_nice} %{featurever} Source Bundle %{for_fastdebug}
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Development/Languages
%endif
@ -1717,13 +1792,13 @@ Group: Development/Languages
%{java_src_rpo -- %{fastdebug_suffix_unquoted}}
%description src-fastdebug
The %{compatiblename}-src-fastdebug sub-package contains the complete %{origin_nice} %{fakefeaturever}
The %{compatiblename}-src-fastdebug sub-package contains the complete %{origin_nice} %{featurever}
class library source code for use by IDE indexers and debuggers, %{for_fastdebug}.
%endif
%if %{include_normal_build}
%package javadoc
Summary: %{origin_nice} %{fakefeaturever} API documentation
Summary: %{origin_nice} %{featurever} API documentation
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Documentation
%endif
@ -1739,9 +1814,9 @@ Requires(postun): %{alternatives_requires}
%{java_javadoc_rpo -- %{nil}}
%description javadoc
The %{origin_nice} %{fakefeaturever} API documentation.
The %{origin_nice} %{featurever} API documentation.
%package javadoc-zip
Summary: %{origin_nice} %{fakefeaturever} API documentation compressed in a single archive
Summary: %{origin_nice} %{featurever} API documentation compressed in a single archive
%if (0%{?rhel} > 0 && 0%{?rhel} <= 8) || (0%{?fedora} >= 0 && 0%{?fedora} < 30)
Group: Documentation
%endif
@ -1758,7 +1833,7 @@ Requires(postun): %{alternatives_requires}
%{java_javadoc_rpo -- %{nil}}
%description javadoc-zip
The %{origin_nice} %{fakefeaturever} API documentation compressed in a single archive.
The %{origin_nice} %{featurever} API documentation compressed in a single archive.
%endif
%prep
@ -1891,11 +1966,11 @@ mkdir -p $(dirname %{installoutputdir})
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}
for suffix in %{build_loop} ; do
@ -1915,7 +1990,7 @@ for suffix in %{build_loop} ; do
# TODO: should verify checksums when using packages from buildroot
tar -xJf ${jdkzip}
tar -xJf ${staticlibzip}
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}-%{prelease}.%{portablesuffix}.%{_arch}"
@ -2002,14 +2077,14 @@ $JAVA_HOME/bin/java -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -versi
unzip -l $JAVA_HOME/lib/src.zip | grep 'sun.misc.Unsafe'
# 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 LineNumberTable
$JAVA_HOME/bin/javap -l java.lang.Object | grep LocalVariableTable
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep "Compiled from"
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep LineNumberTable
$JAVA_HOME/bin/javap -c -l java.lang.Object | grep LocalVariableTable
# Check generated class files include useful debugging information
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep "Compiled from"
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LineNumberTable
$JAVA_HOME/bin/javap -l java.nio.ByteBuffer | grep LocalVariableTable
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep "Compiled from"
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep LineNumberTable
$JAVA_HOME/bin/javap -c -l java.nio.ByteBuffer | grep LocalVariableTable
%else
@ -2157,8 +2232,7 @@ install -D -p -m 755 ${miscdir}/%{alt_java_name} $RPM_BUILD_ROOT%{jrebindir -- $
ln -sf /etc/pki/java/cacerts .
popd
# Copy alt-java man page into image so it gets installed with the others
cp -a ${miscdir}/%{alt_java_name}.1 ${jdk_image}/man/man1
%if %{pandoc_available}
# Install man pages
install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1
pushd ${jdk_image}
@ -2173,6 +2247,7 @@ install -D -p -m 755 ${miscdir}/%{alt_java_name} $RPM_BUILD_ROOT%{jrebindir -- $
# Remove man pages from jdk image
rm -rf $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir -- $suffix}/man
popd
%endif
if ! echo $suffix | grep -q "debug" ; then
# Install Javadoc documentation
@ -2478,6 +2553,43 @@ exit 0
%endif
%changelog
* Wed Nov 12 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:25.0.1.0.8-2
- Remove superfluous backslashes that cause two alternative commands to be combined
- Related: RHEL-120553
* Mon Nov 10 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:25.0.1.0.8-1
- Update to jdk-25.0.1+8 (GA)
- Update release notes with features of JDK 25
- Mention finalisation JEP for features finalised in JDK 22, 23 & 24
- Drop fakefeaturever now we have reached OpenJDK 25
- Update release notes to 25.0.1+8
- Sync the copy of the portable specfile with the latest update
- Resolves: RHEL-120553
* Wed Nov 05 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:24.0.2.0.12-1
- Update to jdk-24.0.2+12 (GA)
- Update release notes with features of JDK 24
- alt-java man page installation is now handled by the OpenJDK build
- Adjust TestTranslations.java with updated German translations from CLDR 46 (JDK-8333582) (Mountain->Mountains)
- Run javap with the disassembled code (-c) option now required for -l by JDK-8345145
- Sync the copy of the portable specfile with the latest update
- Remove default.policy and java.policy following JDK-8338411: "Permanently Disable the Security Manager"
- Make man page handling dependent on pandoc being available during the portable build
- Handle new CDS archive variants (*_coh*) added by Compact Object Headers (JDK-8305895)
- Add missing man page alternatives for jdeprscan, jfr, jhsdb, jimage, jlink & jmod and fix alphabetical ordering
- Support jnativescan added by JDK-8317611: "Add a tool like jdeprscan to find usage of restricted methods"
- Add recent native libraries to _privatelibs (libjsvml.so, libsimdsort.so, libsyslookup.so)
- Support libsleef on AArch64 & RISC-V added by JDK-8329816, JDK-8320500 (RISC-V) & JDK-8312425 (AArch64)
- Related: RHEL-120553
* Sat Oct 25 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:23.0.2.0.7-1
- Update to jdk-23.0.2+7 (GA)
- Update release notes with features of JDK 23
- Sync the copy of the portable specfile with the latest update
- Remove lible.so handling following its removal in JDK-8327476: "Upgrade JLine to 3.26.1"
- Install jaxp-strict.properties.template added by JDK-8330542: "Template for Creating Strict JAXP Configuration File"
- Related: RHEL-120553
* Tue Sep 23 2025 Andrew Hughes <gnu.andrew@redhat.com> - 1:22.0.2.0.9-1
- Update to jdk-22.0.2+9 (GA)
- Update release notes with features of JDK 22

View File

@ -1,2 +1,2 @@
SHA512 (tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz) = 97d026212363b3c83f6a04100ad7f6fdde833d16579717f8756e2b8c2eb70e144a41a330cb9ccde9c3badd37a2d54fdf4650a950ec21d8b686d545ecb2a64d30
SHA512 (openjdk-22.0.2+9.tar.xz) = 960746381f56cb516a2298f75dbf877554b59e73752dc29b040b8629b153174d2ea2f612d3479b511aaac293e4d336c798a58fd1ba4d2b9d5933899f64d04313
SHA512 (openjdk-25.0.1+8.tar.xz) = eb84d876f81ca02803283e8294c89b6acbed3753426811c3bcc228615c9618deefc85da4aa702800cac2feb103e628ee8b92292b316e9d7e12a58b6de69c5085