Hello,
On 2016-11-07 13:40, Magnus Ihse Bursie wrote:
Hi,
The webrev haven't picked up the relationship between the LinkOpt and
Classlist files. It seems that it is a rename + modifications. Can you
please redo it using hg mv? And update the webrev so the changes in
the file is visible.
The file was moved between repositories. I'm not aware of a way to get
webrev to display that as a diff.
The name "LinkOptData", is it supposed to be read "link optional
data"? I'm not sure in what way it is an improvement of Classlist
(even though this name was no good either).
Opt -> optimization. We are creating data that is used for optimizing
the images in the jlink step.
Why do you pass JMODS_DIR and _TEMPDIR in Main.gmk to CreateJmods.gmk?
I understand that you need to specify the module and that we're
building interim jmods, but the rest seems to be redundant.
Right, it started out as sending in specific modifications to existing
variables in CreateJmods.gmk, but then I converted one of them to an
explicit "interim" setting. It would make sense to let CreateJmods.gmk
just use this "interim" setting to pick the correct directories.
I have however already pushed this so further changes will need to be
done in a followup cleanup change.
/Erik
/Magnus
On 2016-11-03 13:01, Erik Joelsson wrote:
Hello,
New webrev: http://cr.openjdk.java.net/~erikj/8168108/webrev.02/
On 2016-11-02 18:52, Mandy Chung wrote:
On Nov 2, 2016, at 9:55 AM, Erik Joelsson
<[email protected]> wrote:
This patch changes how the dynamically generated lib/classlist is
packaged. We already create an interim-image from java.base and
java.logging to generate the classlist during the build. We then
copy it into the jdk and jre images using makefile logic after
jlinking those images. With this patch, lib/classlist is instead
included in java.base.jmod.
To achieve this, I have introduced the concept of interim jmods for
the jmods used to create the interim-image. These can be built
explicitly from the top level using targets <module>-interim-jmod.
It adds a little bit of build time, but it's hardly noticeable.
Bug: https://bugs.openjdk.java.net/browse/JDK-8168108
Webrev: http://cr.openjdk.java.net/~erikj/8168108/webrev.01/
I like the interim jmods idea. The solution is clean.
jdk/make/GenerateClasslist.gmk
62 $(call MakeDir, $(@D) $(SUPPORT_OUTPUTDIR)/classlist)
Is the directory $(SUPPORT_OUTPUTDIR)/classlist needed? I can’t
tell why this line needs to be changed.
Yes it was, since jli_trace.out is also generated by this target. I
realize this becomes a bit convoluted so renamed the output dir, the
makefile and the top level target to reflect that more things than
classlist are generated here. I fixed the make rules so that both the
classlist and jli_trace.out works correctly if either is removed
before a rebuild.
63 $(call LogInfo, Generating lib/classlist)
It might be better to print $(CLASSLIST_FILE) in the log instead?
Fixed the log messages.
/Erik
Otherwise, looks fine.
Mandy