Erik:

OK - version 2 looks good.

Tim


Thanks!

During testing, I found an intermittent race issue. The command line
that runs the interim langtools version of javac still always points to
the buildtools/interim-langtools dir of the normal build. This variable
also needs to be rewritten in buildjdk-spec.gmk.in. New webrev, only
changed in buildjdk-spec.gmk.in:

http://cr.openjdk.java.net/~erikj/8217739/webrev.02/

/Erik

On 2019-06-04 07:53, Tim Bell wrote:
Erik:

Looks good.

Tim

This is a fix for a problem brought up on this list [1]. The main issue
is that when cross compiling, and creating a buildjdk during the build,
the UnixConstants.java cannot necessarily be reused between the target
JDK and the buildjdk. While investigating this, I came to the conclusion
that we really should stop trying to reuse anything between the buildjdk
and target JDK. It's just becoming too complex to maintain (due to the
intricate interactions with the interim-image, generate-link-opt-data
and exploded-image-optimize targets, causing circular dependencies and
endless incremental rebuilds).

So this fix simply removes all the reuse of buildtools, gensrc and java
compilation when creating a buildjdk. Hopefully this is making Main.gmk
a bit less convoluted.

While working on this, I came up with the idea of adding a log prefix
functionality, to more easily discern which log lines were printed by
the buildjdk build and which were part of the normal build. I liked this
a lot so including that in the same fix, and applied it to the bootcycle
build as well.

Bug: https://bugs.openjdk.java.net/browse/JDK-8217739

Webrev: http://cr.openjdk.java.net/~erikj/8217739/webrev.01/index.html

/Erik

[1]
http://mail.openjdk.java.net/pipermail/build-dev/2019-January/024729.html





Reply via email to