This is an automated email from the ASF dual-hosted git repository.
remm pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/10.1.x by this push:
new 9e613fdb44 Update jextract instructions
9e613fdb44 is described below
commit 9e613fdb4428e2c4cef5d23f058bb3f4f8220ffb
Author: remm <[email protected]>
AuthorDate: Mon Apr 7 13:06:38 2025 +0200
Update jextract instructions
The jextract binary for Java 22 now seems very appropriate.
---
res/openssl/README.md | 14 +++++---------
res/openssl/openssl-tomcat.conf | 12 +-----------
res/openssl/openssl.h | 1 -
3 files changed, 6 insertions(+), 21 deletions(-)
diff --git a/res/openssl/README.md b/res/openssl/README.md
index 5fd1eba39e..a2dbe5b267 100644
--- a/res/openssl/README.md
+++ b/res/openssl/README.md
@@ -3,22 +3,18 @@
## Building
The OpenSSL API support classes can be built using jextract from Java 22+.
-
-jextract is now available in its own standalone repository. Clone
-`https://github.com/openjdk/jextract` in some location and
-checkout the branch that supports Java 22. Please refer to the
-instructions from the repository for building. It should be the
-`panama` branch.
+jextract can be downloaded from `https://jdk.java.net/jextract/`. Extract the
+download and set the path as the `JEXTRACT_HOME` environment variable for
+ease of use.
This step is only useful to be able to use additional native APIs from OpenSSL
or stdlib.
Find include paths using `gcc -xc -E -v -`, on Fedora it is
-`/usr/lib/gcc/x86_64-redhat-linux/12/include`. Edit `openssl-tomcat.conf`
+`/usr/lib/gcc/x86_64-redhat-linux/14/include`. Edit `openssl-tomcat.conf`
accordingly to set the appropriate path.
```
-export JEXTRACT_HOME=<pathto>/jextract/build/jextract
$JEXTRACT_HOME/bin/jextract @openssl-tomcat.conf openssl.h
```
Note: The build path for the JDK will be different on other platforms.
@@ -29,7 +25,7 @@ API compatible, the generated code will still work.
The `openssl-tomcat.conf` will generate a trimmed down OpenSSL API. When
developing new features, the full API can be generated instead using:
```
-$JEXTRACT_HOME/bin/jextract --source -t org.apache.tomcat.util.openssl -lssl
-I /usr/lib/gcc/x86_64-redhat-linux/12/include openssl.h --output src/main/java
+$JEXTRACT_HOME/bin/jextract --source -t org.apache.tomcat.util.openssl -lssl
-I /usr/lib/gcc/x86_64-redhat-linux/14/include openssl.h --output src/main/java
```
The `openssl.conf` file lists all the API calls and constants that can be
diff --git a/res/openssl/openssl-tomcat.conf b/res/openssl/openssl-tomcat.conf
index 0d75c2654d..7897fcd14b 100644
--- a/res/openssl/openssl-tomcat.conf
+++ b/res/openssl/openssl-tomcat.conf
@@ -16,7 +16,7 @@
-t org.apache.tomcat.util.openssl
-lssl
# Configure include path
--I /usr/lib/gcc/x86_64-redhat-linux/12/include
+-I /usr/lib/gcc/x86_64-redhat-linux/14/include
--output ../../java
#### Extracted from: /usr/include/openssl/asn1.h
@@ -76,16 +76,6 @@
--include-function EC_KEY_free # deprecated
header: /usr/include/openssl/ec.h
--include-function EC_KEY_new_by_curve_name # deprecated
header: /usr/include/openssl/ec.h
-#### Extracted from: /usr/include/openssl/engine.h
-
---include-function ENGINE_by_id # deprecated
header: /usr/include/openssl/engine.h
---include-function ENGINE_ctrl_cmd_string # deprecated
header: /usr/include/openssl/engine.h
---include-function ENGINE_free # deprecated
header: /usr/include/openssl/engine.h
---include-function ENGINE_load_private_key # deprecated
header: /usr/include/openssl/engine.h
---include-function ENGINE_register_all_complete # deprecated
header: /usr/include/openssl/engine.h
---include-function ENGINE_set_default # deprecated
header: /usr/include/openssl/engine.h
---include-constant ENGINE_METHOD_ALL # deprecated
header: /usr/include/openssl/engine.h
-
#### Extracted from: /usr/include/openssl/err.h
--include-function ERR_clear_error # header:
/usr/include/openssl/err.h
diff --git a/res/openssl/openssl.h b/res/openssl/openssl.h
index e31fad9e1b..187ae9f5b3 100644
--- a/res/openssl/openssl.h
+++ b/res/openssl/openssl.h
@@ -26,6 +26,5 @@
#include <openssl/x509v3.h>
#include <openssl/dh.h>
#include <openssl/bn.h>
-#include <openssl/engine.h>
#include <openssl/ocsp.h>
#include <openssl/provider.h>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]