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

Side by Side Diff: content/app/BUILD.gn

Issue 554393009: Make chrome GN build work in component mode. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: undo gyp changes Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/BUILD.gn ('k') | content/browser/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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 }
OLDNEW
« no previous file with comments | « content/BUILD.gn ('k') | content/browser/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698