Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

omrsock compilation fails on aix for jdk15 and jdk head #5360

Closed
adamfarley opened this issue Jul 2, 2020 · 2 comments · Fixed by #5363
Closed

omrsock compilation fails on aix for jdk15 and jdk head #5360

adamfarley opened this issue Jul 2, 2020 · 2 comments · Fixed by #5363

Comments

@adamfarley
Copy link

This issue causes the openjdk builds to fail at adoptopenjdk. Please investigate.

Platforms seen on: AIX only.

Builds pass on jdk8 and jdk11.

Last passing build for jdk15:

05:16:16  openjdk version "15" 2020-09-15
05:16:16  OpenJDK Runtime Environment AdoptOpenJDK (build 15+29-202007010337)
05:16:16  Eclipse OpenJ9 VM AdoptOpenJDK (build master-761497476, JRE 15 AIX ppc64-64-Bit Compressed References 20200630_25 (JIT enabled, AOT enabled)
05:16:16  OpenJ9   - 761497476
05:16:16  OMR      - 9e9c66654
05:16:16  JCL      - d8ad2be09f based on jdk-15+29)

Full error message included below.

[2020-07-02T04:00:29.036Z] /opt/IBM/xlC/16.1.0/bin/xlclang  -DOMRPORT_LIBRARY_DEFINE -I. -I./aix64 -I./aix -I./unix_include -I./unix -I./common -I./include -I./  -I../../include -I../include_core -I../nls -DPPC64 -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE -DRS6000 -DAIXPPC -D_LARGE_FILES -c  -s -q64 -qarch=ppc -qalias=noansi -qxflag=LTOL:LTOL0 -qsuppress=1506-1108 -qlanglvl=extended0x -qxlcompatmacros -O3 -qhalt=w -g   -o omrsock.o ./unix/omrsock.c
[2020-07-02T04:00:29.036Z] In file included from ./unix/omrsock.c:30:
[2020-07-02T04:00:29.036Z] In file included from ./unix_include/omrsock.h:43:
[2020-07-02T04:00:29.036Z] /usr/include/netinet/tcp.h:208:25: error: field has incomplete type 'struct in6_addr'
[2020-07-02T04:00:29.036Z]         struct in6_addr host;           /* host or subnet */
[2020-07-02T04:00:29.036Z]                         ^
[2020-07-02T04:00:29.036Z] /usr/include/netinet/tcp.h:208:16: note: forward declaration of 'struct in6_addr'
[2020-07-02T04:00:29.036Z]         struct in6_addr host;           /* host or subnet */
[2020-07-02T04:00:29.036Z]                ^
[2020-07-02T04:00:29.036Z] /usr/include/netinet/tcp.h:209:25: error: field has incomplete type 'struct in6_addr'
[2020-07-02T04:00:29.036Z]         struct in6_addr netmask;        /* netmask if "host" is a subnet */
[2020-07-02T04:00:29.036Z]                         ^
[2020-07-02T04:00:29.036Z] /usr/include/netinet/tcp.h:208:16: note: forward declaration of 'struct in6_addr'
[2020-07-02T04:00:29.036Z]         struct in6_addr host;           /* host or subnet */

Full build output can be found here for jdk15 and here for jdk head

@youngar
Copy link
Contributor

youngar commented Jul 3, 2020

@rwy0717 @caohaley

@rwy7 rwy7 self-assigned this Jul 3, 2020
youngar pushed a commit that referenced this issue Jul 3, 2020
This header is responsible for defining the in6_addr struct. This type
is used in the header <netinet/tcp.h>. On some versions of AIX, tcp.h
does not include in.h (despite using types defined there), so we have to
manually include it before tcp.h. This isn't a problem on other posix
platforms.

Fixes: #5360
Signed-off-by: Robert Young <[email protected]>
@youngar
Copy link
Contributor

youngar commented Jul 3, 2020

@adamfarley Thanks for submitting this issue. We believe that this has been fixed, but if the problem persists, please re-open this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants