[8u] RFR: 8255003: Build failures on Solaris (was Re: Build failures on illumos (Solaris))

Andrew Brygin abrygin at azul.com
Tue Oct 20 18:14:12 UTC 2020


I have updated the fix according to following comment:

https://bugs.openjdk.java.net/browse/JDK-8255003?focusedCommentId=14375484&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14375484

The removal of Java_sun_awt_X11_XToolkit_getDefaultScreenData will be
tracked as JDK-8251840.

Please take a look to updated webrev:

http://cr.openjdk.java.net/~bae/8u/8255003/webrev.01/

Thanks,
Andrew


On 20/10/2020 11:40, Peter Tribble wrote:
> 
> 
> On Tue, Oct 20, 2020 at 4:52 AM Andrew Brygin <abrygin at azul.com
> <mailto:abrygin at azul.com>> wrote:
> 
>     Hello Peter and Severin,
> 
>      could you please review a fix for JDK-8255003?
> 
>     Bug: https://bugs.openjdk.java.net/browse/JDK-8255003
>     <https://bugs.openjdk.java.net/browse/JDK-8255003>
>     Webrev: http://cr.openjdk.java.net/~bae/8u/8255003/webrev.00/
>     <http://cr.openjdk.java.net/%7Ebae/8u/8255003/webrev.00/>
> 
> 
> LGTM. Thanks!
> 
> Checked with a illumos (x64 studio) build.
> 
> My only note is that I wouldn't personally have changed the copyrights
> on the two
> newly created mapfiles, but that doesn't affect functionality.
>  
> 
>      Proposed changes:
>      The mapfile-vers for libjava is renamed to mapfile-linux, and separate
>     mapfiles for aix and solaris are added. CoreLibraries.gmk is updated
>     accordingly.
> 
>      At the moment, the only difference between linux and aix/solaris is
>     the removal of the following symbol:
> 
>     Java_jdk_internal_platform_cgroupv1_Metrics_isUseContainerSupport;
> 
>      Beside this, the symbol Java_sun_awt_X11_XToolkit_getDefaultScreenData
>     is removed from make/mapfiles/libawt_xawt/mapfile-vers.
> 
>      The change has been verified by builds on linux (x86_64), solaris (x64,
>      sun studio 12.1), and macos. Unfortunately I do not have aix system to
>     test the build.
> 
>     Thanks,
>     Andrew
> 
>     On 19/10/2020 15:42, Peter Tribble wrote:
>     >
>     >
>     > On Mon, Oct 19, 2020 at 1:30 PM Severin Gehwolf
>     <sgehwolf at redhat.com <mailto:sgehwolf at redhat.com>
>     > <mailto:sgehwolf at redhat.com <mailto:sgehwolf at redhat.com>>> wrote:
>     >
>     >     Hi Andrew,
>     >
>     >     On Mon, Oct 19, 2020 at 12:08 PM Andrew Brygin
>     <abrygin at azul.com <mailto:abrygin at azul.com>
>     >     <mailto:abrygin at azul.com <mailto:abrygin at azul.com>>> wrote:
>     >     >
>     >     > We have seen this build issue, and use a separate mapfile
>     for solaris.
>     >     > It is not much convenient, but seems to be most safe option
>     to handle
>     >     > different sets of symbols for solaris and linux. Suggested
>     patch is
>     >     > attached.
>     >
>     >
>     > Thanks!
>     >
>     > Looks fine for this specific fix. I suspect aix is broken as well
>     though.
>     >
>     > Having had a look at roughly how these mapfiles work, I think the
>     normal
>     > way (insofar
>     > as there only a couple of existing cases) would be
>     >
>     > LIBJAVA_MAPFILE ?=
>     > $(JDK_TOPDIR)/make/mapfiles/libjava/mapfile-$(OPENJDK_TARGET_OS)
>     >
>     > and then mv the current mapfile-vers to mapfile-linux, and create
>     > mapfile-solaris and
>     > mapfile-aix with the errant line removed.
>     >  
>     >
>     >     Yes, this seems fine. Could you please create a bug and post for
>     >     review when you get a chance?
>     >
>     >     Thanks,
>     >     Severin
>     >
>     >     > On 19/10/2020 12:51, Severin Gehwolf wrote:
>     >     > > On Mon, Oct 19, 2020 at 11:43 AM Peter Tribble
>     >     <peter.tribble at gmail.com <mailto:peter.tribble at gmail.com>
>     <mailto:peter.tribble at gmail.com <mailto:peter.tribble at gmail.com>>>
>     wrote:
>     >     > >> On Mon, Oct 19, 2020 at 10:32 AM Severin Gehwolf
>     >     <sgehwolf at redhat.com <mailto:sgehwolf at redhat.com>
>     <mailto:sgehwolf at redhat.com <mailto:sgehwolf at redhat.com>>> wrote:
>     >     > >>>
>     >     > >>> Hi,
>     >     > >>>
>     >     > >>> On Fri, Oct 16, 2020 at 12:28 PM Peter Tribble
>     >     <peter.tribble at gmail.com <mailto:peter.tribble at gmail.com>
>     <mailto:peter.tribble at gmail.com <mailto:peter.tribble at gmail.com>>>
>     wrote:
>     >     > >>>>
>     >     > >>>> Trying a build of 8u272-b09 on Solaris (specifically,
>     >     illumos) I'm seeing a
>     >     > >>>> couple of
>     >     > >>>> build failures:
>     >     > >>>>
>     >     > >>>> Undefined                       first referenced
>     >     > >>>>  symbol                             in file
>     >     > >>>>
>     Java_jdk_internal_platform_cgroupv1_Metrics_isUseContainerSupport
>     >     > >>>>
>     >   
>      /export/home/ptribble/ud/openjdk8u272/jdk/make/mapfiles/libjava/mapfile-vers
>     >     > >>>> ld: fatal: symbol referencing errors. No output written to
>     >     > >>>>
>     >   
>      /export/home/ptribble/ud/openjdk8u272/build/solaris-x86_64-normal-server-release/jdk/lib/amd64/libjava.so
>     >     > >>>>
>     >     > >>>> That symbol clearly doesn't apply to Solaris.
>     >     > >>>>
>     >     > >>>> Undefined                       first referenced
>     >     > >>>>  symbol                             in file
>     >     > >>>> Java_sun_awt_X11_XToolkit_getDefaultScreenData
>     >     > >>>>
>     >   
>      /export/home/ptribble/ud/openjdk8u272/jdk/make/mapfiles/libawt_xawt/mapfile-vers
>     >     > >>>> ld: fatal: symbol referencing errors. No output written to
>     >     > >>>>
>     >   
>      /export/home/ptribble/ud/openjdk8u272/build/solaris-x86_64-normal-server-release/jdk/lib/amd64/libawt_xawt.so
>     >     > >>>>
>     >     > >>>> That appears to have been removed from
>     >     > >>>> jdk/src/solaris/native/sun/xawt/XToolkit.c
>     >     > >>>> but still lingers in the mapfile.
>     >     > >>>>
>     >     > >>>> Removing those two errant entries from the map files allows
>     >     the build to
>     >     > >>>> complete, and my initial testing looks good.
>     >     > >>>
>     >     > >>> Thanks for the report. We are aware of this.
>     Unfortunately, we
>     >     don't
>     >     > >>> have a system to reproduce this and it's somewhat low
>     priority
>     >     for us.
>     >     > >>> If you'd be willing to contribute patches, I'd gladly
>     accept and
>     >     > >>> approve it for 8u.
>     >     > >>
>     >     > >>
>     >     > >> Sure. Here's a patch to fix both.
>     >     > >
>     >     > > I'm afraid this would break Linux builds (and maybe
>     others). One
>     >     > > possible fix could be to only remove those lines from the map
>     >     files if
>     >     > > the build platform is solaris.
>     >     > >
>     >     > > Thanks,
>     >     > > Severin
>     >     > >
>     >
>     >
>     >
>     > --
>     > -Peter Tribble
>     > http://www.petertribble.co.uk/ <http://www.petertribble.co.uk/>
>     <http://www.petertribble.co.uk/ <http://www.petertribble.co.uk/>> -
>     > http://ptribble.blogspot.com/ <http://ptribble.blogspot.com/>
>     <http://ptribble.blogspot.com/ <http://ptribble.blogspot.com/>>
> 
> 
> 
> -- 
> -Peter Tribble
> http://www.petertribble.co.uk/ <http://www.petertribble.co.uk/> -
> http://ptribble.blogspot.com/ <http://ptribble.blogspot.com/>



More information about the jdk8u-dev mailing list