|
|
Created:
3 years, 10 months ago by Yoshisato Yanagisawa Modified:
3 years, 10 months ago CC:
chromium-reviews Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionMake __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string.
If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or
time will be filled. Such a value may change compile by compile, and
breaks deterministic build.
BUG=314403
Review-Url: https://codereview.chromium.org/2664743002
Cr-Commit-Position: refs/heads/master@{#447769}
Committed: https://chromium.googlesource.com/chromium/src/+/5eded4b55c92335c96702d53aa319a360c86f556
Patch Set 1 #
Total comments: 2
Patch Set 2 : also define on Windoes. #Patch Set 3 : suppress warnings on windows #Patch Set 4 : windows clang use the same rule with posix #Messages
Total messages: 55 (30 generated)
Nico kindly let me know I can now reland the change: https://codereview.chromium.org/2255093004/ Let me try to reland.
The CQ bit was checked by maruel@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
No L-G-T-M from a valid reviewer yet. CQ run can only be started by full committers or once the patch has received an L-G-T-M from a full committer. Even if an L-G-T-M may have been provided, it was from a non-committer, _not_ a full super star committer. See http://www.chromium.org/getting-involved/become-a-committer Note that this has nothing to do with OWNERS files.
lgtm
The CQ bit was checked by maruel@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== Make __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string. If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or time will be filled. Such a value may change compile by compile, and breaks deterministic build. BUG=314403 ========== to ========== Make __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string. If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or time will be filled. Such a value may change compile by compile, and breaks deterministic build. BUG=314403 ==========
yyanagisawa@chromium.org changed required reviewers: + dpranke@google.com
Dirk, will you take a look? I need owner's lgtm to submit this file.
https://codereview.chromium.org/2664743002/diff/1/build/config/compiler/BUILD.gn File build/config/compiler/BUILD.gn (right): https://codereview.chromium.org/2664743002/diff/1/build/config/compiler/BUILD... build/config/compiler/BUILD.gn:192: Don't we want this on Windows too?
I defer to thakis@ here ...
https://codereview.chromium.org/2664743002/diff/1/build/config/compiler/BUILD.gn File build/config/compiler/BUILD.gn (right): https://codereview.chromium.org/2664743002/diff/1/build/config/compiler/BUILD... build/config/compiler/BUILD.gn:192: On 2017/01/31 01:27:56, Nico wrote: > Don't we want this on Windows too? Done.
The CQ bit was checked by yyanagisawa@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_comp...)
The CQ bit was checked by yyanagisawa@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/...)
The CQ bit was checked by yyanagisawa@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
PTAL
LGTM!
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: chromeos_daisy_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_compile_dbg_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL) linux_chromium_tsan_rel_ng on master.tryserver.chromium.linux (JOB_TIMED_OUT, no build URL)
The CQ bit was checked by yyanagisawa@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from maruel@chromium.org Link to the patchset: https://codereview.chromium.org/2664743002/#ps60001 (title: "windows clang use the same rule with posix")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
All required reviewers (with asterisk prefixes) have not yet approved this CL. No L-G-T-M from a valid reviewer yet. CQ run can only be started by full committers or once the patch has received an L-G-T-M from a full committer. Even if an L-G-T-M may have been provided, it was from a non-committer, _not_ a full super star committer. See http://www.chromium.org/getting-involved/become-a-committer Note that this has nothing to do with OWNERS files.
maruel@chromium.org changed reviewers: - dpranke@google.com
maruel@chromium.org changed required reviewers: - dpranke@google.com
On 2017/02/02 07:09:40, commit-bot: I haz the power wrote: > All required reviewers (with asterisk prefixes) have not yet approved this CL. > > No L-G-T-M from a valid reviewer yet. > CQ run can only be started by full committers or once the patch has > received an L-G-T-M from a full committer. > Even if an L-G-T-M may have been provided, it was from a non-committer, > _not_ a full super star committer. > See http://www.chromium.org/getting-involved/become-a-committer > Note that this has nothing to do with OWNERS files. Removed Dirk from reviewers list, CQ'ing.
The CQ bit was checked by maruel@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 60001, "attempt_start_ts": 1486048191206350, "parent_rev": "fb5f56bd9f05cbe7b8fed9e060c72bb38aa172d8", "commit_rev": "5eded4b55c92335c96702d53aa319a360c86f556"}
Message was sent while issue was closed.
Description was changed from ========== Make __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string. If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or time will be filled. Such a value may change compile by compile, and breaks deterministic build. BUG=314403 ========== to ========== Make __DATE__, __TIME__ and __TIMESTAMP__ to evaluate to an empty string. If __DATE__, __TIME__ or __TIMESTAMP__ used in code, current date or time will be filled. Such a value may change compile by compile, and breaks deterministic build. BUG=314403 Review-Url: https://codereview.chromium.org/2664743002 Cr-Commit-Position: refs/heads/master@{#447769} Committed: https://chromium.googlesource.com/chromium/src/+/5eded4b55c92335c96702d53aa31... ==========
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/5eded4b55c92335c96702d53aa31...
Message was sent while issue was closed.
kjellander@chromium.org changed reviewers: + kjellander@chromium.org
Message was sent while issue was closed.
This CL breaks our Google internal builds due to redefinition (we import the WebRTC source code, which in turn shares the Chromium toolchain). Is there a way we can solve this problem in a better way?
Message was sent while issue was closed.
How do you build with the Google toolchain and gn? On Feb 7, 2017 9:21 AM, <kjellander@chromium.org> wrote: > This CL breaks our Google internal builds due to redefinition (we import > the > WebRTC source code, which in turn shares the Chromium toolchain). > > Is there a way we can solve this problem in a better way? > > https://codereview.chromium.org/2664743002/ > -- You received this message because you are subscribed to the Google Groups "Chromium-reviews" group. To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On 2017/02/07 15:02:58, Nico wrote: > How do you build with the Google toolchain and gn? We have written a tool that generates Bazel BUILD files. > > On Feb 7, 2017 9:21 AM, <mailto:kjellander@chromium.org> wrote: > > > This CL breaks our Google internal builds due to redefinition (we import > > the > > WebRTC source code, which in turn shares the Chromium toolchain). > > > > Is there a way we can solve this problem in a better way? > > > > https://codereview.chromium.org/2664743002/ > > > > -- > You received this message because you are subscribed to the Google Groups > "Chromium-reviews" group. > To unsubscribe from this group and stop receiving emails from it, send an email > to mailto:chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On Tue, Feb 7, 2017 at 10:47 AM, <kjellander@chromium.org> wrote: > On 2017/02/07 15:02:58, Nico wrote: > > How do you build with the Google toolchain and gn? > > We have written a tool that generates Bazel BUILD files. > Is there a way to tell the google toolchain to not do global flags setup, since we do that already? gn assumes that it controls the build. This feels like something you should workaround on your end. I think we don't want to make writing Chromium build files more difficult for that use case. > > > > > > On Feb 7, 2017 9:21 AM, <mailto:kjellander@chromium.org> wrote: > > > > > This CL breaks our Google internal builds due to redefinition (we > import > > > the > > > WebRTC source code, which in turn shares the Chromium toolchain). > > > > > > Is there a way we can solve this problem in a better way? > > > > > > https://codereview.chromium.org/2664743002/ > > > > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Chromium-reviews" group. > > To unsubscribe from this group and stop receiving emails from it, send an > email > > to mailto:chromium-reviews+unsubscribe@chromium.org. > > > > https://codereview.chromium.org/2664743002/ > -- You received this message because you are subscribed to the Google Groups "Chromium-reviews" group. To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On 2017/02/07 15:50:20, Nico wrote: > On Tue, Feb 7, 2017 at 10:47 AM, <mailto:kjellander@chromium.org> wrote: > > > On 2017/02/07 15:02:58, Nico wrote: > > > How do you build with the Google toolchain and gn? > > > > We have written a tool that generates Bazel BUILD files. > > > > Is there a way to tell the google toolchain to not do global flags setup, > since we do that already? gn assumes that it controls the build. > > This feels like something you should workaround on your end. I think we > don't want to make writing Chromium build files more difficult for that use > case. I agree this should probably be addressed downstream. But the easiest solution would be to define these macros to 'redacted'. Then they'd have the same value in Chromium and internally, thus not causing any redefinition error (IIUC). > > > > > > > > > > > > On Feb 7, 2017 9:21 AM, <mailto:kjellander@chromium.org> wrote: > > > > > > > This CL breaks our Google internal builds due to redefinition (we > > import > > > > the > > > > WebRTC source code, which in turn shares the Chromium toolchain). > > > > > > > > Is there a way we can solve this problem in a better way? > > > > > > > > https://codereview.chromium.org/2664743002/ > > > > > > > > > > -- > > > You received this message because you are subscribed to the Google Groups > > > "Chromium-reviews" group. > > > To unsubscribe from this group and stop receiving emails from it, send an > > email > > > to mailto:chromium-reviews+unsubscribe@chromium.org. > > > > > > > > https://codereview.chromium.org/2664743002/ > > > > -- > You received this message because you are subscribed to the Google Groups > "Chromium-reviews" group. > To unsubscribe from this group and stop receiving emails from it, send an email > to mailto:chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On Tue, Feb 7, 2017 at 2:30 PM, <kjellander@chromium.org> wrote: > On 2017/02/07 15:50:20, Nico wrote: > > On Tue, Feb 7, 2017 at 10:47 AM, <mailto:kjellander@chromium.org> wrote: > > > > > On 2017/02/07 15:02:58, Nico wrote: > > > > How do you build with the Google toolchain and gn? > > > > > > We have written a tool that generates Bazel BUILD files. > > > > > > > Is there a way to tell the google toolchain to not do global flags setup, > > since we do that already? gn assumes that it controls the build. > > > > This feels like something you should workaround on your end. I think we > > don't want to make writing Chromium build files more difficult for that > use > > case. > > I agree this should probably be addressed downstream. But the easiest > solution > would be to define these macros to 'redacted'. Then they'd have the same > value > in Chromium and internally, thus not causing any redefinition error (IIUC). > If that fixes things for you, then that sounds like something we'd accept. Want to send a patch? :-) > > > > > > > > > > > > > > > > > > > > On Feb 7, 2017 9:21 AM, <mailto:kjellander@chromium.org> wrote: > > > > > > > > > This CL breaks our Google internal builds due to redefinition (we > > > import > > > > > the > > > > > WebRTC source code, which in turn shares the Chromium toolchain). > > > > > > > > > > Is there a way we can solve this problem in a better way? > > > > > > > > > > https://codereview.chromium.org/2664743002/ > > > > > > > > > > > > > -- > > > > You received this message because you are subscribed to the Google > Groups > > > > "Chromium-reviews" group. > > > > To unsubscribe from this group and stop receiving emails from it, > send an > > > email > > > > to mailto:chromium-reviews+unsubscribe@chromium.org. > > > > > > > > > > > > https://codereview.chromium.org/2664743002/ > > > > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Chromium-reviews" group. > > To unsubscribe from this group and stop receiving emails from it, send an > email > > to mailto:chromium-reviews+unsubscribe@chromium.org. > > > > https://codereview.chromium.org/2664743002/ > -- You received this message because you are subscribed to the Google Groups "Chromium-reviews" group. To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On 2017/02/07 19:32:01, Nico wrote: > On Tue, Feb 7, 2017 at 2:30 PM, <mailto:kjellander@chromium.org> wrote: > > > On 2017/02/07 15:50:20, Nico wrote: > > > On Tue, Feb 7, 2017 at 10:47 AM, <mailto:kjellander@chromium.org> wrote: > > > > > > > On 2017/02/07 15:02:58, Nico wrote: > > > > > How do you build with the Google toolchain and gn? > > > > > > > > We have written a tool that generates Bazel BUILD files. > > > > > > > > > > Is there a way to tell the google toolchain to not do global flags setup, > > > since we do that already? gn assumes that it controls the build. > > > > > > This feels like something you should workaround on your end. I think we > > > don't want to make writing Chromium build files more difficult for that > > use > > > case. > > > > I agree this should probably be addressed downstream. But the easiest > > solution > > would be to define these macros to 'redacted'. Then they'd have the same > > value > > in Chromium and internally, thus not causing any redefinition error (IIUC). > > > > If that fixes things for you, then that sounds like something we'd accept. > Want to send a patch? :-) > I'm lost here. How does setting __DATE__='' cause a problem, and why would __DATE__=redacted be better?
Message was sent while issue was closed.
On 2017/02/07 20:21:54, Dirk Pranke (slow until Feb 7) wrote: > I'm lost here. How does setting __DATE__='' cause a problem, and why would > __DATE__=redacted be better? To be clear, changing the value to something else is fine with me, I'd just like to understand the problem you're hitting better. Feel free to reply off-CL.
Message was sent while issue was closed.
From my understanding, the internal toolchain sets it to undefined, and defining it to two different things causes a warning while defining it to two different things doesn't. On Feb 7, 2017 3:30 PM, <dpranke@chromium.org> wrote: > On 2017/02/07 20:21:54, Dirk Pranke (slow until Feb 7) wrote: > > I'm lost here. How does setting __DATE__='' cause a problem, and why > would > > __DATE__=redacted be better? > > To be clear, changing the value to something else is fine with me, I'd > just like > to understand the problem you're hitting better. Feel free to reply off-CL. > > https://codereview.chromium.org/2664743002/ > -- You received this message because you are subscribed to the Google Groups "Chromium-reviews" group. To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
Message was sent while issue was closed.
On 2017/02/07 20:21:54, Dirk Pranke (slow until Feb 7) wrote: > On 2017/02/07 19:32:01, Nico wrote: > > On Tue, Feb 7, 2017 at 2:30 PM, <mailto:kjellander@chromium.org> wrote: > > > > > On 2017/02/07 15:50:20, Nico wrote: > > > > On Tue, Feb 7, 2017 at 10:47 AM, <mailto:kjellander@chromium.org> wrote: > > > > > > > > > On 2017/02/07 15:02:58, Nico wrote: > > > > > > How do you build with the Google toolchain and gn? > > > > > > > > > > We have written a tool that generates Bazel BUILD files. > > > > > > > > > > > > > Is there a way to tell the google toolchain to not do global flags setup, > > > > since we do that already? gn assumes that it controls the build. > > > > > > > > This feels like something you should workaround on your end. I think we > > > > don't want to make writing Chromium build files more difficult for that > > > use > > > > case. > > > > > > I agree this should probably be addressed downstream. But the easiest > > > solution > > > would be to define these macros to 'redacted'. Then they'd have the same > > > value > > > in Chromium and internally, thus not causing any redefinition error (IIUC). > > > > > > > If that fixes things for you, then that sounds like something we'd accept. > > Want to send a patch? :-) > > > > I'm lost here. How does setting __DATE__='' cause a problem, and why would > __DATE__=redacted be better? The internal build toolchain sets it to __DATE__="redacted" so it would avoid the redefinition. But I think it's better we just filter out these defines instead (so no action needed in Chromium). |