RFR: JDK-8241271 Make hotspot build reproducible
Erik Joelsson
erik.joelsson at oracle.com
Thu Mar 19 18:01:44 UTC 2020
On 2020-03-19 10:20, Magnus Ihse Bursie wrote:
> Currently, it is not possible two make hotspot builds reproducible,
> since the current date and time is always inserted using the special
> macros __DATE__ and __TIME__. This patch makes it possible to override
> these values from the build system, paving the way for making
> re-builds of hotspot bit-by-bit identical.
>
I like the ability to achieve this.
> On linux/gcc, we can now actually get bit-by-bit identical builds of
> libjvm.so (if not using precompiled headers), so I've updated the
> baseline-cmp profiles and compare script to reflect this.
>
I'm not sure this is a good idea though. It means I can't reasonably
compare to validate build changes that affect the precompiled header.
Similarly, the COMPARE_BUILD make variable argument will not work unless
you use both of these configure arguments.
Since compare.sh is generated through configure, perhaps these
exceptions can be made conditional on if these configure arguments are
setup correctly for a reproducible libjvm.so?
/Erik
> Bug: https://bugs.openjdk.java.net/browse/JDK-8241271
> WebRev:
> http://cr.openjdk.java.net/~ihse/JDK-8241271-make-hotspot-reproducible/webrev.01
>
> /Magnus
More information about the build-dev
mailing list