Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / extensions / browser / BUILD.gn
blobd9c62bbd2e2c6726c0c585425ec07f73bfb6d67b
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.
5 import("//build/config/crypto.gni")
6 import("//build/config/features.gni")
7 import("//extensions/extensions.gni")
9 # GYP version: extensions/extensions.gyp:extensions_browser
10 source_set("browser") {
11   sources = []
13   deps = [
14     "//components/guest_view/browser",
15     "//components/keyed_service/content",
16     "//components/keyed_service/core",
17     "//components/pref_registry",
18     "//components/sessions",
19     "//components/ui/zoom:ui_zoom",
20     "//components/web_cache/browser",
21     "//components/web_modal",
22     "//content/public/browser",
23     "//crypto:platform",
24     "//extensions/common",
25     "//extensions/common/api",
26     "//extensions/common/api:api_registration",
27     "//extensions/strings",
28     "//google_apis",
29     "//skia",
30     "//third_party/leveldatabase",
31     "//third_party/re2",
32   ]
34   # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
35   configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
37   if (enable_extensions) {
38     # Includes all API implementations and the ExtensionsApiClient
39     # interface. Moving an API from src/chrome to src/extensions implies
40     # it can be cleanly disabled with enable_extensions=false.
41     # TODO: Eventually the entire extensions module should not be built
42     # when enable_extensions=false.
43     sources = rebase_path(extensions_gypi_values.extensions_browser_sources,
44                           ".",
45                           "//extensions")
47     deps += [
48       "//components/browsing_data",
49       "//components/onc",
50       "//components/storage_monitor",
51       "//components/update_client",
52       "//components/variations",
53       "//crypto:platform",
54       "//device/bluetooth",
55       "//device/core",
56       "//device/hid",
57       "//device/serial",
58       "//device/usb",
59       "//extensions/common/api/cast_channel:cast_channel_proto",
60     ]
62     if (is_chromeos) {
63       deps += [ "//chromeos" ]
64     }
66     if (is_chromeos) {
67       chromeos_sources = rebase_path(
68               extensions_gypi_values.extensions_browser_sources_chromeos,
69               ".",
70               "//extensions")
71       sources += chromeos_sources
72     } else {
73       nonchromeos_sources = rebase_path(
74               extensions_gypi_values.extensions_browser_sources_nonchromeos,
75               ".",
76               "//extensions")
77       sources += nonchromeos_sources
79       if (is_linux) {
80         configs += [ "//build/config/linux:dbus" ]
81         deps += [ "//dbus" ]
82         linux_sources = rebase_path(
83                 extensions_gypi_values.extensions_browser_sources_linux_nonchromeos,
84                 ".",
85                 "//extensions")
86         sources += linux_sources
87       } else {
88         if (is_win || is_mac) {
89           deps += [ "//components/wifi" ]
91           win_or_mac_sources = rebase_path(
92                   extensions_gypi_values.extensions_browser_sources_win_or_mac,
93                   ".",
94                   "//extensions")
95           sources += win_or_mac_sources
96         }
97       }
98     }
99   }