[OpenJDK 2D-Dev] RFR: 8071710: [solaris] libfontmanager should be linked against headless awt library

Erik Joelsson erik.joelsson at oracle.com
Wed Jan 28 13:20:40 UTC 2015


Hello,

On 2015-01-28 14:15, Magnus Ihse Bursie wrote:
> On 2015-01-27 22:24, Phil Race wrote:
>> Hi,
>>
>> A mistake was made in JDK 8 so that the font libraries for Solaris 
>> are now
>> being linked against X11 libraries and this is a problem for headless 
>> (server) use
>> For more details see :
>> https://bugs.openjdk.java.net/browse/JDK-8071710
>>
>> I am presenting jdk 9 & 8 fixes here since this needs a backport and the
>> change is not identical
>>
>> The open part of the JDK 9 fix : 
>> http://cr.openjdk.java.net/~prr/8071710/
>>
>> The complete JDK 8 fix : http://cr.openjdk.java.net/~prr/8071710.8u/
>> (the t2k linking was moved to closed at some point)
>>
>> I've submitted JPRT jobs and also verified that UI demos (like 
>> SwingSet2) still run
>
> There is an additional fix you need to to, otherwise you will 
> introduce a race condition.
>
> This code:
> ifneq (, $(findstring $(OPENJDK_TARGET_OS), solaris aix))
>   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_XAWT)
> endif
>
Thanks for noticing this Magnus!
> makes sure that libfontmanager is not built until libawt_xawt is 
> present (otherwise linking will fail). With your patch, you should 
> change this to
>
> ifeq ($(OPENJDK_TARGET_OS), aix))
>   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_XAWT)
> else ifeq ($(OPENJDK_TARGET_OS), solaris))
>   $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_HEADLESS)
> endif
>
Actually, in the jdk8 patch, only solaris is changed, but in the jdk9 
patch, both aix and solaris are changed. If that is indeed the 
intention, the above is correct for jdk8, but I suspect the changes 
should match?

/Erik
> Otherwise, it looks good.
>
> Erik and I have been discussing for some time to change the framework 
> so this kind of dependencies will be automatically enforced, but 
> somehow that idea always gets pushed down the priority slide. :(
>
> /Magnus




More information about the build-dev mailing list