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

Issue 201093002: Break cycles between views, content and webview. (Closed)

Created:
6 years, 9 months ago by tfarina
Modified:
6 years, 9 months ago
CC:
chromium-reviews, kalyank, sadrul, ben+ash_chromium.org
Visibility:
Public.

Description

Break cycles between views, content and webview. When running gyp_chromium with the following diff: diff --git a/build/gyp_chromium b/build/gyp_chromium index 63e8671..ca9b6a4 100755 --- a/build/gyp_chromium +++ b/build/gyp_chromium @@ -509,8 +509,6 @@ if __name__ == '__main__': # option. http://crbug.com/35878. # TODO(tc): Fix circular dependencies in ChromiumOS then add linux2 # list. - if sys.platform not in ('darwin',): - args.append('--no-circular-check') These cycles are found: gyp: Cycles in .gyp file dependency graph detected: Cycle: content/content_shell_and_tests.gyp -> ui/views/controls/webview/webview.gyp -> ui/views/views.gyp -> content/content_shell_and_tests.gyp Cycle: ui/views/controls/webview/webview.gyp -> ui/views/views.gyp -> content/content_shell_and_tests.gyp -> ui/views/controls/webview/webview.gyp Cycle: ui/views/views.gyp -> content/content_shell_and_tests.gyp -> ui/views/controls/webview/webview.gyp -> ui/views/views.gyp Cycle: ui/views/views.gyp -> content/content_shell_and_tests.gyp -> ui/views/views.gyp Cycle: ui/views/controls/webview/webview.gyp -> ui/views/views.gyp -> ui/views/controls/webview/webview.gyp Cycle: ui/views/views.gyp -> ui/views/controls/webview/webview.gyp -> ui/views/views.gyp Cycle: content/content_shell_and_tests.gyp -> ui/views/views.gyp -> content/content_shell_and_tests.gyp By moving '*examples*' targets from views.gyp to examples.gyp we break most of these cycles. Then it remains the cycle: Cycle: content/content_shell_and_tests.gyp -> ui/views/controls/webview/webview.gyp -> content/content_shell_and_tests.gyp To fix that we introduced a webview_tests.gyp to which we moved the include of content_shell_and_tests.gyp from webview.gyp, and thus breaking that cycle and fixing all the circlar dependencies found above. BUG=331669, 35878 TEST=run gyp_chromium with the above diff, gyp should not throw any cycles output. R=ben@chromium.org, harrym@chromium.org, tapted@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=258758

Patch Set 1 #

Patch Set 2 : #

Total comments: 5

Patch Set 3 : rm examples from ash_unittests #

Patch Set 4 : revert ash changes #

Unified diffs Side-by-side diffs Delta from patch set Stats (+273 lines, -252 lines) Patch
M ash/ash.gyp View 1 2 3 2 chunks +4 lines, -4 lines 0 comments Download
M build/all.gyp View 1 chunk +1 line, -1 line 0 comments Download
A ui/views/controls/webview/webview_tests.gyp View 1 1 chunk +38 lines, -0 lines 0 comments Download
A ui/views/examples/examples.gyp View 1 1 chunk +230 lines, -0 lines 0 comments Download
M ui/views/views.gyp View 2 chunks +0 lines, -247 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
tfarina
6 years, 9 months ago (2014-03-15 01:52:41 UTC) #1
tapted
https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp File ash/ash.gyp (right): https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp#newcode845 ash/ash.gyp:845: '../ui/views/examples/examples.gyp:views_examples_with_content_lib', Having ash_unittests depending on examples.gyp feels a bit ...
6 years, 9 months ago (2014-03-16 23:45:48 UTC) #2
tfarina
Harry, could you comment on the ash dependency on views' examples? https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp File ash/ash.gyp (right): ...
6 years, 9 months ago (2014-03-17 01:33:09 UTC) #3
Harry McCleave
On 2014/03/17 01:33:09, tfarina wrote: > Harry, could you comment on the ash dependency on ...
6 years, 9 months ago (2014-03-17 21:27:46 UTC) #4
Ben Goodger (Google)
https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp File ash/ash.gyp (right): https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp#newcode845 ash/ash.gyp:845: '../ui/views/examples/examples.gyp:views_examples_with_content_lib', Should work without it. Only ash_shell needs examples.
6 years, 9 months ago (2014-03-18 15:59:02 UTC) #5
tfarina
https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp File ash/ash.gyp (right): https://codereview.chromium.org/201093002/diff/60001/ash/ash.gyp#newcode845 ash/ash.gyp:845: '../ui/views/examples/examples.gyp:views_examples_with_content_lib', On 2014/03/18 15:59:03, Ben Goodger (Google) wrote: > ...
6 years, 9 months ago (2014-03-19 04:34:18 UTC) #6
tfarina
Harry, Ben, see below why ash_unittests needs (for now?) examples to compile. I think making ...
6 years, 9 months ago (2014-03-19 14:18:06 UTC) #7
Harry McCleave
On 2014/03/19 14:18:06, tfarina wrote: > Harry, Ben, see below why ash_unittests needs (for now?) ...
6 years, 9 months ago (2014-03-20 19:46:29 UTC) #8
Ben Goodger (Google)
On 2014/03/20 19:46:29, Harry McCleave wrote: > On 2014/03/19 14:18:06, tfarina wrote: > > Harry, ...
6 years, 9 months ago (2014-03-21 19:42:58 UTC) #9
tfarina
6 years, 9 months ago (2014-03-22 03:12:36 UTC) #10
Message was sent while issue was closed.
Committed patchset #4 manually as r258758 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698