RFR: 8196516: libfontmanager must be built with LDFLAGS allowing unresolved symbols

Severin Gehwolf sgehwolf at redhat.com
Fri Apr 13 07:33:10 UTC 2018


Hi Volker,

On Fri, 2018-04-13 at 09:03 +0200, Volker Simonis wrote:
> Hi Severin,
> 
> I'm currently looking at the AIX-side of this bug.
> 
> The problem I see with your solution is that it uses LDFLAGS (which is
> generic) to filter out Linux specific linker flags. If we would extend
> this to AIX, we would have to add yet another substitution for AIX
> which filters out "-Wl,bernotok". This is not beautiful and gets
> uglier with every new platform.

Right. Note, though, that Magnus seems to be working on a more
comprehensive solution to this:
http://mail.openjdk.java.net/pipermail/build-dev/2018-April/021625.html

FWIW, the substitution for -Wl,-z,defs was there in LDFLAGS all along
(it was missing the other syntax). Not sure if -Wl,-z,defs is generic
enough to warrant it being on LDFLAGS directly, not LDFLAGS_linux or
some other OS specific variant. Either way, that's the model I've
followed.

Thanks,
Severin

> But as this change has already been pushed and because (fortunately)
> on AIX options which come later on the command line take precedence
> over earlier ones I can easily fix this with a specific LDFLAGS_aix
> setting. I've opened "8201524: [AIX] Don't link libfontmanager against
> libawt_headless" [1] for it and I'll send out a new RFR for it soon.
> 
> Regards,
> Volker
> 
> [1] https://bugs.openjdk.java.net/browse/JDK-8201524
> 
> 
> On Wed, Apr 11, 2018 at 10:17 AM, Severin Gehwolf <sgehwolf at redhat.com> wrote:
> > On Tue, 2018-04-10 at 14:51 -0700, Sergey Bylokhov wrote:
> > > LIBS_aix := -lawt_headless,
> > > I guess that AIX team should have a similar fix.
> > 
> > Possibly. I have no way of testing it, though. So will leave it to AIX
> > folk to have a look. My experience was that it isn't easily
> > reproducible. Some observations:
> > 
> >    1. Run swing app such as SwingSet2 on a headfull system. Since
> >       fontmanager will have a link dep on lawt_headless, and awt code
> >       loads libawt_xawt (headfull) on a headfull system, both libraries
> >       providing symbols needed by libfontmanager will be loaded. Then it
> >       depends whether this is a problem on that particular system or not.
> >       In my experience this worked on some systems and not on others.
> >    2. Solaris was build-time linking to libawt_headless causing bug
> >       8194870. So build-time linking got removed with that bug. Not sure
> >       why that bug is private :(
> > 
> > Thanks,
> > Severin
> > 
> > > On 10/04/2018 09:34, Erik Joelsson wrote:
> > > > Looks good. Thanks!
> > > > 
> > > > /Erik
> > > > 
> > > > 
> > > > On 2018-04-10 04:25, Severin Gehwolf wrote:
> > > > > Hi Erik,
> > > > > 
> > > > > On Mon, 2018-04-09 at 09:20 -0700, Erik Joelsson wrote:
> > > > > > Hello Severin,
> > > > > > 
> > > > > > I'm ok with this solution for now.
> > > > > 
> > > > > Thanks for the review!
> > > > > 
> > > > > > Could you please reduce the indentation on line 652. In the
> > > > > > build system
> > > > > > we like 4 spaces for continuation indent [1]
> > > > > 
> > > > > Done. New webrev at:
> > > > > http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8196516/webrev.0
> > > > > 2
> > > > > 
> > > > > Could someone from awt-dev have a look at this too? Thanks!
> > > > > 
> > > > > Cheers,
> > > > > Severin
> > > > > 
> > > > > > /Erik
> > > > > > 
> > > > > > [1] http://openjdk.java.net/groups/build/doc/code-conventions.h
> > > > > > tml
> > > > > > 
> > > > > > On 2018-04-09 06:39, Severin Gehwolf wrote:
> > > > > > > Hi,
> > > > > > > 
> > > > > > > Could somebody please review this build fix for
> > > > > > > libfontmanager.so. The
> > > > > > > issue for us is that with some LDFLAGS the build breaks as
> > > > > > > described in
> > > > > > > bug JDK-8196218. However, we cannot link to a providing
> > > > > > > library at
> > > > > > > build-time since we don't know which one it should be:
> > > > > > > libawt_headless
> > > > > > > or libawt_xawt. That has to happen at runtime. The proposed
> > > > > > > fix filters
> > > > > > > out relevant linker flags when libfontmanager is being built.
> > > > > > > More
> > > > > > > details are in the bug.
> > > > > > > 
> > > > > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8196516
> > > > > > > webrev:
> > > > > > > http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8196516/webr
> > > > > > > ev.01/
> > > > > > > 
> > > > > > > Testing: I've run this through submit[1] and got the
> > > > > > > following results.
> > > > > > > SwingSet2 works fine for me on F27. I'm currently running
> > > > > > > some more
> > > > > > > tests on RHEL 7.
> > > > > > > 
> > > > > > > ---------------------
> > > > > > > Mach5 mach5-one-sgehwolf-JDK-8196516-20180409-1036-17877:
> > > > > > > Builds
> > > > > > > PASSED. Testing FAILURE.
> > > > > > > 
> > > > > > > 0 Failed Tests
> > > > > > > 
> > > > > > > Mach5 Tasks Results Summary
> > > > > > > 
> > > > > > > NA: 0
> > > > > > > UNABLE_TO_RUN: 0
> > > > > > > EXECUTED_WITH_FAILURE: 0
> > > > > > > KILLED: 0
> > > > > > > PASSED: 82
> > > > > > > FAILED: 1
> > > > > > > Test
> > > > > > > 
> > > > > > > 1 Failed
> > > > > > > 
> > > > > > > tier1-debug-jdk_open_test_hotspot_jtreg_tier1_compiler_2-
> > > > > > > windows-x64-
> > > > > > > debug-31 SetupFailedException in setup...profile run-test-
> > > > > > > prebuilt' ,
> > > > > > > return value: 10
> > > > > > > --------------------
> > > > > > > 
> > > > > > > Not sure what this test failure means. Could somebody at
> > > > > > > Oracle shed
> > > > > > > some light on this?
> > > > > > > 
> > > > > > > Thanks,
> > > > > > > Severin
> > > 
> > > 


More information about the build-dev mailing list