I have updated both the patches to add the dependency that headless awt
must be built first and also corrected that AIX should be given the same
treatment
as Solaris in both releases :
jdk9: http://cr.openjdk.java.net/~prr/8071710.1/
jdk8u: http://cr.openjdk.java.net/~prr/8071710.8u.1/
-phil.
On 01/28/2015 05:15 AM, 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
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
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