On Thu, 10 Feb 2022 16:42:47 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
>> Current adhoc version build strings are not ideal. Some of the problems: >> * A build number of "0" is inserted, which make the version string look >> like it's an official build, at least when not reading carefully >> * The version string gives little indication on what source code the build >> was based >> >> Also, an error was discovered in how the build system generates version >> strings without a build number (since this basically never happened before). >> A version without a build number, and without a PRE value, but with an OPT >> value, should have a "+-" separator, according to JEP 223. While this was >> correctly handled, the "+-" separator was also applied to versions without a >> build, but with both PRE and OPT. In this case, the "+" should be omitted, >> according to JEP 223. This bug is fixed by this commit. >> >> Ideally, the adhoc version string should include something along the lines >> of the output of `git describe`. However, since the version string is set at >> configure time, not build time, this will almost immediately become >> misleading. :-( A substitute is proposed in this patch, where the branch >> name is included in the OPT string (if it's not `master`). >> >> Finally, this patch fixes hotspot so it can properly build without a build >> number. This was the last blocker for why the build system always required >> the "0" as build number before. To facilitate interoperability with external >> tools (like jib) that still sets build number to "0" to really signal "no >> build number", a build number exactly matching "0" will be interpreted as >> having no build number. > > Magnus Ihse Bursie has updated the pull request incrementally with one > additional commit since the last revision: > > Adhoc build marker needs correction I like this. Built the adhoc binary with this patch, and version string is nice: $ build/linux-x86_64-server-fastdebug/images/jdk/bin/java -version openjdk version "19-internal" 2022-09-20 OpenJDK Runtime Environment (fastdebug build 19-internal-adhoc.shade.jdk) OpenJDK 64-Bit Server VM (fastdebug build 19-internal-adhoc.shade.jdk, mixed mode, sharing) ------------- Marked as reviewed by shade (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/6152