1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
include_rules = [
# History is being made into a Browser Component (http://crbug.com/370850), so
# we have these basic rules followed by temporary exceptions. Please don't
# add to the list of exceptions!
#
# Please send reviews to sdefresne@chromium.org when adding dependencies to
# this list.
"-chrome/browser",
"-components",
"+chrome/browser/history",
"-chrome/browser/history/android",
"+components/history",
"+components/favicon_base",
"+components/keyed_service/core",
"+components/signin/core/browser",
# TODO(sdefresne): Bring this list to zero.
#
# Do not add to the list of temporarily-allowed dependencies below,
# and please do not introduce more #includes of these files.
"!chrome/browser/chrome_notification_types.h",
"!chrome/browser/prerender/prerender_contents.h",
"!chrome/browser/prerender/prerender_manager.h",
"!chrome/browser/prerender/prerender_manager_factory.h",
"!chrome/browser/profiles/incognito_helpers.h",
"!chrome/browser/profiles/profile.h",
"!chrome/browser/profiles/profile_manager.h",
"!chrome/browser/ui/browser.h",
"!chrome/browser/ui/browser_finder.h",
"!components/dom_distiller/core/url_constants.h",
]
specific_include_rules = {
# Browser tests, by definition, need access to the browser objects.
'.*_(api|browser|)test\.cc': [
"+chrome/browser",
],
# chrome_.* and .*_factory won't be componentized as they belong to the
# embedder, so they can depend on other feature in chrome/. Same thing
# for android specific code.
'(chrome_.*|.*_factory)\.(cc|h)': [
"+chrome/browser/bookmarks/bookmark_model_factory.h",
"+chrome/browser/bookmarks/chrome_bookmark_client.h",
"+chrome/browser/bookmarks/chrome_bookmark_client_factory.h",
"+chrome/browser/content_settings/cookie_settings.h",
"+chrome/browser/history/android/android_provider_backend.h",
"+chrome/browser/signin/profile_oauth2_token_service_factory.h",
"+chrome/browser/signin/signin_manager_factory.h",
"+chrome/browser/sync/profile_sync_service.h",
"+chrome/browser/sync/profile_sync_service_factory.h",
"+chrome/browser/ui/profile_error_dialog.h",
"+components/bookmarks/browser",
"+components/keyed_service/content",
"+components/pref_registry",
],
# Those files will move to //components/history/content/browser and thus
# can depend on //content even indirectly.
'content_.*\.(cc|h)': [
"+components/visitedlink/browser",
],
# TODO(sdefresne): Bring this list to zero.
#
# Do not add to the list of temporarily-allowed dependencies below,
# and please do not introduce more #includes of these files.
'.*_[a-z]*test\.cc': [
"!chrome/browser/bookmarks/bookmark_model_factory.h",
"!chrome/browser/signin/profile_oauth2_token_service_factory.h",
"!chrome/browser/signin/signin_manager_factory.h",
"!chrome/browser/sync/profile_sync_service.h",
"!chrome/browser/sync/profile_sync_service_factory.h",
"!chrome/browser/sync/profile_sync_service_mock.h",
"!components/bookmarks/test/bookmark_test_helpers.h",
]
}
|