Merge branch 'f37' into f36
This commit is contained in:
commit
e1191475ea
236
NEWS
236
NEWS
@ -3,187 +3,13 @@ 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 19.0.2 (2023-01-17):
|
||||
===========================================
|
||||
Live versions of these release notes can be found at:
|
||||
* https://builds.shipilev.net/backports-monitor/release-notes-19.0.2.html
|
||||
|
||||
* CVEs
|
||||
- CVE-2023-21835
|
||||
- CVE-2023-21843
|
||||
* Security fixes
|
||||
- JDK-8286070: Improve UTF8 representation
|
||||
- JDK-8286496: Improve Thread labels
|
||||
- JDK-8287411: Enhance DTLS performance
|
||||
- JDK-8288516: Enhance font creation
|
||||
- JDK-8293554: Enhanced DH Key Exchanges
|
||||
- JDK-8293598: Enhance InetAddress address handling
|
||||
- JDK-8293717: Objective view of ObjectView
|
||||
- JDK-8293734: Improve BMP image handling
|
||||
- JDK-8293742: Better Banking of Sounds
|
||||
- JDK-8295687: Better BMP bounds
|
||||
* Other changes
|
||||
- JDK-8022403: sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails
|
||||
- JDK-8029633: Raw inner class constructor ref should not perform diamond inference
|
||||
- JDK-8178698: javax/sound/midi/Sequencer/MetaCallback.java failed with timeout
|
||||
- JDK-8277970: Test jdk/sun/security/ssl/SSLSessionImpl/NoInvalidateSocketException.java fails with "tag mismatch"
|
||||
- JDK-8279941: sun/security/pkcs11/Signature/TestDSAKeyLength.java fails when NSS version detection fails
|
||||
- JDK-8285604: closed sun/java2d/GdiRendering/ClipShapeRendering.java failed with "Incorrect color ffeeeeee instead of ff0000ff in pixel (100, 100)"
|
||||
- JDK-8285835: SIGSEGV in PhaseIdealLoop::build_loop_late_post_work
|
||||
- JDK-8286314: Trampoline not created for far runtime targets outside small CodeCache
|
||||
- JDK-8286624: Regression Test CoordinateTruncationBug.java fails on OL8.3
|
||||
- JDK-8287217: C2: PhaseCCP: remove not visited nodes, prevent type inconsistency
|
||||
- JDK-8288132: Update test artifacts in QuoVadis CA interop tests
|
||||
- JDK-8288377: [REDO] DST not applying properly with zone id offset set with TZ env variable
|
||||
- JDK-8288992: AArch64: CMN should be handled the same way as CMP
|
||||
- JDK-8290164: compiler/runtime/TestConstantsInError.java fails on riscv
|
||||
- JDK-8290246: test fails "assert(init != __null) failed: initialization not found"
|
||||
- JDK-8290451: Incorrect result when switching to C2 OSR compilation from C1
|
||||
- JDK-8290496: riscv: Fix build warnings-as-errors with GCC 11
|
||||
- JDK-8290529: C2: assert(BoolTest(btest).is_canonical()) failure
|
||||
- JDK-8290694: Update the release date after forking Oct CPU22_10
|
||||
- JDK-8290705: StringConcat::validate_mem_flow asserts with "unexpected user: StoreI"
|
||||
- JDK-8290711: assert(false) failed: infinite loop in PhaseIterGVN::optimize
|
||||
- JDK-8290781: Segfault at PhaseIdealLoop::clone_loop_handle_data_uses
|
||||
- JDK-8290900: Build failure with Clang 14+ due to function warning attribute
|
||||
- JDK-8290964: C2 compilation fails with assert "non-reduction loop contains reduction nodes"
|
||||
- JDK-8290974: Bump version numbers for January 2023 CPU
|
||||
- JDK-8291508: Fix some tests with "requires vm.jvmti & vm.continuations"
|
||||
- JDK-8291599: Assertion in PhaseIdealLoop::skeleton_predicate_has_opaque after JDK-8289127
|
||||
- JDK-8291633: Build failures with GCC 11, Alpine 3 due to incompatible casts from nullptr
|
||||
- JDK-8291775: C2: assert(r != __null && r->is_Region()) failed: this phi must have a region
|
||||
- JDK-8292158: AES-CTR cipher state corruption with AVX-512
|
||||
- JDK-8292159: TYPE_USE annotations on generic type arguments of record components discarded
|
||||
- JDK-8292385: assert(ctrl == kit.control()) failed: Control flow was added although the intrinsic bailed out
|
||||
- JDK-8292695: SIGQUIT and jcmd attaching mechanism does not work with signal chaining library
|
||||
- JDK-8292756: java.lang.AssertionError at at jdk.compiler/com.sun.tools.javac.code.Scope$ScopeImpl.leave(Scope.java:386)
|
||||
- JDK-8292780: misc tests failed "assert(false) failed: graph should be schedulable"
|
||||
- JDK-8292899: CustomTzIDCheckDST.java testcase failed on AIX platform
|
||||
- JDK-8292969: Bad Thread Utilization in ForkJoinPool
|
||||
- JDK-8293044: C1: Missing access check on non-accessible class
|
||||
- JDK-8293100: RISC-V: Need to save and restore callee-saved FloatRegisters in StubGenerator::generate_call_stub
|
||||
- JDK-8293348: A false cyclic inheritance error reported
|
||||
- JDK-8293578: Duplicate ldc generated by javac
|
||||
- JDK-8293701: jdeps InverseDepsAnalyzer runs into NoSuchElementException: No value present
|
||||
- JDK-8293816: CI: ciBytecodeStream::get_klass() is not consistent
|
||||
- JDK-8293834: Update CLDR data following tzdata 2022c update
|
||||
- JDK-8293996: C2: fix and simplify IdealLoopTree::do_remove_empty_loop
|
||||
- JDK-8294307: ISO 4217 Amendment 173 Update
|
||||
- JDK-8294357: (tz) Update Timezone Data to 2022d
|
||||
- JDK-8294517: Update jdk19u fix version to 19.0.2
|
||||
- JDK-8294538: missing is_unloading() check in SharedRuntime::fixup_callers_callsite()
|
||||
- JDK-8294602: Change milestone to fcs for releases: jdk-11.0.18, jdk-17.0.6, jdk-19.0.2
|
||||
- JDK-8294755: Update milestone to ea for 19.0.2
|
||||
- JDK-8294840: langtools OptionalDependencyTest.java use File.pathSeparator
|
||||
- JDK-8295173: (tz) Update Timezone Data to 2022e
|
||||
- JDK-8295264: Fix PaX check on RISC-V
|
||||
- JDK-8295268: Optimized builds are broken due to incorrect assert_is_rfp shortcuts
|
||||
- JDK-8295414: [Aarch64] C2: assert(false) failed: bad AD file
|
||||
- JDK-8295469: S390X: Optimized builds are broken
|
||||
- JDK-8295554: Move the "sizecalc.h" to the correct location
|
||||
- JDK-8295723: security/infra/wycheproof/RunWycheproof.java fails with Assertion Error
|
||||
- JDK-8295926: RISC-V: C1: Fix LIRGenerator::do_LibmIntrinsic
|
||||
- JDK-8296083: javax/swing/JTree/6263446/bug6263446.java fails intermittently on a VM
|
||||
- JDK-8296108: (tz) Update Timezone Data to 2022f
|
||||
- JDK-8296448: RISC-V: Fix temp usages of heapbase register killed by MacroAssembler::en/decode_klass_not_null
|
||||
- JDK-8296463: Memory leak in JVM_StartThread with the integration of Virtual threads
|
||||
- JDK-8296480: java/security/cert/pkix/policyChanges/TestPolicy.java is failing
|
||||
- JDK-8296485: BuildEEBasicConstraints.java test fails with SunCertPathBuilderException
|
||||
- JDK-8296496: Overzealous check in sizecalc.h prevents large memory allocation
|
||||
- JDK-8296602: RISC-V: improve performance of copy_memory stub
|
||||
- JDK-8296632: Write a test to verify the content change of TextArea sends TextEvent
|
||||
- JDK-8296715: CLDR v42 update for tzdata 2022f
|
||||
- JDK-8296733: JFR: File Read event for RandomAccessFile::write(byte[]) is incorrect
|
||||
- JDK-8296771: RISC-V: C2: assert(false) failed: bad AD file
|
||||
- JDK-8296945: PublicMethodsTest is slow due to dependency verification with debug builds
|
||||
- JDK-8296957: One more cast in SAFE_SIZE_NEW_ARRAY2
|
||||
- JDK-8296970: Remove sysThreadAvailableStackWithSlack from hotspot-symbols
|
||||
- JDK-8297147: UnexpectedSourceImageSize test times out on slow machines when fastdebug is used
|
||||
- JDK-8297153: sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails again
|
||||
- JDK-8297241: Update sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
|
||||
- JDK-8297309: Memory leak in ShenandoahFullGC
|
||||
- JDK-8297451: ProcessHandleImpl should assert privilege when modifying reaper thread
|
||||
- JDK-8297476: Increase InlineSmallCode default from 1000 to 2500 for RISC-V
|
||||
|
||||
Notes on individual issues:
|
||||
===========================
|
||||
|
||||
client-libs/javax.imageio:
|
||||
|
||||
JDK-8295687: Better BMP bounds
|
||||
==============================
|
||||
Loading a linked ICC profile within a BMP image is now disabled by
|
||||
default. To re-enable it, set the new system property
|
||||
`sun.imageio.bmp.enabledLinkedProfiles` to `true`. This new property
|
||||
replaces the old property,
|
||||
`sun.imageio.plugins.bmp.disableLinkedProfiles`.
|
||||
|
||||
client-libs/javax.sound:
|
||||
|
||||
JDK-8293742: Better Banking of Sounds
|
||||
=====================================
|
||||
Previously, the SoundbankReader implementation,
|
||||
`com.sun.media.sound.JARSoundbankReader`, would download a JAR
|
||||
soundbank from a URL. This behaviour is now disabled by default. To
|
||||
re-enable it, set the new system property `jdk.sound.jarsoundbank` to
|
||||
`true`.
|
||||
|
||||
security-libs/javax.net.ssl:
|
||||
|
||||
JDK-8287411: Enhance DTLS performance
|
||||
=====================================
|
||||
The JDK now exchanges DTLS cookies for all handshakes, new and
|
||||
resumed. The previous behaviour can be re-enabled by setting the new
|
||||
system property `jdk.tls.enableDtlsResumeCookie` to `false`.
|
||||
|
||||
New in release OpenJDK 19.0.1 (2022-10-18):
|
||||
===========================================
|
||||
Live versions of these release notes can be found at:
|
||||
* https://builds.shipilev.net/backports-monitor/release-notes-19.0.1.html
|
||||
|
||||
* Security fixes
|
||||
- JDK-8282252: Improve BigInteger/Decimal validation
|
||||
- JDK-8285662: Better permission resolution
|
||||
- JDK-8286077, CVE-2022-21618: Wider MultiByte conversions
|
||||
- JDK-8286511: Improve macro allocation
|
||||
- JDK-8286519: Better memory handling
|
||||
- JDK-8286526, CVE-2022-21619: Improve NTLM support
|
||||
- JDK-8286910, CVE-2022-21624: Improve JNDI lookups
|
||||
- JDK-8286918, CVE-2022-21628: Better HttpServer service
|
||||
- JDK-8287446: Enhance icon presentations
|
||||
- JDK-8288508: Enhance ECDSA usage
|
||||
- JDK-8289366, CVE-2022-39399: Improve HTTP/2 client usage
|
||||
- JDK-8289853: Update HarfBuzz to 4.4.1
|
||||
- JDK-8290334: Update FreeType to 2.12.1
|
||||
* Other changes
|
||||
- JDK-8028265: Add legacy tz tests to OpenJDK
|
||||
- JDK-8212096: javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java failed intermittently due to SSLException: Tag mismatch
|
||||
- JDK-8227651: Tests fail with SSLProtocolException: Input record too big
|
||||
- JDK-8284977: MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn't exist
|
||||
- JDK-8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run
|
||||
- JDK-8287906: Rewrite of GitHub Actions (GHA) sanity tests
|
||||
- JDK-8287917: System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier
|
||||
- JDK-8288499: Restore cancel-in-progress in GHA
|
||||
- JDK-8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ...
|
||||
- JDK-8288653: Bump version numbers for 19.0.1
|
||||
- JDK-8290000: Bump macOS GitHub actions to macOS 11
|
||||
- JDK-8290695: Change milestone to fcs for releases: jdk-11.0.17, jdk-17.0.5, jdk-19.0.1
|
||||
- JDK-8291640: java/beans/XMLDecoder/8028054/Task.java should use the 3-arg Class.forName
|
||||
- JDK-8291897: TerminatingThreadLocal(s) not registered from virtual thread(s)
|
||||
- JDK-8292051: jdk/internal/misc/TerminatingThreadLocal/TestTerminatingThreadLocal.java failed "AssertionError: Expected terminated values: [666] but got: []"
|
||||
- JDK-8292240: CarrierThread.blocking not reset when spare not activated
|
||||
- JDK-8292487: Back out the fix for JDK-8281962 from jdk19u
|
||||
- JDK-8292579: (tz) Update Timezone Data to 2022c
|
||||
- JDK-8292654: G1 remembered set memory footprint regression after JDK-8286115
|
||||
- JDK-8293180: JQuery UI license file not updated
|
||||
|
||||
New in release OpenJDK 19.0.0 (2022-09-20):
|
||||
New in release OpenJDK 20.0.0 (2023-03-21):
|
||||
===========================================
|
||||
Major changes are listed below. Some changes may have been backported
|
||||
to earlier releases following their first appearance in OpenJDK 19.
|
||||
to earlier releases following their first appearance in OpenJDK 20.
|
||||
|
||||
The full list of changes in 19u can be found at:
|
||||
- * https://builds.shipilev.net/backports-monitor/release-notes-19.txt
|
||||
The full list of changes in 20u can be found at:
|
||||
- * https://builds.shipilev.net/backports-monitor/release-notes-20.txt
|
||||
|
||||
NEW FEATURES
|
||||
============
|
||||
@ -196,6 +22,7 @@ Pattern Matching for switch
|
||||
https://openjdk.org/jeps/406
|
||||
https://openjdk.org/jeps/420
|
||||
https://openjdk.org/jeps/427
|
||||
https://openjdk.org/jeps/433
|
||||
|
||||
Enhance the Java programming language with pattern matching for
|
||||
`switch` expressions and statements, along with extensions to the
|
||||
@ -204,13 +31,15 @@ expression to be tested against a number of patterns, each with a
|
||||
specific action, so that complex data-oriented queries can be
|
||||
expressed concisely and safely.
|
||||
|
||||
This was a preview feature (http://openjdk.java.net/jeps/12) in
|
||||
OpenJDK 17 (JEP 406) and saw a second preview in OpenJDK 18 (JEP 420).
|
||||
It reaches its third preview (JEP 427) in OpenJDK 19.
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 17 (JEP 406), which saw a second preview in OpenJDK 18 (JEP
|
||||
420) and a third in OpenJDK 19 (JEP 427). It reaches its fourth
|
||||
preview (JEP 427) in OpenJDK 20.
|
||||
|
||||
Record Patterns
|
||||
===============
|
||||
https://openjdk.org/jeps/405
|
||||
https://openjdk.org/jeps/432
|
||||
|
||||
Enhance the Java programming language with record patterns to
|
||||
deconstruct record values. Record patterns and type patterns can be
|
||||
@ -218,17 +47,30 @@ nested to enable a powerful, declarative, and composable form of data
|
||||
navigation and processing.
|
||||
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 19 (JEP 405)
|
||||
in OpenJDK 19 (JEP 405). It reaches its second preview (JEP 432) in
|
||||
OpenJDK 20.
|
||||
|
||||
Library Features
|
||||
================
|
||||
|
||||
Scoped Values
|
||||
=============
|
||||
https://openjdk.org/jeps/429
|
||||
|
||||
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 is an incubation feature (https://openjdk.java.net/jeps/11)
|
||||
introduced in OpenJDK 20 (JEP 429).
|
||||
|
||||
Vector API
|
||||
==========
|
||||
https://openjdk.org/jeps/338
|
||||
https://openjdk.org/jeps/414
|
||||
https://openjdk.org/jeps/417
|
||||
https://openjdk.org/jeps/426
|
||||
https://openjdk.org/jeps/438
|
||||
|
||||
Introduce an API to express vector computations that reliably compile
|
||||
at runtime to optimal vector hardware instructions on supported CPU
|
||||
@ -237,14 +79,15 @@ scalar computations.
|
||||
|
||||
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 and
|
||||
OpenJDK 19 sees its fourth (JEP 426).
|
||||
place in OpenJDK 17 (JEP 414), OpenJDK 18 (JEP 417) saw a third,
|
||||
OpenJDK 19 a fourth (JEP 426) and OpenJDK 20 (JEP 438) sees its fifth.
|
||||
|
||||
Foreign Function & Memory API
|
||||
=============================
|
||||
https://openjdk.org/jeps/412
|
||||
https://openjdk.org/jeps/419
|
||||
https://openjdk.org/jeps/424
|
||||
https://openjdk.org/jeps/434
|
||||
|
||||
Introduce an API by which Java programs can interoperate with code and
|
||||
data outside of the Java runtime. By efficiently invoking foreign
|
||||
@ -259,22 +102,26 @@ It was first introduced in incubation
|
||||
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 in OpenJDK 19 (JEP 424).
|
||||
419) before its inclusion as a preview in OpenJDK 19 (JEP 424). It
|
||||
reaches a second preview in OpenJDK 20 (JEP 434).
|
||||
|
||||
Virtual Threads
|
||||
===============
|
||||
https://openjdk.org/jeps/425
|
||||
https://openjdk.org/jeps/436
|
||||
|
||||
Introduce virtual threads to the Java Platform. Virtual threads are
|
||||
lightweight threads that dramatically reduce the effort of writing,
|
||||
maintaining, and observing high-throughput concurrent applications.
|
||||
|
||||
This is a preview feature (http://openjdk.java.net/jeps/12) introduced
|
||||
in OpenJDK 19 (JEP 425)
|
||||
in OpenJDK 19 (JEP 425) and reaching its second preview in OpenJDK 20
|
||||
(JEP 436).
|
||||
|
||||
Structured Concurrency
|
||||
======================
|
||||
https://openjdk.org/jeps/428
|
||||
https://openjdk.org/jeps/437
|
||||
|
||||
Simplify multithreaded programming by introducing an API for
|
||||
structured concurrency. Structured concurrency treats multiple tasks
|
||||
@ -283,18 +130,5 @@ streamlining error handling and cancellation, improving reliability,
|
||||
and enhancing observability.
|
||||
|
||||
This is an incubation feature (https://openjdk.java.net/jeps/11)
|
||||
introduced in OpenJDK 19 (JEP 428).
|
||||
|
||||
Ports
|
||||
=====
|
||||
|
||||
Linux/RISC-V Port
|
||||
=================
|
||||
https://openjdk.org/jeps/422
|
||||
|
||||
RISC-V is a free and open-source RISC instruction set architecture
|
||||
(ISA) designed originally at the University of California, Berkeley,
|
||||
and now developed collaboratively under the sponsorship of RISC-V
|
||||
International. It is already supported by a wide range of language
|
||||
toolchains. With the increasing availability of RISC-V hardware, a
|
||||
port of the JDK would be valuable.
|
||||
introduced in OpenJDK 19 (JEP 428). A second round of incubation takes
|
||||
place in OpenJDK 20 (JEP 437).
|
||||
|
@ -52,7 +52,7 @@ 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", "MDT",
|
||||
"heure des Rocheuses", "UTC\u221207:00", "MT"});
|
||||
map.put(Locale.GERMANY, new String[] { "Rocky Mountain-Normalzeit", "GMT-07:00", "MST",
|
||||
map.put(Locale.GERMANY, new String[] { "Rocky-Mountain-Normalzeit", "GMT-07:00", "MST",
|
||||
"Rocky-Mountain-Sommerzeit", "GMT-06:00", "MDT",
|
||||
"Rocky-Mountain-Zeit", "GMT-07:00", "MT"});
|
||||
CIUDAD_JUAREZ = Collections.unmodifiableMap(map);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -17,7 +17,7 @@
|
||||
# PROJECT_NAME=release
|
||||
# OPENJDK_URL=http://icedtea.classpath.org/hg/
|
||||
# TO_COMPRESS="*/tapset"
|
||||
#
|
||||
#
|
||||
# They are used to create correct name and are used in construction of sources url (unless REPO_ROOT is set)
|
||||
|
||||
# This script creates a single source tarball out of the repository
|
||||
@ -36,12 +36,9 @@ fi
|
||||
set -e
|
||||
|
||||
OPENJDK_URL_DEFAULT=https://github.com
|
||||
PROJECT_NAME_DEFAULT=openjdk
|
||||
REPO_NAME_DEFAULT=jdk20u
|
||||
VERSION_DEFAULT=jdk-20+36
|
||||
COMPRESSION_DEFAULT=xz
|
||||
# Corresponding IcedTea version
|
||||
ICEDTEA_VERSION=13.0
|
||||
ICEDTEA_VERSION=15.0
|
||||
|
||||
if [ "x$1" = "xhelp" ] ; then
|
||||
echo -e "Behaviour may be specified by setting the following variables:\n"
|
||||
@ -53,35 +50,54 @@ if [ "x$1" = "xhelp" ] ; then
|
||||
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 "BOOT_JDK - the bootstrap JDK to satisfy the configure run"
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
|
||||
if [ "x$VERSION" = "x" ] ; then
|
||||
VERSION="$VERSION_DEFAULT"
|
||||
echo "No VERSION specified"
|
||||
exit 2
|
||||
fi
|
||||
echo "Version: ${VERSION}"
|
||||
NUM_VER=${VERSION##jdk-}
|
||||
RELEASE_VER=${NUM_VER%%+*}
|
||||
BUILD_VER=${NUM_VER##*+}
|
||||
MAJOR_VER=${RELEASE_VER%%.*}
|
||||
echo "Major version is ${MAJOR_VER}, release ${RELEASE_VER}, build ${BUILD_VER}"
|
||||
|
||||
if [ "x$REPO_NAME" = "x" ] ; then
|
||||
REPO_NAME="$REPO_NAME_DEFAULT"
|
||||
if [ "x$BOOT_JDK" = "x" ] ; then
|
||||
echo "No boot JDK specified".
|
||||
BOOT_JDK=/usr/lib/jvm/java-${MAJOR_VER}-openjdk;
|
||||
echo -n "Checking for ${BOOT_JDK}...";
|
||||
if [ -d ${BOOT_JDK} -a -x ${BOOT_JDK}/bin/java ] ; then
|
||||
echo "Boot JDK found at ${BOOT_JDK}";
|
||||
else
|
||||
echo "Not found";
|
||||
PREV_VER=$((${MAJOR_VER} - 1));
|
||||
BOOT_JDK=/usr/lib/jvm/java-${PREV_VER}-openjdk;
|
||||
echo -n "Checking for ${BOOT_JDK}...";
|
||||
if [ -d ${BOOT_JDK} -a -x ${BOOT_JDK}/bin/java ] ; then
|
||||
echo "Boot JDK found at ${BOOT_JDK}";
|
||||
else
|
||||
echo "Not found";
|
||||
exit 4;
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Boot JDK: ${BOOT_JDK}";
|
||||
fi
|
||||
echo "Repo name: ${VERSION}"
|
||||
|
||||
if [ "x$PROJECT_NAME" = "x" ] ; then
|
||||
PROJECT_NAME="$PROJECT_NAME_DEFAULT"
|
||||
fi
|
||||
echo "Version: ${PROJECT_NAME}"
|
||||
|
||||
|
||||
# REPO_NAME is only needed when we default on REPO_ROOT and FILE_NAME_ROOT
|
||||
if [ "x$FILE_NAME_ROOT" = "x" -o "x$REPO_ROOT" = "x" ] ; then
|
||||
if [ "x$PROJECT_NAME" = "x" ] ; then
|
||||
echo "No PROJECT_NAME specified"
|
||||
exit -1
|
||||
exit 1
|
||||
fi
|
||||
echo "Project name: ${PROJECT_NAME}"
|
||||
if [ "x$REPO_NAME" = "x" ] ; then
|
||||
echo "No REPO_NAME specified"
|
||||
exit -3
|
||||
exit 3
|
||||
fi
|
||||
echo "Repository name: ${REPO_NAME}"
|
||||
fi
|
||||
@ -110,7 +126,7 @@ fi;
|
||||
|
||||
if [ "x$TO_COMPRESS" = "x" ] ; then
|
||||
TO_COMPRESS="openjdk"
|
||||
echo "No to be compressed targets specified, ; default to ${TO_COMPRESS}"
|
||||
echo "No targets to be compressed specified, ; default to ${TO_COMPRESS}"
|
||||
fi;
|
||||
|
||||
if [ -d ${FILE_NAME_ROOT} ] ; then
|
||||
@ -125,31 +141,31 @@ else
|
||||
popd
|
||||
fi
|
||||
pushd "${FILE_NAME_ROOT}"
|
||||
if [ -d openjdk/src ]; then
|
||||
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
|
||||
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
|
||||
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
|
||||
@ -158,11 +174,29 @@ pushd "${FILE_NAME_ROOT}"
|
||||
# Generate .src-rev so build has knowledge of the revision the tarball was created from
|
||||
mkdir build
|
||||
pushd build
|
||||
sh ${PWD}/../openjdk/configure
|
||||
sh ${PWD}/../openjdk/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
|
||||
|
||||
# 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 "Compressing remaining forest"
|
||||
if [ "X$COMPRESSION" = "Xxz" ] ; then
|
||||
SWITCH=cJf
|
||||
|
@ -30,7 +30,7 @@
|
||||
# Enable static library builds by default.
|
||||
%bcond_without staticlibs
|
||||
# Build a fresh libjvm.so for use in a copy of the bootstrap JDK
|
||||
%bcond_with fresh_libjvm
|
||||
%bcond_without fresh_libjvm
|
||||
# Build with system libraries
|
||||
%bcond_with system_libs
|
||||
|
||||
@ -51,13 +51,6 @@
|
||||
%global include_staticlibs 0
|
||||
%endif
|
||||
|
||||
# Define whether to use the bootstrap JDK directly or with a fresh libjvm.so
|
||||
%if %{with fresh_libjvm}
|
||||
%global build_hotspot_first 1
|
||||
%else
|
||||
%global build_hotspot_first 0
|
||||
%endif
|
||||
|
||||
%if %{with system_libs}
|
||||
%global system_libs 1
|
||||
%global link_type system
|
||||
@ -255,10 +248,6 @@
|
||||
# Target to use to just build HotSpot
|
||||
%global hotspot_target hotspot
|
||||
|
||||
# JDK to use for bootstrapping
|
||||
%global bootjdk /usr/lib/jvm/java-%{buildjdkver}-openjdk
|
||||
|
||||
|
||||
# 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)
|
||||
@ -349,7 +338,7 @@
|
||||
# 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 19
|
||||
%global buildjdkver %{featurever}
|
||||
# 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}
|
||||
@ -359,6 +348,16 @@
|
||||
%global lts_designator ""
|
||||
%global lts_designator_zip ""
|
||||
%endif
|
||||
# JDK to use for bootstrapping
|
||||
%global bootjdk /usr/lib/jvm/java-%{buildjdkver}-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
|
||||
%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.
|
||||
@ -384,7 +383,7 @@
|
||||
# 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 d95bb40c7c8
|
||||
%global fipsver fd3de3d95b5
|
||||
|
||||
# Standard JPackage naming and versioning defines
|
||||
%global origin openjdk
|
||||
@ -392,7 +391,7 @@
|
||||
%global top_level_dir_name %{origin}
|
||||
%global top_level_dir_name_backup %{top_level_dir_name}-backup
|
||||
%global buildver 36
|
||||
%global rpmrelease 1
|
||||
%global rpmrelease 2
|
||||
# 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
|
||||
# Using 10 digits may overflow the int used for priority, so we combine the patch and build versions
|
||||
@ -663,8 +662,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-19u tree at https://github.com/rh-openjdk/jdk/tree/fips-19u
|
||||
# as follows: git diff %%{vcstag} src make > fips-19u-$(git show -s --format=%h HEAD).patch
|
||||
# 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 > fips-20u-$(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
|
||||
@ -685,7 +684,10 @@ Patch6: rh1684077-openjdk_should_depend_on_pcsc-lite-libs_instead_of_pcsc-lite-d
|
||||
# RH2094027: SunEC runtime permission for FIPS
|
||||
# RH2036462: sun.security.pkcs11.wrapper.PKCS11.getInstance breakage
|
||||
# RH2090378: Revert to disabling system security properties and FIPS mode support together
|
||||
Patch1001: fips-19u-%{fipsver}.patch
|
||||
# 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
|
||||
Patch1001: fips-20u-%{fipsver}.patch
|
||||
|
||||
#############################################
|
||||
#
|
||||
@ -935,6 +937,12 @@ if [ %{include_debug_build} -eq 0 -a %{include_normal_build} -eq 0 -a %{includ
|
||||
echo "You have disabled all builds (normal,fastdebug,slowdebug). That is a no go."
|
||||
exit 14
|
||||
fi
|
||||
|
||||
%if %{with fresh_libjvm} && ! %{build_hotspot_first}
|
||||
echo "WARNING: The build of a fresh libjvm has been disabled due to a JDK version mismatch"
|
||||
echo "Build JDK version is %{buildjdkver}, feature JDK version is %{featurever}"
|
||||
%endif
|
||||
|
||||
%setup -q -c -n %{uniquesuffix ""} -T -a 0
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1189084
|
||||
prioritylength=`expr length %{priority}`
|
||||
@ -957,7 +965,7 @@ pushd %{top_level_dir_name}
|
||||
%patch3 -p1
|
||||
%patch6 -p1
|
||||
# Add crypto policy and FIPS support
|
||||
#%%patch1001 -p1 - todo, adapt fips patch for jdk20
|
||||
%patch1001 -p1
|
||||
# nss.cfg PKCS11 support; must come last as it also alters java.security
|
||||
%patch1000 -p1
|
||||
popd # openjdk
|
||||
@ -1132,6 +1140,7 @@ function buildjdk() {
|
||||
--with-boot-jdk=${buildjdk} \
|
||||
--with-debug-level=${debuglevel} \
|
||||
--with-native-debug-symbols="%{debug_symbols}" \
|
||||
--disable-sysconf-nss \
|
||||
--enable-unlimited-crypto \
|
||||
--with-zlib=%{link_type} \
|
||||
--with-freetype=%{link_type} \
|
||||
@ -1505,8 +1514,8 @@ $JAVA_HOME/bin/java $(echo $(basename %{SOURCE16})|sed "s|\.java||") "%{oj_vendo
|
||||
# tzdb.dat used by this test is not where the test expects it, so this is
|
||||
# disabled for flatpak builds)
|
||||
$JAVA_HOME/bin/javac -d . %{SOURCE18}
|
||||
#$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE
|
||||
#$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed "s|\.java||") CLDR
|
||||
$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE
|
||||
$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed "s|\.java||") CLDR
|
||||
%endif
|
||||
|
||||
%if %{include_staticlibs}
|
||||
@ -1596,17 +1605,35 @@ done
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Tue Mar 28 2023 Jiri Vanel <jvanek@redhat.com> - 1:20.0.0.0.36-1.rolling
|
||||
- moved to jdk20
|
||||
* Mon Apr 10 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:20.0.0.0.36-2.rolling
|
||||
- Complete update to OpenJDK 20
|
||||
- Update NEWS
|
||||
- Update system crypto policy & FIPS patch from new fips-20u tree
|
||||
- * 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
|
||||
- Update generate_tarball.sh ICEDTEA_VERSION and add support for passing a boot JDK to the configure run
|
||||
- Revert changes to generate_tarball.sh which break error handling
|
||||
- Add POSIX-friendly error codes to generate_tarball.sh and fix whitespace
|
||||
- Remove .jcheck and GitHub support when generating tarballs, as done in upstream release tarballs
|
||||
- Revert changes to patch macro which break on older versions of rpm (4.16)
|
||||
- Revert changes to configure run
|
||||
- Revert RH1648429 patch changes
|
||||
- Update CLDR reference data following update to 42 (Rocky Mountain-Normalzeit => Rocky-Mountain-Normalzeit)
|
||||
- Re-enable disabled translation test
|
||||
- Automatically turn off building a fresh HotSpot first, if the bootstrap JDK is not the same major version as that being built
|
||||
|
||||
* Tue Mar 28 2023 Jiri Vanek <jvanek@redhat.com> - 1:20.0.0.0.36-1.rolling
|
||||
- moved to jdk20
|
||||
- remvoed already upstreamed patches patch2006,2007,2008,2009
|
||||
- commented out not yet adapted patch1001 - fips support
|
||||
- removed --disable-sysconf-nss due to missing patch 1001 from configure
|
||||
-- todo return both patch1001 and disable-sysconf-nss!
|
||||
- adapted rh1750419-redhat_alt_java.patch and rh1750419-redhat_alt_java.patch patches
|
||||
- adapted rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch and rh1750419-redhat_alt_java.patch patches
|
||||
- inverted fresh_libjvm behavior to be disabled by default. fails:
|
||||
-- See: https://koji.fedoraproject.org/koji/taskinfo?taskID=99242677
|
||||
- commented out tzdata tests
|
||||
|
||||
- moved from deprecated patchN to patch N
|
||||
|
||||
* Tue Feb 07 2023 Jiri Vanel <jvanek@redhat.com> - 1:19.0.2.0.7-2.rolling
|
||||
- added png icons from x11 source package, so they can be reused by rpms
|
||||
|
@ -9,4 +9,4 @@ index 68a9c1a2d08..7aa25eb2cb7 100644
|
||||
+#security.provider.tbd=SunPKCS11 ${java.home}/lib/security/nss.cfg
|
||||
|
||||
#
|
||||
# A list of preferred providers for specific algorithms. These providers will
|
||||
# Security providers used when FIPS mode support is active
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (openjdk-jdk20u-jdk-20+36.tar.xz) = 08f7918c4d0c1fb3b0036c48dfb7c61e4ed4d3344dfc44ae8ed5eaebe8e85ee1b7d234560654c457148738fc93dc417dafcecd80c97e749d2d8253cfb5ecfe1e
|
||||
SHA512 (openjdk-jdk20u-jdk-20+36.tar.xz) = 4d7560d9e452879632d7c2dc8d4df3faeafe875e95abd47fafcb8dbe469a567359fd13e6cabd59dc72323125ab9672090f0d04d17d859943c7967ed35f3d7f68
|
||||
|
Loading…
Reference in New Issue
Block a user