-
Notifications
You must be signed in to change notification settings - Fork 253
8244592: Start supporting SOURCE_DATE_EPOCH #1597
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Reviewed-by: erikj
|
👋 Welcome back clanger! A progress list of the required criteria for merging this PR into |
|
This backport pull request has now been updated with issue from the original commit. |
MBaesken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
@RealCLanger This change now passes all automated pre-integration checks. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 7 new commits pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the ➡️ To integrate this PR with the above commit message to the |
|
/integrate |
|
Going to push as commit ffea913.
Your commit was automatically rebased without conflicts. |
|
@RealCLanger Pushed as commit ffea913. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
After the backport of JDK-8257679, a non-debug build on Windows in a build directory that's outside the repository will fail. The problem unveiled by the backport is that in those builds, the
ALLOW_ABSOLUTE_PATHS_IN_OUTPUTflag is set to false, causing the code here to relativize the make command. This seemed to have worked fine with the old fixpath before JDK-8257679 but now it breaks the build.In later releases, we get new code by JDK-8256240 that removes the absolute paths on Windows by setting a new compiler option. After the change,
FILE_MACRO_CFLAGSis set (e.g. here) which will cause MakeCommandRelative to not relativize the paths in NativeCompilation.gmk.I propose to backport this behavior to jdk11u by backporting JDK-8244592 Start supporting SOURCE_DATE_EPOCH and JDK-8256240 Reproducible builds should turn on the "deterministic" flag for Visual Studio. This will bring some functionality of reproducible builds to jdk11u. I don't see an issue with that, since the behavior is off by default. The only larger risk I see is whether the newly used Visual Studio compiler options could break existing downstream builds on older VS versions. However, if such a thing occurs, we could add a condition to fall back to the old behavior then.
As for this backport:
I bring in a part of JDK-8240820, namely the new configure function
UTIL_ARG_ENABLEwhich is used by JDK-8244592. Furthermore I incorporated the changes to jdk-options.m4 of the already backported JDK-8257679, which didn't fit at that time.Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk11u-dev pull/1597/head:pull/1597$ git checkout pull/1597Update a local copy of the PR:
$ git checkout pull/1597$ git pull https://git.openjdk.org/jdk11u-dev pull/1597/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 1597View PR using the GUI difftool:
$ git pr show -t 1597Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk11u-dev/pull/1597.diff