Roll src/third_party/WebKit 8b42d1d:744641d (svn 186770:186771)
[chromium-blink-merge.git] / extensions / common / BUILD.gn
blob54c712f4bf12990e45f9094959833915f5d12fb9
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/features.gni")
6 import("//mojo/public/tools/bindings/mojom.gni")
8 # GYP version: extensions/extensions.gyp:extensions_common_constants
9 source_set("common_constants") {
10   sources = [
11     "constants.cc",
12     "constants.h",
13   ]
15   if (is_win) {
16     cflags = [ "/wd4267" ]  # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
17   }
20 if (enable_extensions) {
21   mojom("mojo") {
22     sources = [
23       "mojo/keep_alive.mojom",
24       "mojo/stash.mojom",
25     ]
26   }
28   # GYP version: extensions/extensions.gyp:extensions_common
29   source_set("common") {
30     sources = [
31       "api/messaging/message.h",
32       "api/bluetooth/bluetooth_manifest_data.cc",
33       "api/bluetooth/bluetooth_manifest_data.h",
34       "api/bluetooth/bluetooth_manifest_handler.cc",
35       "api/bluetooth/bluetooth_manifest_handler.h",
36       "api/bluetooth/bluetooth_manifest_permission.cc",
37       "api/bluetooth/bluetooth_manifest_permission.h",
38       "api/sockets/sockets_manifest_data.cc",
39       "api/sockets/sockets_manifest_data.h",
40       "api/sockets/sockets_manifest_handler.cc",
41       "api/sockets/sockets_manifest_handler.h",
42       "api/sockets/sockets_manifest_permission.cc",
43       "api/sockets/sockets_manifest_permission.h",
44       "common_manifest_handlers.cc",
45       "common_manifest_handlers.h",
46       "csp_validator.cc",
47       "csp_validator.h",
48       "dom_action_types.h",
49       "draggable_region.cc",
50       "draggable_region.h",
51       "error_utils.cc",
52       "error_utils.h",
53       "event_filter.cc",
54       "event_filter.h",
55       "event_filtering_info.cc",
56       "event_filtering_info.h",
57       "event_matcher.cc",
58       "event_matcher.h",
59       "extension.cc",
60       "extension.h",
61       "extension_api.cc",
62       "extension_api.h",
63       "extension_icon_set.cc",
64       "extension_icon_set.h",
65       "extension_l10n_util.cc",
66       "extension_l10n_util.h",
67       "extension_message_generator.cc",
68       "extension_message_generator.h",
69       "extension_messages.cc",
70       "extension_messages.h",
71       "extension_paths.cc",
72       "extension_paths.h",
73       "extension_resource.cc",
74       "extension_resource.h",
75       "extension_set.cc",
76       "extension_set.h",
77       "extension_urls.cc",
78       "extension_urls.h",
79       "extensions_client.cc",
80       "extensions_client.h",
81       "feature_switch.cc",
82       "feature_switch.h",
83       "features/api_feature.cc",
84       "features/api_feature.h",
85       "features/base_feature_provider.cc",
86       "features/base_feature_provider.h",
87       "features/complex_feature.cc",
88       "features/complex_feature.h",
89       "features/feature.cc",
90       "features/feature.h",
91       "features/feature_provider.cc",
92       "features/feature_provider.h",
93       "features/json_feature_provider_source.cc",
94       "features/json_feature_provider_source.h",
95       "features/manifest_feature.cc",
96       "features/manifest_feature.h",
97       "features/permission_feature.cc",
98       "features/permission_feature.h",
99       "features/simple_feature.cc",
100       "features/simple_feature.h",
101       "features/simple_feature_filter.cc",
102       "features/simple_feature_filter.h",
103       "file_util.cc",
104       "file_util.h",
105       "guest_view/guest_view_constants.cc",
106       "guest_view/guest_view_constants.h",
107       "install_warning.cc",
108       "install_warning.h",
109       "manifest.cc",
110       "manifest.h",
111       "manifest_constants.cc",
112       "manifest_constants.h",
113       "manifest_handler.cc",
114       "manifest_handler.h",
115       "manifest_handler_helpers.cc",
116       "manifest_handler_helpers.h",
117       "manifest_handlers/background_info.cc",
118       "manifest_handlers/background_info.h",
119       "manifest_handlers/content_capabilities_handler.cc",
120       "manifest_handlers/content_capabilities_handler.h",
121       "manifest_handlers/csp_info.cc",
122       "manifest_handlers/csp_info.h",
123       "manifest_handlers/default_locale_handler.cc",
124       "manifest_handlers/default_locale_handler.h",
125       "manifest_handlers/externally_connectable.cc",
126       "manifest_handlers/externally_connectable.h",
127       "manifest_handlers/file_handler_info.cc",
128       "manifest_handlers/file_handler_info.h",
129       "manifest_handlers/icons_handler.cc",
130       "manifest_handlers/icons_handler.h",
131       "manifest_handlers/incognito_info.cc",
132       "manifest_handlers/incognito_info.h",
133       "manifest_handlers/kiosk_mode_info.cc",
134       "manifest_handlers/kiosk_mode_info.h",
135       "manifest_handlers/launcher_page_info.cc",
136       "manifest_handlers/launcher_page_info.h",
137       "manifest_handlers/oauth2_manifest_handler.cc",
138       "manifest_handlers/oauth2_manifest_handler.h",
139       "manifest_handlers/offline_enabled_info.cc",
140       "manifest_handlers/offline_enabled_info.h",
141       "manifest_handlers/options_page_info.cc",
142       "manifest_handlers/options_page_info.h",
143       "manifest_handlers/permissions_parser.cc",
144       "manifest_handlers/permissions_parser.h",
145       "manifest_handlers/requirements_info.cc",
146       "manifest_handlers/requirements_info.h",
147       "manifest_handlers/sandboxed_page_info.cc",
148       "manifest_handlers/sandboxed_page_info.h",
149       "manifest_handlers/shared_module_info.cc",
150       "manifest_handlers/shared_module_info.h",
151       "manifest_handlers/web_accessible_resources_info.cc",
152       "manifest_handlers/web_accessible_resources_info.h",
153       "manifest_handlers/webview_info.cc",
154       "manifest_handlers/webview_info.h",
155       "manifest_url_handlers.cc",
156       "manifest_url_handlers.h",
157       "message_bundle.cc",
158       "message_bundle.h",
159       "one_shot_event.cc",
160       "one_shot_event.h",
161       "permissions/api_permission.cc",
162       "permissions/api_permission.h",
163       "permissions/api_permission_set.cc",
164       "permissions/api_permission_set.h",
165       "permissions/base_set_operators.h",
166       "permissions/extensions_api_permissions.cc",
167       "permissions/extensions_api_permissions.h",
168       "permissions/manifest_permission.cc",
169       "permissions/manifest_permission.h",
170       "permissions/manifest_permission_set.cc",
171       "permissions/manifest_permission_set.h",
172       "permissions/media_galleries_permission.cc",
173       "permissions/media_galleries_permission.h",
174       "permissions/media_galleries_permission_data.cc",
175       "permissions/media_galleries_permission_data.h",
176       "permissions/permission_message.cc",
177       "permissions/permission_message.h",
178       "permissions/permission_message_provider.cc",
179       "permissions/permission_message_provider.h",
180       "permissions/permission_message_util.cc",
181       "permissions/permission_message_util.h",
182       "permissions/permission_set.cc",
183       "permissions/permission_set.h",
184       "permissions/permissions_data.cc",
185       "permissions/permissions_data.h",
186       "permissions/permissions_info.cc",
187       "permissions/permissions_info.h",
188       "permissions/permissions_provider.h",
189       "permissions/set_disjunction_permission.h",
190       "permissions/settings_override_permission.cc",
191       "permissions/settings_override_permission.h",
192       "permissions/socket_permission.cc",
193       "permissions/socket_permission.h",
194       "permissions/socket_permission_data.cc",
195       "permissions/socket_permission_data.h",
196       "permissions/socket_permission_entry.cc",
197       "permissions/socket_permission_entry.h",
198       "permissions/usb_device_permission.cc",
199       "permissions/usb_device_permission.h",
200       "permissions/usb_device_permission_data.cc",
201       "permissions/usb_device_permission_data.h",
202       "stack_frame.cc",
203       "stack_frame.h",
204       "switches.cc",
205       "switches.h",
206       "update_manifest.cc",
207       "update_manifest.h",
208       "url_pattern.cc",
209       "url_pattern.h",
210       "url_pattern_set.cc",
211       "url_pattern_set.h",
212       "user_script.cc",
213       "user_script.h",
214       "value_counter.cc",
215       "value_counter.h",
216       "view_type.cc",
217       "view_type.h",
218     ]
220     deps = [
221       ":common_constants",
222       ":mojo",
224       # TODO(benwells): figure out what to do with the api target and
225       # api resources compiled into the chrome resource bundle.
226       # http://crbug.com/162530
227       "//chrome:resources",
228       "//components/crx_file",
229       "//components/url_matcher",
230       "//content/public/common",
231       "//crypto",
232       "//device/bluetooth",
233       "//device/usb",
234       "//extensions/common/api",
235       "//extensions/strings",
236       "//extensions:extensions_resources",
237       "//ipc",
238       "//net",
239       "//third_party/icu",
240       "//third_party/libxml",
241       "//third_party/re2",
242       "//ui/base",
243       "//ui/gfx/geometry",
244       "//ui/gfx/ipc",
245       "//url",
246     ]
248     if (enable_nacl) {
249       sources += [
250         "manifest_handlers/nacl_modules_handler.cc",
251         "manifest_handlers/nacl_modules_handler.h",
252       ]
253     }
255     if (is_win) {
256       cflags = [ "/wd4267" ]  # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
257     }
258   }
259 }  # enable_extensions