OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 content_app_sources = [ | 5 content_app_sources = [ |
6 "android/app_jni_registrar.cc", | 6 "android/app_jni_registrar.cc", |
7 "android/app_jni_registrar.h", | 7 "android/app_jni_registrar.h", |
8 "android/child_process_service.cc", | 8 "android/child_process_service.cc", |
9 "android/child_process_service.h", | 9 "android/child_process_service.h", |
10 "android/content_main.cc", | 10 "android/content_main.cc", |
11 "android/content_main.h", | 11 "android/content_main.h", |
12 "android/library_loader_hooks.cc", | 12 "android/library_loader_hooks.cc", |
13 "content_main.cc", | 13 "content_main.cc", |
14 "content_main_runner.cc", | 14 "content_main_runner.cc", |
15 "mojo/mojo_init.cc", | 15 "mojo/mojo_init.cc", |
16 "mojo/mojo_init.h", | 16 "mojo/mojo_init.h", |
17 "startup_helper_win.cc", | 17 "startup_helper_win.cc", |
18 ] | 18 ] |
19 | 19 |
20 content_app_deps = [ | 20 content_app_deps = [ |
21 "//base", | 21 "//base", |
22 "//base:i18n", | 22 "//base:i18n", |
23 # This is needed by app/content_main_runner.cc | 23 # This is needed by app/content_main_runner.cc |
24 # TODO(brettw) this shouldn't be here, only final executables should be | 24 # TODO(brettw) this shouldn't be here, only final executables should be |
25 # picking the allocator. | 25 # picking the allocator. |
26 "//base/allocator", | 26 "//base/allocator", |
27 "//content:export", | 27 "//content:export", |
28 "//content/public/common", | 28 "//content/public/common:common_sources", |
29 "//crypto", | 29 "//crypto", |
30 "//ui/base", | 30 "//ui/base", |
31 "//ui/gfx", | 31 "//ui/gfx", |
32 "//ui/gfx/geometry", | 32 "//ui/gfx/geometry", |
33 ] | 33 ] |
34 | 34 |
35 if (is_win) { | 35 if (is_win) { |
36 content_app_deps += [ "//sandbox" ] | 36 content_app_deps += [ "//sandbox" ] |
37 } else if (is_android) { | 37 } else if (is_android) { |
38 content_app_sources -= [ "content_main.cc" ] | 38 content_app_sources -= [ "content_main.cc" ] |
(...skipping 17 matching lines...) Expand all Loading... |
56 "//mojo/public/interfaces/application", | 56 "//mojo/public/interfaces/application", |
57 "//mojo/system", | 57 "//mojo/system", |
58 ] | 58 ] |
59 } | 59 } |
60 | 60 |
61 content_app_extra_configs = [ | 61 content_app_extra_configs = [ |
62 "//build/config/compiler:wexit_time_destructors", | 62 "//build/config/compiler:wexit_time_destructors", |
63 "//content:content_implementation", | 63 "//content:content_implementation", |
64 ] | 64 ] |
65 | 65 |
66 if (is_component_build) { | 66 # This includes the app sources for both the browser and child processes. |
67 source_set("app") { | 67 source_set("both") { |
68 sources = content_app_sources | 68 # Only the public target should depend on this. All other targets (even |
69 configs += content_app_extra_configs | 69 # internal content ones) should depend on the public one. |
70 deps = content_app_deps | 70 visibility = [ "//content/public/app:*" ] |
71 } | |
72 | 71 |
73 # In the component build, all of these app targets redirect to the content | 72 sources = content_app_sources |
74 # component. The content component in turn references the "app" target above. | 73 configs += content_app_extra_configs |
75 group("browser") { | 74 deps = content_app_deps |
76 deps = [ "//content" ] | 75 } |
77 } | |
78 group("child") { | |
79 deps = [ "//content" ] | |
80 } | |
81 group("both") { | |
82 deps = [ "//content" ] | |
83 } | |
84 } else { | |
85 # Non-component build. In this case, we have different versions of | |
86 # "content/app" for the browser and child process. | |
87 | 76 |
88 # TODO(GYP) enable chrome_multiple_dll support | 77 # TODO(GYP) enable chrome_multiple_dll support |
89 is_chrome_multiple_dll = false | 78 is_chrome_multiple_dll = false |
| 79 |
| 80 if (is_chrome_multiple_dll) { |
| 81 # It doesn't make sense to do the browser/child dll split in component mode. |
| 82 assert(!is_component_build) |
90 | 83 |
91 source_set("browser") { | 84 source_set("browser") { |
| 85 visibility = [ "//content/public/app:browser" ] |
| 86 |
92 sources = content_app_sources | 87 sources = content_app_sources |
93 configs += content_app_extra_configs | 88 configs += content_app_extra_configs |
94 deps = content_app_deps | 89 deps = content_app_deps |
95 | 90 |
96 if (is_chrome_multiple_dll) { | 91 defines += [ "CHROME_MULTIPLE_DLL_BROWSER" ] |
97 defines += [ "CHROME_MULTIPLE_DLL_BROWSER" ] | |
98 } | |
99 } | 92 } |
100 | 93 |
101 source_set("child") { | 94 source_set("child") { |
| 95 visibility = [ "//content/public/app:child" ] |
| 96 |
102 sources = content_app_sources | 97 sources = content_app_sources |
103 configs += content_app_extra_configs | 98 configs += content_app_extra_configs |
104 deps = content_app_deps | 99 deps = content_app_deps |
105 | 100 |
106 if (is_chrome_multiple_dll) { | 101 defines += [ "CHROME_MULTIPLE_DLL_CHILD" ] |
107 defines += [ "CHROME_MULTIPLE_DLL_CHILD" ] | |
108 } | |
109 } | |
110 | |
111 # Includes both browser and child process app sources. | |
112 source_set("both") { | |
113 sources = content_app_sources | |
114 configs += content_app_extra_configs | |
115 deps = content_app_deps | |
116 } | 102 } |
117 } | 103 } |
OLD | NEW |