Hi Tom, Sounds reasonable. I've added a webex to the bug, and here's a link to the bug.
https://bugs.openjdk.java.net/browse/JDK-8214063 This patch is required because otherwise, when building on AIX using xlc 3.1, the build fails with this error: "Visibility is not allowed on a reference to an imported symbol." We believe this is caused by JNIEXPORT and JNIIMPORT not being defined. Without this, almost no symbols are exported from shared libraries due to use of -qvisibility=hidden as specified in make/lib/LibCommon.gmk. For convenience, here's a summary of the diffs: -------------------------------------- File 1 of 2) src/java.base/share/native/libjimage/NativeImageBuffer.cpp #include "osSupport.hpp" +#if defined(__xlC__) && (__xlC__ >= 0x0d01) +/* + * Version 13.1.3 of xlc seems to have trouble parsing the `__attribute__` + * annotation in the generated header file we're about to include. Repeating + * the forward declaration (without the braces) here avoids the diagnostic: + * 1540-0040 (S) The text "void" is unexpected. "visibility" may be undeclared or ambiguous. + */ +extern "C" JNIEXPORT jobject JNICALL Java_jdk_internal_jimage_NativeImageBuffer_getNativeMap(JNIEnv *, jclass, jstring); +#endif + #include "jdk_internal_jimage_NativeImageBuffer.h" -------------------------------------- File 2 of 2) src/java.base/unix/native/include/jni_md.h #define JNIIMPORT __attribute__((visibility("default"))) #endif +#elif defined(__xlC__) && (__xlC__ >= 0x0d01) /* xlc version 13.1 or better required */ + #define JNIEXPORT __attribute__((visibility("default"))) + #define JNIIMPORT __attribute__((visibility("default"))) #else #define JNIEXPORT -------------------------------------- Best Regards Adam Farley IBM Runtimes "Thomas Stüfe" <thomas.stu...@gmail.com> wrote on 19/11/2018 18:11:34: > From: "Thomas Stüfe" <thomas.stu...@gmail.com> > To: Adam Farley8 <adam.far...@uk.ibm.com> > Cc: Java Core Libs <core-libs-dev@openjdk.java.net> > Date: 19/11/2018 18:12 > Subject: Re: RFR: JDK-8214063: OpenJDK will not build on AIX while > using the xlc 13.1 compiler > > Hi Adam, > > could you please include link to the JBS issue and either link to the > patch/webrev or link to the webrev, or at the very least the patch > verbatim? > > As for the issue itself: could you please elaborate why this fails with xlc13? > > Also, a real patch would be helpful instead here of yet another link > to some J9 issue. We are really strapped for manpower and the AIX port > eats up enough time as it is. > > Thanks, Thomas > > On Mon, Nov 19, 2018 at 6:28 PM Adam Farley8 <adam.far...@uk.ibm.com> wrote: > > > > Hi All > > > > Both the problem and the solution appear straight-forward enough. > > > > Details included in the bug description. > > > > Thoughts and opinions welcome. > > > > Best Regards > > > > Adam Farley > > IBM Runtimes > > > > Unless stated otherwise above: > > IBM United Kingdom Limited - Registered in England and Wales with number > > 741598. > > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU > Unless stated otherwise above: IBM United Kingdom Limited - Registered in England and Wales with number 741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU