Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(132)

Issue 1663813003: GN: Don't write stamp files for one rule. (Closed)

Created:
4 years, 10 months ago by brettw
Modified:
4 years, 10 months ago
Reviewers:
Nico, scottmg
CC:
chromium-reviews, tfarina
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

GN: Don't write stamp files for one rule. When handling input deps, GN would previously always write a stamp file, even if that stamp file just stamped one input file. This is a wasteful extra rule. The previous code was also a bit fragile because it first computed if there was any output via a 6-line conditional, and then wrote that output in a way that the conditions must match the previous computation. This new structure is a little more clear since we accumulate the inputs and then check the size, so nothing must be kept in sync. Savings in Chrome Linux build is a reduction in 388 build rules and 376K of .ninja files. BUG=552701 Committed: https://crrev.com/4445f6179019a0a62cd4a7854723dba7316c5ac0 Cr-Commit-Position: refs/heads/master@{#373375}

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+83 lines, -78 lines) Patch
M tools/gn/ninja_action_target_writer_unittest.cc View 1 chunk +1 line, -2 lines 0 comments Download
M tools/gn/ninja_binary_target_writer_unittest.cc View 1 chunk +2 lines, -3 lines 0 comments Download
M tools/gn/ninja_copy_target_writer_unittest.cc View 1 chunk +1 line, -3 lines 0 comments Download
M tools/gn/ninja_target_writer.cc View 2 chunks +69 lines, -62 lines 2 comments Download
M tools/gn/ninja_target_writer_unittest.cc View 3 chunks +10 lines, -8 lines 0 comments Download

Messages

Total messages: 17 (8 generated)
brettw
4 years, 10 months ago (2016-02-03 21:31:45 UTC) #3
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1663813003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1663813003/1
4 years, 10 months ago (2016-02-03 21:33:37 UTC) #5
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 10 months ago (2016-02-03 22:11:21 UTC) #7
scottmg
lgtm https://codereview.chromium.org/1663813003/diff/1/tools/gn/ninja_target_writer.cc File tools/gn/ninja_target_writer.cc (right): https://codereview.chromium.org/1663813003/diff/1/tools/gn/ninja_target_writer.cc#newcode214 tools/gn/ninja_target_writer.cc:214: if (input_deps_sources.size() == 1 && input_deps_targets.size() == 0) ...
4 years, 10 months ago (2016-02-03 22:41:18 UTC) #8
brettw
https://codereview.chromium.org/1663813003/diff/1/tools/gn/ninja_target_writer.cc File tools/gn/ninja_target_writer.cc (right): https://codereview.chromium.org/1663813003/diff/1/tools/gn/ninja_target_writer.cc#newcode214 tools/gn/ninja_target_writer.cc:214: if (input_deps_sources.size() == 1 && input_deps_targets.size() == 0) On ...
4 years, 10 months ago (2016-02-03 22:50:44 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1663813003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1663813003/1
4 years, 10 months ago (2016-02-03 22:51:55 UTC) #11
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 10 months ago (2016-02-03 22:57:21 UTC) #13
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/4445f6179019a0a62cd4a7854723dba7316c5ac0 Cr-Commit-Position: refs/heads/master@{#373375}
4 years, 10 months ago (2016-02-03 22:58:49 UTC) #15
Nico
4 years, 10 months ago (2016-02-03 23:49:15 UTC) #17
Message was sent while issue was closed.
nice!

Powered by Google App Engine
This is Rietveld 408576698