RFR: Add support for AIX in build process [v7]

Jorn Vernee jvernee at openjdk.org
Tue Dec 9 18:39:04 UTC 2025


On Tue, 9 Dec 2025 17:15:16 GMT, Suchismith Roy <sroy at openjdk.org> wrote:

>> Summary of the issues: 
>> 
>> 1. There is no support for compiling AIX dynamic .a library and the tool was compiling .so files instead. 
>> 2. There is no logic to support libclang.a. 
>> 3.  There is no support to load shared member of .a dynamic libraries of AIX. 
>> 
>> JBS Issue: [CODETOOLS-7904116](https://bugs.openjdk.org/browse/CODETOOLS-7904116)
>
> Suchismith Roy has updated the pull request incrementally with four additional commits since the last revision:
> 
>  - extra lines
>  - extra lines
>  - extra lines
>  - extra lines

As for the Windows failure in GHA, it can be ignored. It's a know issue: https://bugs.openjdk.org/browse/CODETOOLS-7903174

src/main/java/org/openjdk/jextract/clang/libclang/Index_h.java line 37:

> 35: import java.util.stream.*;
> 36: import static java.lang.foreign.ValueLayout.*;
> 37: import java.util.StringTokenizer;

StringTokenizer still looks unused.

src/main/java/org/openjdk/jextract/clang/libclang/Index_h.java line 98:

> 96:             } catch (Exception e) {
> 97:                 throw new IllegalStateException("Failed to read libclang.version", e);
> 98:             }

FWIW, `clangVersion` is definitely assigned after the try block, so a default value is not needed. Also, `Files::readString` makes this a little simpler:
Suggestion:

            String clangVersion;
            try {
                clangVersion = Files.readString(Path.of(javaHome + "/conf/jextract/libclang.version"));
            } catch (Exception e) {
                throw new IllegalStateException("Failed to read libclang.version", e);
            }

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

PR Comment: https://git.openjdk.org/jextract/pull/297#issuecomment-3633694463
PR Review Comment: https://git.openjdk.org/jextract/pull/297#discussion_r2603844214
PR Review Comment: https://git.openjdk.org/jextract/pull/297#discussion_r2603844648


More information about the jextract-dev mailing list