<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p><br>
</p>
<div class="moz-cite-prefix">On 2/11/24 03:14, Julian Waters wrote:<br>
</div>
<blockquote type="cite" cite="mid:CAP2b4GM8OrWfJUoC3TGjOCg65DAQyxMo68DSzARTyVGTD162nA@mail.gmail.com">
<div dir="ltr">Hi Erik,
<div><br>
</div>
<div>Thanks for the clarification! How then does Oracle compile
the JDK, such that the versioning numbers appear in the
following manner?</div>
<div><br>
</div>
<div>C:\Users\vertig0>java --version<br>
java 21 2023-09-19 LTS<br>
Java(TM) SE Runtime Environment (build 21+35-LTS-2513)<br>
Java HotSpot(TM) 64-Bit Server VM (build 21+35-LTS-2513, mixed
mode, sharing)<br>
</div>
<div><br>
</div>
<div>(My system doesn't have OpenJDK as its main JDK, and uses
the Oracle JDK instead. The "Java" strings should rightfully
be "OpenJDK", so pay no mind to that. Last I remember, the
printed OpenJDK version is the same as above except for
"Java(TM)" being "OpenJDK" instead)</div>
<div><br>
</div>
<div>The MSYS2 Project would prefer to have its MinGW JDKs
versioned as such (Eg build 21+35-LTS-2513 or whatever),
rather than something like "23-internal-adhoc.mingwci.jdk",
and we'd prefer to mimic how Oracle compiles both OpenJDK and
Oracle JDK as closely as possible.</div>
<div><br>
</div>
<div>I believe Oracle probably does it by specifying different
parts of the version string on configure, something like</div>
<div><br>
</div>
<div>bash configure <Whatever the option string and other
compile options are></div>
<div>make product-bundles</div>
<div><br>
</div>
<div>but I'd like to know the exact flags used, especially for
Windows binaries, if possible</div>
<div><br>
</div>
</div>
</blockquote>
<p>These are the relevant arguments we used for that particular
build:</p>
<p> --with-version-build=35 --with-version-pre=
--with-version-opt=LTS-2513</p>
<p>/Erik<br>
</p>
<blockquote type="cite" cite="mid:CAP2b4GM8OrWfJUoC3TGjOCg65DAQyxMo68DSzARTyVGTD162nA@mail.gmail.com">
<div dir="ltr">
<div>best regards,</div>
<div>Julian</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Thu, Feb 1, 2024 at 9:52 PM
<<a href="mailto:erik.joelsson@oracle.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">erik.joelsson@oracle.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On
2/1/24 04:47, Julian Waters wrote:<br>
> Hi all,<br>
><br>
> Quick question: Which JDK in the build directory is the
one that is<br>
> officially shipped by Oracle? Is it the one in "jdk" that
is directly<br>
> in the build directory, or the one in "images/jdk"?<br>
<br>
The one in images/jdk is the one we base the distribution on,
but it's <br>
not actually exactly that. For historic reasons the image
generated in <br>
images/jdk contains external debug symbols, which we do not
ship. To get <br>
exactly what is shipped, run `make product-bundles` and check
the <br>
zip/tar.gz in "bundles/".<br>
<br>
The one directly in jdk, the "exploded image", just exists
because it's <br>
faster to build, especially incrementally, so in some
developer <br>
workflows it's preferred. Since the class files are all laid
out on disk <br>
and not jlinked together, it has quite different performance <br>
characteristics.<br>
<br>
/Erik<br>
<br>
</blockquote>
</div>
</blockquote>
</body>
</html>