On Sat, 5 Mar 2022 08:57:45 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
>> When doing reproducible builds, controlling the build time is imperative. To >> make this as easy as possible, some changes are needed in the build system. >> >> * If source-date is set to anything other than "updated" (meaning that it >> should be determined at build time), then the default value of >> --with-hotspot-build-time should be the same time. >> >> * If the industry standard SOURCE_DATE_EPOCH is set when running configure, >> the default value for --with-source-date should be picked up from this >> variable. (If the command line option is given, it will override the >> environment variable however.) >> >> * Finally the code can be made a bit clearer that we can set and export >> SOURCE_DATE_EPOCH to SOURCE_DATE in spec.gmk, unless we're using the >> "updated" (determined at build time) value. > > Magnus Ihse Bursie has updated the pull request incrementally with one > additional commit since the last revision: > > Test for updated, not current doc/building.md line 1546: > 1544: You must also make sure your build does not rely on `configure`'s > default adhoc > 1545: version strings. Default adhoc version strings `OPT` segment include > user name, > 1546: source directory and timestamp. You can either override just the `OPT` > segment The timestamp comes from Oracle internal builds using Jib. If you just use configure, the default OPT string is `adhoc.<username>.<base dir name>`. As a followup on this, I think we should change jib-profiles.js to extract the date from the buildId and set --with-source-date based on it. doc/building.md line 1570: > 1568: * `--with-source-date` > 1569: > 1570: This option controls how the JDK build sets SOURCE_DATE_ EPOCH when Space in variable name. Should it be backtick quoted? ------------- PR: https://git.openjdk.java.net/jdk/pull/7660