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 import("//build/config/chrome_build.gni") | 5 import("//build/config/chrome_build.gni") |
6 import("//build/config/features.gni") | 6 import("//build/config/features.gni") |
7 import("//build/config/locales.gni") | 7 import("//build/config/locales.gni") |
8 import("//build/config/sanitizers/sanitizers.gni") | |
8 import("//build/config/ui.gni") | 9 import("//build/config/ui.gni") |
9 import("//build/config/win/manifest.gni") | 10 import("//build/config/win/manifest.gni") |
10 import("//chrome/chrome_repack_locales.gni") | 11 import("//chrome/chrome_repack_locales.gni") |
11 import("//chrome/version.gni") | 12 import("//chrome/version.gni") |
12 | 13 |
13 if (is_android) { | 14 if (is_android) { |
14 import("//build/config/android/rules.gni") | 15 import("//build/config/android/rules.gni") |
15 } | 16 } |
16 | 17 |
18 if (is_win) { | |
19 action("reorder_imports") { | |
20 script = "//build/win/reorder-imports.py" | |
21 | |
22 # See comment in chrome_dll.gypi in the hardlink_to_output | |
23 # target for why this cannot be 'initial' like the DLL. | |
24 inputs = [ | |
25 "$root_out_dir/initialexe/chrome.exe", | |
26 ] | |
27 outputs = [ | |
28 "$root_out_dir/chrome.exe", | |
29 "$root_out_dir/chrome.exe.pdb", | |
30 ] | |
31 args = [ | |
32 "-i", | |
33 rebase_path("$root_out_dir/initialexe", root_build_dir), | |
34 "-o", | |
35 rebase_path("$root_out_dir", root_build_dir), | |
36 "-a", | |
37 target_cpu, | |
38 ] | |
39 deps = [ | |
40 ":chrome_initial", | |
41 ] | |
42 } | |
43 } | |
44 | |
17 if (!is_android) { | 45 if (!is_android) { |
18 # TODO(GYP) bug 512599: for Windows need to the the reorder-imports step | 46 group("chrome") { |
19 # which probably means adding another target and renaming this to | 47 deps = [ |
20 # chrome_initial like in GYP. | 48 ":chrome_initial", |
21 executable("chrome") { | 49 ] |
50 if (is_win) { | |
51 deps += [ ":reorder_imports" ] | |
52 } | |
53 } | |
54 | |
55 executable("chrome_initial") { | |
56 if (is_win) { | |
57 output_name = "initialexe/chrome" | |
58 } else { | |
59 output_name = "chrome" | |
60 } | |
61 | |
22 # Because the sources list varies so significantly per-platform, generally | 62 # Because the sources list varies so significantly per-platform, generally |
23 # each platform lists its own files rather than relying on filtering or | 63 # each platform lists its own files rather than relying on filtering or |
24 # removing unused files. | 64 # removing unused files. |
25 sources = [ | 65 sources = [ |
26 "app/chrome_exe_resource.h", | 66 "app/chrome_exe_resource.h", |
27 ] | 67 ] |
28 defines = [] | 68 defines = [] |
29 public_deps = [] | 69 public_deps = [] |
30 deps = [ | 70 deps = [ |
31 "//build/config/sanitizers:deps", | 71 "//build/config/sanitizers:deps", |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
112 "//crypto", | 152 "//crypto", |
113 "//sandbox", | 153 "//sandbox", |
114 "//ui/gfx", | 154 "//ui/gfx", |
115 ] | 155 ] |
116 data_deps = [ "//chrome/app/version_assembly:version_assembly_manifest" ] | 156 data_deps = [ "//chrome/app/version_assembly:version_assembly_manifest" ] |
117 | 157 |
118 libs = [ | 158 libs = [ |
119 "wintrust.lib", | 159 "wintrust.lib", |
120 "crypt32.lib", | 160 "crypt32.lib", |
121 ] | 161 ] |
122 configs -= [ "//build/config/win:console" ] | 162 if (!is_asan) { |
brettw
2015/09/24 18:19:56
Can you add a comment that console output is impor
Nico
2015/09/24 18:28:44
Done.
| |
123 configs += [ "//build/config/win:windowed" ] | 163 configs -= [ "//build/config/win:console" ] |
164 configs += [ "//build/config/win:windowed" ] | |
165 } | |
124 } else if (use_aura) { | 166 } else if (use_aura) { |
125 # Non-Windows aura entrypoint. | 167 # Non-Windows aura entrypoint. |
126 sources += [ "app/chrome_exe_main_aura.cc" ] | 168 sources += [ "app/chrome_exe_main_aura.cc" ] |
127 } | 169 } |
128 | 170 |
129 if (is_linux) { | 171 if (is_linux) { |
130 sources += [ | 172 sources += [ |
131 "app/chrome_dll_resource.h", | 173 "app/chrome_dll_resource.h", |
132 "app/chrome_main.cc", | 174 "app/chrome_main.cc", |
133 "app/chrome_main_delegate.cc", | 175 "app/chrome_main_delegate.cc", |
134 "app/chrome_main_delegate.h", | 176 "app/chrome_main_delegate.h", |
135 ] | 177 ] |
136 | 178 |
137 deps += [ | 179 deps += [ |
138 # On Linux, link the dependencies (libraries) that make up actual | 180 # On Linux, link the dependencies (libraries) that make up actual |
139 # Chromium functionality directly into the executable. | 181 # Chromium functionality directly into the executable. |
140 ":browser_dependencies", | 182 ":browser_dependencies", |
141 ":child_dependencies", | 183 ":child_dependencies", |
142 ":manpage", | 184 ":manpage", |
143 "//base/allocator", | 185 "//base/allocator", |
144 | 186 |
145 # Needed to use the master_preferences functions | 187 # Needed to use the master_preferences functions |
146 "//chrome/installer/util", | 188 "//chrome/installer/util", |
147 "//content/public/app:both", | 189 "//content/public/app:both", |
148 ] | 190 ] |
191 if (enable_plugins) { | |
192 deps += [ "//pdf" ] | |
193 } | |
194 | |
149 public_deps = [ | 195 public_deps = [ |
150 ":xdg_mime", # Needs to be public for installer to consume files. | 196 ":xdg_mime", # Needs to be public for installer to consume files. |
151 ] | 197 ] |
152 | 198 |
153 # Needed for chrome_main.cc initialization of libraries. | 199 # Needed for chrome_main.cc initialization of libraries. |
154 configs += [ "//build/config/linux:pangocairo" ] | 200 configs += [ "//build/config/linux:pangocairo" ] |
155 | 201 |
156 # GYP has this in a 'profiling==0 and linux_disable_pie==0' condition. | 202 # GYP has this in a 'profiling==0 and linux_disable_pie==0' condition. |
157 # but GN doesn't have either of these flags. | 203 # but GN doesn't have either of these flags. |
158 ldflags = [ "-pie" ] | 204 ldflags = [ "-pie" ] |
(...skipping 19 matching lines...) Expand all Loading... | |
178 "//components/startup_metric_utils", | 224 "//components/startup_metric_utils", |
179 | 225 |
180 # Precompiled plugins that need to get copied to the output directory. | 226 # Precompiled plugins that need to get copied to the output directory. |
181 # On Mac, internal plugins go inside the framework, so these | 227 # On Mac, internal plugins go inside the framework, so these |
182 # dependencies are on chrome.dll. | 228 # dependencies are on chrome.dll. |
183 "//third_party/adobe/flash:flapper_binaries", | 229 "//third_party/adobe/flash:flapper_binaries", |
184 "//third_party/widevine/cdm:widevinecdmadapter", | 230 "//third_party/widevine/cdm:widevinecdmadapter", |
185 ] | 231 ] |
186 } | 232 } |
187 | 233 |
188 if (is_linux && enable_plugins) { | |
189 deps += [ "//pdf" ] | |
190 } | |
191 | |
192 if (is_multi_dll_chrome) { | 234 if (is_multi_dll_chrome) { |
193 defines += [ "CHROME_MULTIPLE_DLL" ] | 235 defines += [ "CHROME_MULTIPLE_DLL" ] |
194 data_deps += [ ":chrome_child" ] | 236 data_deps += [ ":chrome_child" ] |
195 } | 237 } |
196 } | 238 } |
197 } # !is_android | 239 } # !is_android |
198 | 240 |
199 shared_library("main_dll") { | 241 shared_library("main_dll") { |
200 configs += [ "//build/config/compiler:wexit_time_destructors" ] | 242 configs += [ "//build/config/compiler:wexit_time_destructors" ] |
201 defines = [] | 243 defines = [] |
(...skipping 766 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
968 "//chrome/app/theme/$branding_path_component/product_logo_48.png", | 1010 "//chrome/app/theme/$branding_path_component/product_logo_48.png", |
969 "//chrome/tools/build/linux/chrome-wrapper", | 1011 "//chrome/tools/build/linux/chrome-wrapper", |
970 "//third_party/xdg-utils/scripts/xdg-mime", | 1012 "//third_party/xdg-utils/scripts/xdg-mime", |
971 "//third_party/xdg-utils/scripts/xdg-settings", | 1013 "//third_party/xdg-utils/scripts/xdg-settings", |
972 ] | 1014 ] |
973 outputs = [ | 1015 outputs = [ |
974 "$root_out_dir/{{source_file_part}}", | 1016 "$root_out_dir/{{source_file_part}}", |
975 ] | 1017 ] |
976 } | 1018 } |
977 } | 1019 } |
OLD | NEW |