RFR: 7903755: multi header support and special syntax for header file

Athijegannathan Sundararajan sundar at openjdk.org
Wed Jun 19 16:00:38 UTC 2024


jextract currently supports only one header file. If the user wants to extract more than one header file, s/he has to create a containing header that includes multiple headers and jextract the containing header.

With the current change, jextract supports more than one header file in the command line.
When multiple headers are specified in command line, --header-class-name option is mandatory and it is enforced.

In addition to normal file names for header file names, a special syntax such as "<stdio.h>" is also supported. With this, user does not have to write long file name including directories such as /usr/include/stdio.h.

jextract generates multiple headers by generating a temporary header file. If the command line argument is of the form "<stdio.h>" then jextract generates "#include <stdio.h>" in the auto-generated containing header. If the header specified in of the normal/existing form (say foo.h), then containing header will have #include "foo.h" line.

-------------

Commit messages:
 - Merge pull request #1 from JornVernee/MultiHeaders_Windows
 - update sample scripts
 - add pwsh script
 - updated GUIDE.md
 - fixed tests for Windows.
 - 7903755: multi header support and special syntax for header file

Changes: https://git.openjdk.org/jextract/pull/249/files
  Webrev: https://webrevs.openjdk.org/?repo=jextract&pr=249&range=00
  Issue: https://bugs.openjdk.org/browse/CODETOOLS-7903755
  Stats: 230 lines in 35 files changed: 151 ins; 31 del; 48 mod
  Patch: https://git.openjdk.org/jextract/pull/249.diff
  Fetch: git fetch https://git.openjdk.org/jextract.git pull/249/head:pull/249

PR: https://git.openjdk.org/jextract/pull/249


More information about the jextract-dev mailing list