version numbers for distribution builds?

Matthias Klose doko at
Thu Oct 26 23:13:32 UTC 2017

On 27.10.2017 00:56, Matthias Klose wrote:
> Hi,
> I recently learned that I should configure an openjdk build with an empty
> -with-version-pre string, and with any package information stuffed into the
> --with-version-opt argument.
>   --with-version-pre='' --with-version-opt='Debian-9.0.1+11-1'
> 9.0.1+11 is what I call the upstream version, directly derived from the tag in
> the mercurial repository.  The part after the dash is the packaging release and
> gets incremented when more than upload to the distribution is based on the same
> upstream version.
> However using that I get
> configure: WARNING: --with-version-opt value has been sanitized from
> 'Debian-9.0.1+11-1' to 'Debian-9.0.111-1'
> which makes the version string somehow cryptic.  Why is there a reason that the
> version string is mangled?  Is there a recommendation how to form the version
> for a source release?

$ java -version
openjdk version "9.0.1"
OpenJDK Runtime Environment (build 9.0.1+0-Debian-9.0.111-1)
OpenJDK 64-Bit Server VM (build 9.0.1+0-Debian-9.0.111-1, mixed mode)

Omar suggested on irc to use

  --with-version-pre='' --with-version-build=11 --with-version-opt='Debian.1

however that will lead to 9.0.1+11-Debian.1, which doesn't match the package
version either.  It looks like this whole versioning schema is only fit for
upstream builds, and doesn't address any versioning in the downstream builds.

Maybe I'm missing something, but how can I include the string Debian-9.0.1+11-1
into that build information?


More information about the jdk-dev mailing list