<AWT Dev> RFR(XS): 8201524: [AIX] Don't link libfontmanager against libawt_headless

Erik Joelsson erik.joelsson at oracle.com
Fri Apr 13 18:31:15 UTC 2018

Yes, we don't want unneeded dependencies declared as it both potentially 
slows down the build (though this removal will not have any measurable 
impact) as well as confuses humans trying to make sense of the makefiles.

This removal should be fine as we don't link to libawt_xawt on any 
platform anymore. Linking is the only reason we have those dependencies.


On 2018-04-13 10:20, Phil Race wrote:
> I suppose this potentially helps the concurrency of the build ?
> I can't think of why this would be a problem now there is no 
> compile-time linking
> involved and it seems Linux was already fine without this,
> but a jdk-submit would be prudent ..
> -phil.
> On 04/13/2018 09:22 AM, Volker Simonis wrote:
>> Hi Erik,
>> thanks for looking at the patch and good catch! You're right that the
>> dependency can now be removed. Here's the new webrev:
>> http://cr.openjdk.java.net/~simonis/webrevs/2018/8201524.v1
>> Regards,
>> Volker
>> On Fri, Apr 13, 2018 at 6:00 PM, Erik Joelsson 
>> <erik.joelsson at oracle.com> wrote:
>>> Hello Volker,
>>> The change looks good, but now that we no longer link against
>>> libawt_headless, we should also remove the make dependency a few 
>>> lines down.
>>> (Should have been done already for Solaris.)
>>> /Erik
>>> On 2018-04-13 06:28, Volker Simonis wrote:
>>>> Hi,
>>>> can I please have a review for this tiny AIX cleanup:
>>>> http://cr.openjdk.java.net/~simonis/webrevs/2018/8201524/
>>>> https://bugs.openjdk.java.net/browse/JDK-8201524
>>>> This is a follow up change of JDK-8196516 which discovered that on AIX
>>>> libfontmanager is always linked against libawt_headless at build time.
>>>> If we are running in a headfull environment, libfontmanager will
>>>> dynamically load libawt_xawt which is not good because libawt_headless
>>>> and libawt_xawt define some common symbols. If we're running in a
>>>> headless environment, libawt_headless may be loaded a second time (at
>>>> least on Linux/Solaris) which isn't good either.
>>>> Both of these scenarios haven't caused any problems on AIX yet, but I
>>>> think it's good to cleanup the AIX implementation as well and don't
>>>> link libfontmanager against libawt_headless anymore. In order to
>>>> achieve this, we have to allow unresolved symbols during the linking
>>>> of libfontmanager. This can be easily achieved by adding the additions
>>>> linker flag "-Wl$(COMMA)-berok" through LDFLAGS_aix. This works fine
>>>> for AIX because options which come later on the command line take
>>>> precedence
>>>> over earlier ones.
>>>> Thank you and best regards,
>>>> Volker

More information about the awt-dev mailing list