Compare commits
No commits in common. 'a8-portable' and 'i9' have entirely different histories.
a8-portabl
...
i9
@ -1,2 +1,2 @@
|
|||||||
SOURCES/openjdk-21.0.1+12.tar.xz
|
|
||||||
SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
||||||
|
SOURCES/openjdk-21.0.6+7.tar.xz
|
||||||
|
@ -0,0 +1,2 @@
|
|||||||
|
c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
||||||
|
fad71f19631dab375285056d10d08374e869bb35 SOURCES/openjdk-21.0.6+7.tar.xz
|
@ -1,2 +0,0 @@
|
|||||||
062c60df2265006e2be6e2cec33b961d5183acd9 SOURCES/openjdk-21.0.1+12.tar.xz
|
|
||||||
c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
|
|
File diff suppressed because it is too large
Load Diff
@ -1,39 +0,0 @@
|
|||||||
OpenJDK 21 is the latest Long-Term Support (LTS) release of the Java platform.
|
|
||||||
|
|
||||||
For a list of major changes from OpenJDK 17 (java-17-openjdk), see the upstream
|
|
||||||
release page for OpenJDK 21 and the preceding interim releases:
|
|
||||||
|
|
||||||
* 18: https://openjdk.java.net/projects/jdk/18/
|
|
||||||
* 19: https://openjdk.java.net/projects/jdk/19/
|
|
||||||
* 20: https://openjdk.java.net/projects/jdk/20/
|
|
||||||
* 21: https://openjdk.java.net/projects/jdk/21/
|
|
||||||
|
|
||||||
# Rebuilding the OpenJDK package
|
|
||||||
|
|
||||||
The OpenJDK packages are now created from a single build which is then
|
|
||||||
packaged for different major versions of Red Hat Enterprise Linux
|
|
||||||
(RHEL). This allows the OpenJDK team to focus their efforts on the
|
|
||||||
development and testing of this single build, rather than having
|
|
||||||
multiple builds which only differ by the platform they were built on.
|
|
||||||
|
|
||||||
This does make rebuilding the package slightly more complicated than a
|
|
||||||
normal package. Modifications should be made to the
|
|
||||||
`java-21-openjdk-portable.specfile` file, which can be found with this
|
|
||||||
README file in the source RPM or installed in the documentation tree
|
|
||||||
by the `java-21-openjdk-headless` RPM.
|
|
||||||
|
|
||||||
Once the modified `java-21-openjdk-portable` RPMs are built, they
|
|
||||||
should be installed and will produce a number of tarballs in the
|
|
||||||
`/usr/lib/jvm` directory. The `java-21-openjdk` RPMs can then be
|
|
||||||
built, which will use these tarballs to create the usual RPMs found in
|
|
||||||
RHEL. The `java-21-openjdk-portable` RPMs can be uninstalled once the
|
|
||||||
desired final RPMs are produced.
|
|
||||||
|
|
||||||
Note that the `java-21-openjdk.spec` file has a hard requirement on
|
|
||||||
the exact version of java-21-openjdk-portable to use, so this will
|
|
||||||
need to be modified if the version or rpmrelease values are changed in
|
|
||||||
`java-21-openjdk-portable.specfile`.
|
|
||||||
|
|
||||||
To reduce the number of RPMs involved, the `fastdebug` and `slowdebug`
|
|
||||||
builds may be disabled using `--without fastdebug` and `--without
|
|
||||||
slowdebug`.
|
|
@ -1,10 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Name=OpenJDK @JAVA_VER@ for @target_cpu@ Monitoring & Management Console (@OPENJDK_VER@)
|
|
||||||
Comment=Monitor and manage OpenJDK applications
|
|
||||||
Exec=_SDKBINDIR_/jconsole
|
|
||||||
Icon=java-@JAVA_VER@-@JAVA_VENDOR@
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
StartupWMClass=sun-tools-jconsole-JConsole
|
|
||||||
Categories=Development;Profiling;Java;
|
|
||||||
Version=1.0
|
|
@ -1,125 +0,0 @@
|
|||||||
commit d0523302416bc6507696f20d1068f16427bcf6b8
|
|
||||||
Author: Andrew Hughes <gnu.andrew@redhat.com>
|
|
||||||
Date: Thu Aug 24 01:23:49 2023 +0100
|
|
||||||
|
|
||||||
8009550: PlatformPCSC should load versioned so
|
|
||||||
|
|
||||||
diff --git a/src/java.base/share/classes/sun/security/util/Debug.java b/src/java.base/share/classes/sun/security/util/Debug.java
|
|
||||||
index bff273c6548..e5a6b288ff8 100644
|
|
||||||
--- a/src/java.base/share/classes/sun/security/util/Debug.java
|
|
||||||
+++ b/src/java.base/share/classes/sun/security/util/Debug.java
|
|
||||||
@@ -81,6 +81,7 @@ public static void Help()
|
|
||||||
System.err.println("logincontext login context results");
|
|
||||||
System.err.println("jca JCA engine class debugging");
|
|
||||||
System.err.println("keystore KeyStore debugging");
|
|
||||||
+ System.err.println("pcsc Smartcard library debugging");
|
|
||||||
System.err.println("policy loading and granting");
|
|
||||||
System.err.println("provider security provider debugging");
|
|
||||||
System.err.println("pkcs11 PKCS11 session manager debugging");
|
|
||||||
diff --git a/src/java.smartcardio/unix/classes/sun/security/smartcardio/PlatformPCSC.java b/src/java.smartcardio/unix/classes/sun/security/smartcardio/PlatformPCSC.java
|
|
||||||
index bacff32efbc..d9f605ada1e 100644
|
|
||||||
--- a/src/java.smartcardio/unix/classes/sun/security/smartcardio/PlatformPCSC.java
|
|
||||||
+++ b/src/java.smartcardio/unix/classes/sun/security/smartcardio/PlatformPCSC.java
|
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
/*
|
|
||||||
* Copyright (c) 2005, 2021, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
+ * Copyright (c) 2023, Red Hat Inc. All rights reserved.
|
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
||||||
*
|
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
|
||||||
@@ -46,8 +47,13 @@ class PlatformPCSC {
|
|
||||||
|
|
||||||
private static final String PROP_NAME = "sun.security.smartcardio.library";
|
|
||||||
|
|
||||||
- private static final String LIB1 = "/usr/$LIBISA/libpcsclite.so";
|
|
||||||
- private static final String LIB2 = "/usr/local/$LIBISA/libpcsclite.so";
|
|
||||||
+ private static final String[] LIB_TEMPLATES = { "/usr/$LIBISA/libpcsclite.so",
|
|
||||||
+ "/usr/local/$LIBISA/libpcsclite.so",
|
|
||||||
+ "/usr/lib/$ARCH-linux-gnu/libpcsclite.so",
|
|
||||||
+ "/usr/lib/arm-linux-gnueabi/libpcsclite.so",
|
|
||||||
+ "/usr/lib/arm-linux-gnueabihf/libpcsclite.so",
|
|
||||||
+ "/usr/lib/$ARCH-kfreebsd-gnu/libpcsclite.so" };
|
|
||||||
+ private static final String[] LIB_SUFFIXES = { ".1", ".0", "" };
|
|
||||||
private static final String PCSC_FRAMEWORK = "/System/Library/Frameworks/PCSC.framework/Versions/Current/PCSC";
|
|
||||||
|
|
||||||
PlatformPCSC() {
|
|
||||||
@@ -73,23 +79,38 @@ public Throwable run() {
|
|
||||||
});
|
|
||||||
|
|
||||||
// expand $LIBISA to the system specific directory name for libraries
|
|
||||||
+ // expand $ARCH to the Debian system architecture in use
|
|
||||||
private static String expand(String lib) {
|
|
||||||
int k = lib.indexOf("$LIBISA");
|
|
||||||
- if (k == -1) {
|
|
||||||
- return lib;
|
|
||||||
+ if (k != -1) {
|
|
||||||
+ String libDir;
|
|
||||||
+ if ("64".equals(System.getProperty("sun.arch.data.model"))) {
|
|
||||||
+ // assume Linux convention
|
|
||||||
+ libDir = "lib64";
|
|
||||||
+ } else {
|
|
||||||
+ // must be 32-bit
|
|
||||||
+ libDir = "lib";
|
|
||||||
+ }
|
|
||||||
+ lib = lib.replace("$LIBISA", libDir);
|
|
||||||
}
|
|
||||||
- String s1 = lib.substring(0, k);
|
|
||||||
- String s2 = lib.substring(k + 7);
|
|
||||||
- String libDir;
|
|
||||||
- if ("64".equals(System.getProperty("sun.arch.data.model"))) {
|
|
||||||
- // assume Linux convention
|
|
||||||
- libDir = "lib64";
|
|
||||||
- } else {
|
|
||||||
- // must be 32-bit
|
|
||||||
- libDir = "lib";
|
|
||||||
+
|
|
||||||
+ k = lib.indexOf("$ARCH");
|
|
||||||
+ if (k != -1) {
|
|
||||||
+ String arch = System.getProperty("os.arch");
|
|
||||||
+ lib = lib.replace("$ARCH", getDebianArchitecture(arch));
|
|
||||||
}
|
|
||||||
- String s = s1 + libDir + s2;
|
|
||||||
- return s;
|
|
||||||
+
|
|
||||||
+ return lib;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ private static String getDebianArchitecture(String jdkArch) {
|
|
||||||
+ return switch (jdkArch) {
|
|
||||||
+ case "amd64" -> "x86_64";
|
|
||||||
+ case "ppc" -> "powerpc";
|
|
||||||
+ case "ppc64" -> "powerpc64";
|
|
||||||
+ case "ppc64le" -> "powerpc64le";
|
|
||||||
+ default -> jdkArch;
|
|
||||||
+ };
|
|
||||||
}
|
|
||||||
|
|
||||||
private static String getLibraryName() throws IOException {
|
|
||||||
@@ -98,15 +119,18 @@ private static String getLibraryName() throws IOException {
|
|
||||||
if (lib.length() != 0) {
|
|
||||||
return lib;
|
|
||||||
}
|
|
||||||
- lib = expand(LIB1);
|
|
||||||
- if (new File(lib).isFile()) {
|
|
||||||
- // if LIB1 exists, use that
|
|
||||||
- return lib;
|
|
||||||
- }
|
|
||||||
- lib = expand(LIB2);
|
|
||||||
- if (new File(lib).isFile()) {
|
|
||||||
- // if LIB2 exists, use that
|
|
||||||
- return lib;
|
|
||||||
+
|
|
||||||
+ for (String template : LIB_TEMPLATES) {
|
|
||||||
+ for (String suffix : LIB_SUFFIXES) {
|
|
||||||
+ lib = expand(template) + suffix;
|
|
||||||
+ if (debug != null) {
|
|
||||||
+ debug.println("Looking for " + lib);
|
|
||||||
+ }
|
|
||||||
+ if (new File(lib).isFile()) {
|
|
||||||
+ // if library exists, use that
|
|
||||||
+ return lib;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
// As of macos 11, framework libraries have been removed from the file
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1 +0,0 @@
|
|||||||
../SOURCES/java-21-openjdk-portable.specfile
|
|
Loading…
Reference in new issue