MILESTONE and BUILD_NUMBER with new build system

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Mon Oct 29 14:00:21 PDT 2012


On 2012-09-25 03:16, Kelly O'Hair wrote:
>
> There are literally hundreds of make variables that can impact the build, and although I agree we should be
> minimizing that list, it will never go away completely.

I am not sure if there are any environment variables that are needed by 
the new build system? Apart from like PATH when running configure. I 
think it's quite possible to get rid of the complete list.

Regarding MILESTONE and JKD_BUILD_NUMBER. I think of three ways of 
overriding them:
1) As currently being done, by environment variables. This is not a good 
way forward, as has been discussed earlier.
2) As configure options. Possible, but feels weird. You shouldn't have 
to reconfigure just to bump build number.
3) As make arguments. Not really good. This should not change by every 
invocation of make.

Instead I propose a new configure argument, 
--with-override-versions-file which points to a user-defined file of the 
same format as version.numbers, but which contents are read after 
version.numbers, and can thus be used to override specific values.

Or we should generate a (commented-out) version.number files in the 
build configuration directory, like this:
#JDK_BUILD_NUMBER=
#MILESTONE=internal
and always threat is as an "override-versions-file".

The two approaches can of course be combined.

And, finally. We should really rename that file! ".numbers" is not a 
good suffix for a file. It is a shell fragment; maybe it should be 
version-numbers.sh. Or just plain "version-numbers".

/Magnus




More information about the build-infra-dev mailing list