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 5import("//tools/grit/grit_rule.gni") 6import("//tools/grit/repack.gni") 7 8# GYP version: extensions/extensions_resources.gyp:extensions_resources 9group("extensions_resources") { 10 deps = [ 11 ":extensions_browser_resources", 12 ":extensions_renderer_resources", 13 ":extensions_resources_grd", 14 ] 15} 16 17# GYP version: extensions/extensions_resources.gyp:extensions_resources 18# (extensions_resources action) 19grit("extensions_resources_grd") { 20 source = "extensions_resources.grd" 21 outputs = [ 22 "grit/extensions_resources.h", 23 "extensions_resources.pak", 24 ] 25} 26 27# GYP version: extensions/extensions_resources.gyp:extensions_resources 28# (extensions_browser_resources action) 29grit("extensions_browser_resources") { 30 source = "browser/resources/extensions_browser_resources.grd" 31 outputs = [ 32 "grit/extensions_browser_resources.h", 33 "grit/extensions_browser_resources_map.cc", 34 "grit/extensions_browser_resources_map.h", 35 "extensions_browser_resources_100_percent.pak", 36 "extensions_browser_resources_200_percent.pak", 37 ] 38 grit_flags = [ "-E", "mojom_root=" + rebase_path(root_gen_dir) ] 39} 40 41# GYP version: extensions/extensions_resources.gyp:extensions_resources 42# (extensions_renderer_resources action) 43grit("extensions_renderer_resources") { 44 source = "renderer/resources/extensions_renderer_resources.grd" 45 outputs = [ 46 "grit/extensions_renderer_resources.h", 47 "extensions_renderer_resources.pak", 48 ] 49 grit_flags = [ "-E", "mojom_root=" + rebase_path(root_gen_dir) ] 50 if (enable_extensions) { 51 deps = [ 52 "//device/serial:serial_mojo", 53 ] 54 } 55} 56 57source_set("test_support") { 58 testonly = true 59 sources = [ 60 "browser/api/dns/mock_host_resolver_creator.cc", 61 "browser/api/dns/mock_host_resolver_creator.h", 62 "browser/api/storage/settings_test_util.cc", 63 "browser/api/storage/settings_test_util.h", 64 "browser/api_test_utils.cc", 65 "browser/api_test_utils.h", 66 "browser/extensions_test.cc", 67 "browser/extensions_test.h", 68 "browser/mock_extension_system.cc", 69 "browser/mock_extension_system.h", 70 "browser/test_extensions_browser_client.cc", 71 "browser/test_extensions_browser_client.h", 72 "browser/test_management_policy.cc", 73 "browser/test_management_policy.h", 74 "browser/test_runtime_api_delegate.cc", 75 "browser/test_runtime_api_delegate.h", 76 "common/extension_builder.cc", 77 "common/extension_builder.h", 78 "common/manifest_test.cc", 79 "common/manifest_test.h", 80 "common/test_util.cc", 81 "common/test_util.h", 82 "common/value_builder.cc", 83 "common/value_builder.h", 84 "renderer/test_extensions_renderer_client.cc", 85 "renderer/test_extensions_renderer_client.h", 86 "test/extension_test_message_listener.cc", 87 "test/extension_test_message_listener.h", 88 "test/test_extensions_client.cc", 89 "test/test_extensions_client.h", 90 "test/test_permission_message_provider.cc", 91 "test/test_permission_message_provider.h", 92 ] 93 94 deps = [ 95 ":extensions_resources", 96 "//base", 97 "//extensions/browser", 98 "//extensions/common", 99 "//extensions/common/api", 100 "//extensions/common/api:api_registration", 101 "//net:test_support", 102 "//testing/gmock", 103 "//testing/gtest", 104 ] 105 106 if (is_win) { 107 cflags = [ 108 "/wd4267", # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 109 ] 110 } 111} 112 113 114# GYP version: //extensions/extensions.gyp:extensions_shell_and_test_pak 115repack("shell_and_test_pak") { 116 sources = [ 117 "$root_gen_dir/chrome/common_resources.pak", 118 "$root_gen_dir/chrome/extensions_api_resources.pak", 119 # TODO(jamescook): Extract the extension/app related resources 120 # from generated_resources_en-US.pak. http://crbug.com/397250 121 "$root_gen_dir/chrome/generated_resources_en-US.pak", 122 "$root_gen_dir/chrome/renderer_resources_100_percent.pak", 123 "$root_gen_dir/content/app/strings/content_strings_en-US.pak", 124 "$root_gen_dir/content/content_resources.pak", 125 "$root_gen_dir/content/shell/shell_resources.pak", 126 "$root_gen_dir/extensions/extensions_renderer_resources.pak", 127 "$root_gen_dir/extensions/extensions_resources.pak", 128 "$root_gen_dir/extensions/strings/extensions_strings_en-US.pak", 129 "$root_gen_dir/ui/resources/ui_resources_100_percent.pak", 130 "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak", 131 "$root_gen_dir/ui/strings/ui_strings_en-US.pak", 132 "$root_gen_dir/webkit/devtools_resources.pak", 133 ] 134 135 output = "$root_out_dir/extensions_shell_and_test.pak" 136 137 deps = [ 138 ":extensions_resources", 139 # Need extension related resources in common_resources.pak and 140 # renderer_resources_100_percent.pak 141 "//chrome:resources", 142 # Need dev-tools related resources in shell_resources.pak and 143 # devtools_resources.pak. 144 "//content/browser/devtools:resources", 145 "//content/shell:resources", 146 "//content:resources", 147 "//extensions/strings", 148 "//ui/resources", 149 "//ui/strings", 150 ] 151} 152 153# TODO(GYP): Enable this link errors are fixed. 154# This gives a link error in web_modal that is very mysterious. The GYP build 155# doesn't seem to pull in web_content_modal_dialog_manager.o since the build 156# does not have a reference to CreateNativeWebModalManager but it still links. 157# The GN build fails with this symbol being undefined. 158if (false) { 159test("unittests") { 160 output_name = "extensions_unittests" 161 162 sources = [ 163 "browser/admin_policy_unittest.cc", 164 "browser/api/api_resource_manager_unittest.cc", 165 "browser/api/declarative/declarative_rule_unittest.cc", 166 "browser/api/declarative/deduping_factory_unittest.cc", 167 "browser/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc", 168 "browser/api/declarative_webrequest/webrequest_condition_unittest.cc", 169 "browser/api/sockets_tcp/sockets_tcp_api_unittest.cc", 170 "browser/api/storage/settings_quota_unittest.cc", 171 "browser/api/storage/storage_api_unittest.cc", 172 "browser/api/storage/storage_frontend_unittest.cc", 173 "browser/api/web_request/form_data_parser_unittest.cc", 174 "browser/api/web_request/upload_data_presenter_unittest.cc", 175 "browser/api/web_request/web_request_time_tracker_unittest.cc", 176 "browser/computed_hashes_unittest.cc", 177 "browser/content_hash_tree_unittest.cc", 178 "browser/event_listener_map_unittest.cc", 179 "browser/event_router_unittest.cc", 180 "browser/api_unittest.cc", 181 "browser/api_unittest.h", 182 "browser/extension_pref_value_map_unittest.cc", 183 "browser/extension_registry_unittest.cc", 184 "browser/file_highlighter_unittest.cc", 185 "browser/file_reader_unittest.cc", 186 "browser/guest_view/guest_view_manager_unittest.cc", 187 "browser/image_loader_unittest.cc", 188 "browser/image_util_unittest.cc", 189 "browser/info_map_unittest.cc", 190 "browser/lazy_background_task_queue_unittest.cc", 191 "browser/management_policy_unittest.cc", 192 "browser/process_manager_unittest.cc", 193 "browser/process_map_unittest.cc", 194 "browser/quota_service_unittest.cc", 195 "browser/runtime_data_unittest.cc", 196 "browser/value_store/leveldb_value_store_unittest.cc", 197 "browser/value_store/testing_value_store_unittest.cc", 198 "browser/value_store/value_store_change_unittest.cc", 199 "browser/value_store/value_store_frontend_unittest.cc", 200 "browser/value_store/value_store_unittest.cc", 201 "browser/value_store/value_store_unittest.h", 202 "browser/verified_contents_unittest.cc", 203 "browser/warning_service_unittest.cc", 204 "common/api/sockets/sockets_manifest_permission_unittest.cc", 205 "common/csp_validator_unittest.cc", 206 "common/event_filter_unittest.cc", 207 "common/extension_l10n_util_unittest.cc", 208 "common/extension_resource_unittest.cc", 209 "common/extension_set_unittest.cc", 210 "common/file_util_unittest.cc", 211 "common/manifest_handler_unittest.cc", 212 "common/manifest_handlers/shared_module_manifest_unittest.cc", 213 "common/message_bundle_unittest.cc", 214 "common/one_shot_event_unittest.cc", 215 "common/permissions/manifest_permission_set_unittest.cc", 216 "common/stack_frame_unittest.cc", 217 "common/url_pattern_set_unittest.cc", 218 "common/url_pattern_unittest.cc", 219 "common/user_script_unittest.cc", 220 "renderer/activity_log_converter_strategy_unittest.cc", 221 "renderer/api/serial/data_receiver_unittest.cc", 222 "renderer/api/serial/data_sender_unittest.cc", 223 "renderer/api/serial/serial_api_unittest.cc", 224 "renderer/api_test_base.cc", 225 "renderer/api_test_base.h", 226 "renderer/api_test_base_unittest.cc", 227 "renderer/event_unittest.cc", 228 "renderer/json_schema_unittest.cc", 229 "renderer/messaging_utils_unittest.cc", 230 "renderer/module_system_test.cc", 231 "renderer/module_system_test.h", 232 "renderer/module_system_unittest.cc", 233 "renderer/safe_builtins_unittest.cc", 234 "renderer/script_context_set_unittest.cc", 235 "renderer/utils_unittest.cc", 236 "test/extensions_unittests_main.cc", 237 ] 238 239 deps = [ 240 ":extensions_resources", 241 ":shell_and_test_pak", 242 ":test_support", 243 "//base", 244 "//base:prefs_test_support", 245 "//base/test:test_support", 246 "//components/keyed_service/content", 247 "//content/test:test_support", 248 "//device/serial", 249 "//device/serial:test_util", 250 "//extensions/common", 251 "//extensions/renderer", 252 "//extensions/strings", 253 "//mojo/environment:chromium", 254 "//mojo/public/cpp/bindings", 255 "//mojo/bindings/js", 256 "//mojo/system", 257 "//testing/gmock", 258 "//testing/gtest", 259 "//third_party/leveldatabase", 260 ] 261 262 if (is_win) { 263 deps += [ 264 "//base/allocator", 265 ] 266 } 267} 268} 269