[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 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 |
| 3 | # found in the LICENSE file. |
| 4 | |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 5 | import("//build/config/features.gni") |
| 6 | import("//build/config/ui.gni") |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 7 | import("//chrome/common/features.gni") |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 8 | |
thestig | a52fbd2 | 2014-10-31 09:01:49 | [diff] [blame] | 9 | assert(enable_extensions) |
| 10 | |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 11 | gypi_values = |
| 12 | exec_script("//build/gypi_to_gn.py", |
| 13 | [ rebase_path("../../chrome_browser_extensions.gypi") ], |
| 14 | "scope", |
| 15 | [ "../../chrome_browser_extensions.gypi" ]) |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 16 | |
| 17 | # GYP version: chrome/chrome_browser_extensions.gypi:browser_extensions |
brettw | 09ea872 | 2016-06-30 01:35:56 | [diff] [blame] | 18 | static_library("extensions") { |
[email protected] | d5a74be | 2014-08-08 01:01:27 | [diff] [blame] | 19 | sources = [] |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 20 | sources += rebase_path(gypi_values.chrome_browser_extensions_enabled_sources, |
| 21 | ".", |
| 22 | "//chrome") |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 23 | |
rsesek | 99679aa | 2016-06-28 21:24:17 | [diff] [blame] | 24 | configs += [ |
| 25 | "//build/config:precompiled_headers", |
| 26 | "//build/config/compiler:wexit_time_destructors", |
| 27 | ] |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 28 | defines = [] |
| 29 | |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 30 | # Since browser and browser_extensions actually depend on each other, |
| 31 | # we must omit the dependency from browser_extensions to browser. |
| 32 | # However, this means browser_extensions and browser should more or less |
| 33 | # have the same dependencies. Once browser_extensions is untangled from |
| 34 | # browser, then we can clean up these dependencies. |
Brett Wilson | e5389527 | 2014-09-23 23:41:46 | [diff] [blame] | 35 | public_deps = [ |
| 36 | "//chrome/common/extensions/api", |
| 37 | "//content/public/browser", |
| 38 | ] |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 39 | deps = [ |
| 40 | "//chrome:extra_resources", |
| 41 | "//chrome:resources", |
| 42 | "//chrome:strings", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 43 | "//chrome/app:command_ids", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 44 | "//chrome/app/resources:platform_locale_settings", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 45 | "//chrome/app/theme:theme_resources", |
[email protected] | 55699f39 | 2014-08-20 22:16:30 | [diff] [blame] | 46 | "//chrome/browser/devtools", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 47 | "//chrome/common", |
yoz | 774dcda2d | 2014-08-27 03:32:58 | [diff] [blame] | 48 | "//chrome/common/extensions/api:api_registration", |
rdevlin.cronin | 5c684983 | 2016-07-25 18:04:45 | [diff] [blame] | 49 | "//chrome/common/extensions/api:extensions_features", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 50 | "//chrome/common/safe_browsing:proto", |
brettw | e26e6d0 | 2015-12-29 06:51:47 | [diff] [blame] | 51 | "//chrome/installer/util:with_no_strings", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 52 | "//components/autofill/content/browser", |
| 53 | "//components/browser_sync/browser", |
| 54 | "//components/bubble", |
| 55 | "//components/content_settings/core/browser", |
| 56 | "//components/crx_file", |
moshayedi | 4114e08 | 2015-11-23 19:23:53 | [diff] [blame] | 57 | "//components/data_reduction_proxy/proto:data_reduction_proxy_proto", |
tfarina | c439a45 | 2015-05-29 00:35:36 | [diff] [blame] | 58 | "//components/dom_distiller/core", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 59 | "//components/favicon/content", |
| 60 | "//components/gcm_driver", |
| 61 | "//components/infobars/core", |
| 62 | "//components/keyed_service/content", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 63 | "//components/onc", |
dgozman | e5a3e25 | 2016-03-22 21:45:08 | [diff] [blame] | 64 | "//components/policy", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 65 | "//components/pref_registry", |
isherman | 25cab40a | 2014-09-18 03:51:51 | [diff] [blame] | 66 | "//components/proximity_auth", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 67 | "//components/proxy_config", |
sdefresne | 1802d139 | 2016-02-03 09:53:08 | [diff] [blame] | 68 | "//components/resources", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 69 | "//components/safe_json", |
| 70 | "//components/search_engines", |
| 71 | "//components/sessions", |
| 72 | "//components/signin/core/browser", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 73 | "//components/strings", |
Max Bogue | fef332d | 2016-07-28 22:09:09 | [diff] [blame] | 74 | "//components/sync", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 75 | "//components/syncable_prefs", |
sorin | 39eab2f | 2015-01-06 01:09:08 | [diff] [blame] | 76 | "//components/update_client", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 77 | "//components/url_matcher", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 78 | "//components/web_modal", |
[email protected] | a9ca8d5 | 2014-08-22 10:21:08 | [diff] [blame] | 79 | "//content/app/resources", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 80 | "//content/public/common", |
| 81 | "//crypto", |
[email protected] | 55699f39 | 2014-08-20 22:16:30 | [diff] [blame] | 82 | "//device/bluetooth", |
| 83 | "//device/hid", |
agrieve | d7a71c88 | 2015-11-20 19:53:28 | [diff] [blame] | 84 | "//extensions:extensions_resources", |
[email protected] | 55699f39 | 2014-08-20 22:16:30 | [diff] [blame] | 85 | "//extensions/browser", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 86 | "//extensions/common/api", |
yoz | 774dcda2d | 2014-08-27 03:32:58 | [diff] [blame] | 87 | "//extensions/common/api:api_registration", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 88 | "//extensions/strings", |
| 89 | "//net", |
| 90 | "//skia", |
agrieve | d7a71c88 | 2015-11-20 19:53:28 | [diff] [blame] | 91 | "//storage/browser", |
pilgrim | f55d19fc | 2014-09-04 00:05:24 | [diff] [blame] | 92 | "//storage/common", |
erg | a3c614c9 | 2015-04-03 17:47:51 | [diff] [blame] | 93 | "//third_party/WebKit/public:image_resources", |
[email protected] | 4eebe74d | 2014-08-13 02:54:46 | [diff] [blame] | 94 | "//third_party/WebKit/public:resources", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 95 | "//third_party/cacheinvalidation", |
| 96 | "//third_party/icu", |
| 97 | "//third_party/leveldatabase", |
khorimoto | c067a1dc | 2015-05-06 02:38:57 | [diff] [blame] | 98 | "//third_party/libaddressinput:util", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 99 | "//third_party/re2", |
Brett Wilson | 83fd424 | 2014-09-02 19:45:33 | [diff] [blame] | 100 | "//third_party/webrtc/modules/desktop_capture", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 101 | "//ui/accessibility:ax_gen", |
| 102 | "//ui/base", |
spang | 1c36fac | 2015-02-05 19:55:12 | [diff] [blame] | 103 | "//ui/base/ime", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 104 | "//ui/gfx", |
| 105 | "//ui/gfx/geometry", |
brettw | 98a8701 | 2016-07-26 22:15:45 | [diff] [blame] | 106 | "//ui/native_theme", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 107 | "//ui/resources", |
| 108 | "//ui/strings", |
| 109 | "//url", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 110 | ] |
| 111 | |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 112 | if (is_chromeos) { |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 113 | sources += |
| 114 | rebase_path(gypi_values.chrome_browser_extensions_chromeos_sources, |
| 115 | ".", |
| 116 | "//chrome") |
jamescook | f1545b58 | 2014-12-16 18:16:33 | [diff] [blame] | 117 | sources -= [ "api/music_manager_private/device_id_linux.cc" ] |
mbjorge | a12e5a5 | 2016-05-31 22:15:17 | [diff] [blame] | 118 | if (use_dbus) { |
| 119 | configs += [ "//build/config/linux/dbus" ] |
| 120 | } |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 121 | deps += [ |
tbarzic | 56ebc03 | 2015-05-01 18:44:34 | [diff] [blame] | 122 | "//components/chrome_apps", |
kelvinp | 98a75069 | 2014-11-12 21:31:43 | [diff] [blame] | 123 | "//remoting/host/it2me:common", |
agrieve | d7a71c88 | 2015-11-20 19:53:28 | [diff] [blame] | 124 | "//third_party/protobuf:protobuf_lite", |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 125 | "//ui/file_manager:resources", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 126 | ] |
| 127 | } else { |
| 128 | sources += [ |
| 129 | "default_apps.cc", |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 130 | "default_apps.h'", |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 131 | ] |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 132 | sources += |
| 133 | rebase_path(gypi_values.chrome_browser_extensions_non_chromeos_sources, |
| 134 | ".", |
| 135 | "//chrome") |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 136 | } |
| 137 | |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 138 | # chromeos uses its own global_shortcut_listener, _x11 is not necessary. |
| 139 | if (is_chromeos || !use_x11) { |
| 140 | sources -= [ |
| 141 | "global_shortcut_listener_x11.cc", |
| 142 | "global_shortcut_listener_x11.h", |
paulmeyer | 27b328b | 2015-06-17 21:26:12 | [diff] [blame] | 143 | ] |
| 144 | } |
| 145 | |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 146 | if (is_chromeos && use_ozone) { |
| 147 | sources -= [ "global_shortcut_listener_chromeos.cc" ] |
| 148 | } |
| 149 | if (!use_ozone) { |
| 150 | sources -= [ "global_shortcut_listener_ozone.cc" ] |
paulmeyer | 27b328b | 2015-06-17 21:26:12 | [diff] [blame] | 151 | } |
| 152 | |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 153 | if (is_linux) { |
mbjorge | a12e5a5 | 2016-05-31 22:15:17 | [diff] [blame] | 154 | deps += [ "//build/linux:fontconfig" ] |
| 155 | |
| 156 | if (use_dbus) { |
| 157 | deps += [ "//dbus" ] |
| 158 | } |
| 159 | |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 160 | if (use_x11) { |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 161 | configs += [ "//build/config/linux:x11" ] |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 162 | deps += [ |
Brett Wilson | 4263a74 | 2014-09-10 00:02:24 | [diff] [blame] | 163 | "//ui/events:events_base", |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 164 | "//ui/events/platform", |
| 165 | "//ui/events/platform/x11", |
| 166 | ] |
| 167 | } |
azurewei | aa01dab3 | 2016-01-12 03:27:59 | [diff] [blame] | 168 | if (!is_chromeos) { |
| 169 | sources += rebase_path( |
| 170 | gypi_values.chrome_browser_extensions_input_ime_linux_win_sources, |
| 171 | ".", |
| 172 | "//chrome") |
| 173 | } |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 174 | } |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 175 | |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 176 | if (is_win || is_mac) { |
| 177 | deps += [ "//components/wifi" ] |
| 178 | sources += rebase_path( |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 179 | gypi_values.chrome_browser_extensions_networking_private_sources_winmac, |
| 180 | ".", |
| 181 | "//chrome") |
zentaro | c0f330b | 2014-10-09 19:44:37 | [diff] [blame] | 182 | } |
| 183 | |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 184 | if (is_win) { |
| 185 | deps += [ |
| 186 | "//third_party/iaccessible2", |
| 187 | "//third_party/isimpledom", |
| 188 | ] |
azurewei | aa01dab3 | 2016-01-12 03:27:59 | [diff] [blame] | 189 | sources += rebase_path( |
| 190 | gypi_values.chrome_browser_extensions_input_ime_linux_win_sources, |
| 191 | ".", |
| 192 | "//chrome") |
brettw | 22488ad | 2015-05-02 00:42:59 | [diff] [blame] | 193 | } else if (use_aura && !is_chromeos) { |
[email protected] | 723b76b | 2014-08-21 23:48:59 | [diff] [blame] | 194 | sources += [ |
| 195 | "display_info_provider_aura.cc", |
| 196 | "display_info_provider_aura.h", |
| 197 | ] |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 198 | } |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 199 | |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 200 | if (enable_app_list) { |
scottmg | a266f95 | 2014-12-03 20:47:10 | [diff] [blame] | 201 | sources += |
| 202 | rebase_path(gypi_values.chrome_browser_extensions_app_list_sources, |
| 203 | ".", |
| 204 | "//chrome") |
[email protected] | 94e7719 | 2014-08-12 03:00:02 | [diff] [blame] | 205 | } |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 206 | |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 207 | if (enable_hotwording) { |
| 208 | defines += [ "ENABLE_HOTWORDING" ] |
dpranke | acd282e | 2014-11-05 03:54:47 | [diff] [blame] | 209 | } |
thestig | 0e3086f | 2016-08-04 04:44:16 | [diff] [blame^] | 210 | |
| 211 | if (enable_service_discovery) { |
| 212 | sources += rebase_path( |
| 213 | gypi_values.chrome_browser_extensions_service_discovery_sources, |
| 214 | ".", |
| 215 | "//chrome") |
| 216 | } |
| 217 | |
| 218 | if (enable_task_manager) { |
| 219 | sources += rebase_path( |
| 220 | gypi_values.chrome_browser_extensions_task_manager_enabled_sources, |
| 221 | ".", |
| 222 | "//chrome") |
| 223 | } |
| 224 | |
| 225 | if (enable_webrtc) { |
| 226 | sources += [ "api/webrtc_logging_private/webrtc_logging_private_api.cc" ] |
| 227 | } else { |
| 228 | sources += |
| 229 | [ "api/webrtc_logging_private/webrtc_logging_private_api_stub.cc" ] |
| 230 | } |
| 231 | |
| 232 | if (toolkit_views) { |
| 233 | deps += [ "//ui/views" ] |
| 234 | } |
| 235 | |
| 236 | if (use_ash) { |
| 237 | sources += [ |
| 238 | "api/tabs/ash_panel_contents.cc", |
| 239 | "api/tabs/ash_panel_contents.h", |
| 240 | ] |
| 241 | deps += [ "//ash" ] |
| 242 | } |
| 243 | |
| 244 | if (use_aura) { |
| 245 | deps += [ |
| 246 | "//ui/keyboard", |
| 247 | "//ui/keyboard:keyboard_with_content", |
| 248 | "//ui/keyboard:resources", |
| 249 | ] |
| 250 | } |
| 251 | |
| 252 | if (use_brlapi) { |
| 253 | deps += [ "//build/linux/libbrlapi" ] |
| 254 | sources += rebase_path(gypi_values.chrome_browser_extensions_brlapi_sources, |
| 255 | ".", |
| 256 | "//chrome") |
| 257 | } else { |
| 258 | sources += [ "api/braille_display_private/braille_controller_stub.cc" ] |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 259 | } |
[email protected] | fb2799e | 2014-07-15 23:50:29 | [diff] [blame] | 260 | } |