Suppress sequence checks in SyncFileSystem on the shutdown phase
[chromium-blink-merge.git] / extensions / BUILD.gn
blobd556280c5f37a2a2d807573b5b1bb8c82495bade
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("//testing/test.gni")
6 import("//tools/grit/grit_rule.gni")
7 import("//tools/grit/repack.gni")
9 assert(enable_extensions)
11 # GYP version: extensions/extensions_resources.gyp:extensions_resources
12 group("extensions_resources") {
13   deps = [
14     ":extensions_browser_resources",
15     ":extensions_renderer_resources",
16     ":extensions_resources_grd",
17   ]
20 # GYP version: extensions/extensions_resources.gyp:extensions_resources
21 #              (extensions_resources action)
22 grit("extensions_resources_grd") {
23   source = "extensions_resources.grd"
24   outputs = [
25     "grit/extensions_resources.h",
26     "extensions_resources.pak",
27   ]
30 # GYP version: extensions/extensions_resources.gyp:extensions_resources
31 #              (extensions_browser_resources action)
32 grit("extensions_browser_resources") {
33   source = "browser/resources/extensions_browser_resources.grd"
34   outputs = [
35     "grit/extensions_browser_resources.h",
36     "grit/extensions_browser_resources_map.cc",
37     "grit/extensions_browser_resources_map.h",
38     "extensions_browser_resources_100_percent.pak",
39     "extensions_browser_resources_200_percent.pak",
40   ]
41   grit_flags = [
42     "-E",
43     "mojom_root=" + rebase_path(root_gen_dir),
44   ]
47 # GYP version: extensions/extensions_resources.gyp:extensions_resources
48 #              (extensions_renderer_resources action)
49 grit("extensions_renderer_resources") {
50   source = "renderer/resources/extensions_renderer_resources.grd"
51   outputs = [
52     "grit/extensions_renderer_resources.h",
53     "extensions_renderer_resources.pak",
54   ]
55   grit_flags = [
56     "-E",
57     "mojom_root=" + rebase_path(root_gen_dir),
58   ]
60   deps = [
61     "//device/serial:serial_mojo",
62     "//extensions/common:mojo",
63     "//extensions/common/api:mojom",
64   ]
67 source_set("test_support") {
68   testonly = true
69   sources = [
70     "browser/api/dns/mock_host_resolver_creator.cc",
71     "browser/api/dns/mock_host_resolver_creator.h",
72     "browser/api/storage/settings_test_util.cc",
73     "browser/api/storage/settings_test_util.h",
74     "browser/api_test_utils.cc",
75     "browser/api_test_utils.h",
76     "browser/api_unittest.cc",
77     "browser/api_unittest.h",
78     "browser/app_window/test_app_window_contents.cc",
79     "browser/app_window/test_app_window_contents.h",
80     "browser/extension_error_test_util.cc",
81     "browser/extension_error_test_util.h",
82     "browser/extensions_test.cc",
83     "browser/extensions_test.h",
84     "browser/guest_view/test_guest_view_manager.cc",
85     "browser/guest_view/test_guest_view_manager.h",
86     "browser/mock_extension_system.cc",
87     "browser/mock_extension_system.h",
88     "browser/test_extension_registry_observer.cc",
89     "browser/test_extension_registry_observer.h",
90     "browser/test_extensions_browser_client.cc",
91     "browser/test_extensions_browser_client.h",
92     "browser/test_management_policy.cc",
93     "browser/test_management_policy.h",
94     "browser/test_runtime_api_delegate.cc",
95     "browser/test_runtime_api_delegate.h",
96     "common/extension_builder.cc",
97     "common/extension_builder.h",
98     "common/manifest_test.cc",
99     "common/manifest_test.h",
100     "common/test_util.cc",
101     "common/test_util.h",
102     "common/value_builder.cc",
103     "common/value_builder.h",
104     "renderer/test_extensions_renderer_client.cc",
105     "renderer/test_extensions_renderer_client.h",
106     "test/extension_test_message_listener.cc",
107     "test/extension_test_message_listener.h",
108     "test/result_catcher.cc",
109     "test/result_catcher.h",
110     "test/test_content_utility_client.cc",
111     "test/test_content_utility_client.h",
112     "test/test_extensions_client.cc",
113     "test/test_extensions_client.h",
114     "test/test_permission_message_provider.cc",
115     "test/test_permission_message_provider.h",
116     "test/test_service_registration_manager.cc",
117     "test/test_service_registration_manager.h",
118   ]
120   deps = [
121     ":extensions_resources",
122     "//base",
123     "//content/public/browser",
124     "//content/public/common",
125     "//content/test:test_support",
126     "//extensions/browser",
127     "//extensions/common",
128     "//extensions/common/api",
129     "//extensions/common/api:api_registration",
130     "//net:test_support",
131     "//testing/gmock",
132     "//testing/gtest",
133   ]
135   if (is_win) {
136     cflags = [ "/wd4267" ]  # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
137   }
140 # GYP version: //extensions/extensions.gyp:extensions_shell_and_test_pak
141 repack("shell_and_test_pak") {
142   sources = [
143     "$root_gen_dir/blink/public/resources/blink_resources.pak",
144     "$root_gen_dir/content/app/strings/content_strings_en-US.pak",
145     "$root_gen_dir/content/content_resources.pak",
146     "$root_gen_dir/content/shell/shell_resources.pak",
147     "$root_gen_dir/extensions/extensions_browser_resources_100_percent.pak",
148     "$root_gen_dir/extensions/extensions_renderer_resources.pak",
149     "$root_gen_dir/extensions/extensions_resources.pak",
150     "$root_gen_dir/extensions/shell/app_shell_resources.pak",
151     "$root_gen_dir/extensions/strings/extensions_strings_en-US.pak",
152     "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
153     "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
154     "$root_gen_dir/ui/strings/ui_strings_en-US.pak",
155     "$root_gen_dir/blink/devtools_resources.pak",
156   ]
158   output = "$root_out_dir/extensions_shell_and_test.pak"
160   deps = [
161     ":extensions_resources",
162     "//content:resources",
163     "//content/browser/devtools:devtools_resources",
164     "//content/shell:resources",
165     "//extensions/shell:resources",
166     "//extensions/strings",
167     "//third_party/WebKit/public:resources",
168     "//ui/resources",
169     "//ui/strings",
170   ]
173 # TODO(GYP): Enable this link errors are fixed.
174 # This gives a link error in web_modal that is very mysterious. The GYP build
175 # doesn't seem to pull in web_content_modal_dialog_manager.o since the build
176 # does not have a reference to CreateNativeWebModalManager but it still links.
177 # The GN build fails with this symbol being undefined.
178 if (false) {
179   test("extensions_unittests") {
180     sources = [
181       "browser/admin_policy_unittest.cc",
182       "browser/api/api_resource_manager_unittest.cc",
183       "browser/api/cast_channel/cast_auth_ica_unittest.cc",
184       "browser/api/cast_channel/cast_auth_util_unittest.cc",
185       "browser/api/cast_channel/cast_channel_api_unittest.cc",
186       "browser/api/cast_channel/cast_framer_unittest.cc",
187       "browser/api/cast_channel/cast_socket_unittest.cc",
188       "browser/api/cast_channel/cast_transport_unittest.cc",
189       "browser/api/cast_channel/keep_alive_delegate_unittest.cc",
190       "browser/api/cast_channel/logger_unittest.cc",
191       "browser/api/declarative/declarative_rule_unittest.cc",
192       "browser/api/declarative/deduping_factory_unittest.cc",
193       "browser/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc",
194       "browser/api/declarative_webrequest/webrequest_condition_unittest.cc",
195       "browser/api/idle/idle_api_unittest.cc",
196       "browser/api/mime_handler_private/mime_handler_private_unittest.cc",
197       "browser/api/sockets_tcp/sockets_tcp_api_unittest.cc",
198       "browser/api/sockets_udp/sockets_udp_api_unittest.cc",
199       "browser/api/storage/settings_quota_unittest.cc",
200       "browser/api/storage/storage_api_unittest.cc",
201       "browser/api/storage/storage_frontend_unittest.cc",
202       "browser/api/web_request/form_data_parser_unittest.cc",
203       "browser/api/web_request/upload_data_presenter_unittest.cc",
204       "browser/api/web_request/web_request_time_tracker_unittest.cc",
205       "browser/computed_hashes_unittest.cc",
206       "browser/content_hash_tree_unittest.cc",
207       "browser/event_listener_map_unittest.cc",
208       "browser/event_router_unittest.cc",
209       "browser/extension_pref_value_map_unittest.cc",
210       "browser/extension_registry_unittest.cc",
211       "browser/file_highlighter_unittest.cc",
212       "browser/file_reader_unittest.cc",
213       "browser/guest_view/guest_view_manager_unittest.cc",
214       "browser/image_loader_unittest.cc",
215       "browser/info_map_unittest.cc",
216       "browser/lazy_background_task_queue_unittest.cc",
217       "browser/management_policy_unittest.cc",
218       "browser/mojo/keep_alive_impl_unittest.cc",
219       "browser/process_manager_unittest.cc",
220       "browser/process_map_unittest.cc",
221       "browser/quota_service_unittest.cc",
222       "browser/runtime_data_unittest.cc",
223       "browser/sandboxed_unpacker_unittest.cc",
224       "browser/value_store/leveldb_value_store_unittest.cc",
225       "browser/value_store/testing_value_store_unittest.cc",
226       "browser/value_store/value_store_change_unittest.cc",
227       "browser/value_store/value_store_frontend_unittest.cc",
228       "browser/value_store/value_store_unittest.cc",
229       "browser/value_store/value_store_unittest.h",
230       "browser/verified_contents_unittest.cc",
231       "browser/warning_service_unittest.cc",
232       "common/api/sockets/sockets_manifest_permission_unittest.cc",
233       "common/csp_validator_unittest.cc",
234       "common/event_filter_unittest.cc",
235       "common/extension_l10n_util_unittest.cc",
236       "common/extension_resource_unittest.cc",
237       "common/extension_set_unittest.cc",
238       "common/file_util_unittest.cc",
239       "common/image_util_unittest.cc",
240       "common/manifest_handlers/content_capabilities_manifest_unittest.cc",
241       "common/manifest_handlers/oauth2_manifest_unittest.cc",
242       "common/manifest_handlers/shared_module_manifest_unittest.cc",
243       "common/manifest_handler_unittest.cc",
244       "common/message_bundle_unittest.cc",
245       "common/one_shot_event_unittest.cc",
246       "common/permissions/manifest_permission_set_unittest.cc",
247       "common/stack_frame_unittest.cc",
248       "common/url_pattern_set_unittest.cc",
249       "common/url_pattern_unittest.cc",
250       "common/user_script_unittest.cc",
251       "renderer/activity_log_converter_strategy_unittest.cc",
252       "renderer/api/mojo_private/mojo_private_unittest.cc",
253       "renderer/api/serial/data_receiver_unittest.cc",
254       "renderer/api/serial/data_sender_unittest.cc",
255       "renderer/api/serial/serial_api_unittest.cc",
256       "renderer/api_test_base.cc",
257       "renderer/api_test_base.h",
258       "renderer/api_test_base_unittest.cc",
259       "renderer/event_unittest.cc",
260       "renderer/json_schema_unittest.cc",
261       "renderer/messaging_utils_unittest.cc",
262       "renderer/module_system_test.cc",
263       "renderer/module_system_test.h",
264       "renderer/module_system_unittest.cc",
265       "renderer/mojo/keep_alive_client_unittest.cc",
266       "renderer/safe_builtins_unittest.cc",
267       "renderer/script_context_set_unittest.cc",
268       "renderer/script_context_unittest.cc",
269       "renderer/utils_unittest.cc",
270       "test/extensions_unittests_main.cc",
271       "utility/unpacker_unittest.cc",
272     ]
274     deps = [
275       ":extensions_resources",
276       ":shell_and_test_pak",
277       ":test_support",
278       "//base",
279       "//base:prefs_test_support",
280       "//base/test:test_support",
281       "//components/keyed_service/content",
282       "//content/test:test_support",
283       "//device/serial",
284       "//device/serial:test_util",
285       "//extensions/common",
286       "//extensions/renderer",
287       "//extensions/strings",
288       "//mojo/environment:chromium",
289       "//testing/gmock",
290       "//testing/gtest",
291       "//third_party/leveldatabase",
292       "//third_party/mojo/src/mojo/edk/js",
293       "//third_party/mojo/src/mojo/edk/system",
294       "//third_party/mojo/src/mojo/public/cpp/bindings",
295     ]
297     if (is_win) {
298       deps += [ "//base/allocator" ]
299     }
300   }
303 test("extensions_browsertests") {
304   sources = [
305     "browser/api/audio/audio_apitest.cc",
306     "browser/api/dns/dns_apitest.cc",
307     "browser/api/hid/hid_apitest.cc",
308     "browser/api/socket/socket_apitest.cc",
309     "browser/api/sockets_tcp/sockets_tcp_apitest.cc",
310     "browser/api/sockets_udp/sockets_udp_apitest.cc",
311     "browser/api/system_cpu/system_cpu_apitest.cc",
312     "browser/api/system_display/system_display_apitest.cc",
313     "browser/api/system_memory/system_memory_apitest.cc",
314     "browser/api/system_network/system_network_apitest.cc",
315     "browser/api/system_storage/storage_api_test_util.cc",
316     "browser/api/system_storage/storage_api_test_util.h",
317     "browser/api/system_storage/system_storage_apitest.cc",
318     "browser/api/system_storage/system_storage_eject_apitest.cc",
319     "browser/api/usb/usb_apitest.cc",
320     "browser/guest_view/app_view/app_view_apitest.cc",
321     "browser/guest_view/web_view/web_view_apitest.h",
322     "browser/guest_view/web_view/web_view_apitest.cc",
323     "browser/guest_view/web_view/web_view_media_access_apitest.cc",
324     "browser/updater/update_service_browsertest.cc",
325     "shell/browser/geolocation/geolocation_apitest.cc",
326     "shell/browser/shell_browsertest.cc",
327     "shell/test/shell_apitest.cc",
328     "shell/test/shell_apitest.h",
329     "shell/test/shell_test.cc",
330     "shell/test/shell_test.h",
331     "shell/test/shell_test_launcher_delegate.cc",
332     "shell/test/shell_test_launcher_delegate.h",
333     "shell/test/shell_tests_main.cc",
334   ]
336   defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
338   deps = [
339     ":test_support",
340     "shell:app_shell_lib",
342     # TODO(yoz): find the right deps
343     "//base",
344     "//base:prefs_test_support",
345     "//base/test:test_support",
346     "//components/storage_monitor:test_support",
347     "//content/test:test_support",
348     "//mojo/environment:chromium",
349     "//testing/gmock",
350     "//testing/gtest",
351     "//third_party/mojo/src/mojo/edk/js",
352     "//third_party/mojo/src/mojo/edk/system",
353     "//third_party/mojo/src/mojo/public/cpp/bindings",
354   ]
356   if (is_win) {
357     deps += [ "//base/allocator" ]
358   }
360   if (is_mac) {
361     deps += [ "shell:app_shell" ]  # Needed for App Shell.app's Helper.
362   }