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