Is anyone still building multiple JVMs?
Magnus Ihse Bursie
magnus.ihse.bursie at oracle.com
Thu Feb 20 15:04:28 UTC 2020
On 2020-02-20 12:52, Baesken, Matthias wrote:
>> run a separate task with "configure --with-jvm-variants=minimal &&
>> make hotspot".
> Hello, this would , as far as I know, not produce the same result jdk image with both minimal+server libjvm in the image .
> So the proposed change sounds a bit like a workaround, but not a real replacement to what we have currently .
Well, almost. The resulting minimal/libjvm.so would reside in a
different directory, and would have to be copied into place. And the
jvm.cfg file needs to be correspondingly updated. All of this is trivial
for you to do in your wrapper CI scripts. Just as what Adrian does with
zero. The simplicity of that solution compared to the logistical
nightmare in the make files does not make a compelling case for keeping
the multi-JVM support.
However if you do that, you *should* get the same result. If not, then
it's a bug somewhere (and that would really explain why this business of
having multiple JVMs is hairy!). Give it a try! You can use the
compare.sh script to verify that the resulting images are equal.
The one thing you need to take care of is making sure that the set of
JVM features that code outside Hotspot cares about is matching. This is
one of the thing the current system is trying hard to do (and failing,
mostly, in all edge cases). E.g., you need to either enable CDS on both
the server and the minimal build, or disable it on both.
/Magnus
>
> Best Regards, Matthias
>
>
>> On 2020-02-19 16:59, Baesken, Matthias wrote:
>>> Hi Magnus, yes we do. We build (on Linux only currently) "--with-jvm-
>> variants=minimal,server" in our central builds to test that minimal is still
>> working and that is was not destroyed by recent changes .
>>> Best Regards, Matthias
>> Is this just to test that minimal is working? If so, you could just as
>> well run a separate task with "configure --with-jvm-variants=minimal &&
>> make hotspot". Unless you are actually shipping this configuration, that
>> does not seem like a solid reason for keeping this functionality in the
>> build.
>>
>> /Magnus
More information about the build-dev
mailing list