Index: extensions/shell/BUILD.gn |
diff --git a/extensions/shell/BUILD.gn b/extensions/shell/BUILD.gn |
index a251765c0ee4aa54f1577f6b0a5b8d952f4083f5..89d2d247f98c5a363f92b9a11fe2e5887c086089 100644 |
--- a/extensions/shell/BUILD.gn |
+++ b/extensions/shell/BUILD.gn |
@@ -2,10 +2,13 @@ |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
+import("//extensions/shell/app_shell.gni") |
+ |
# Technically, this directory should not depend on files from src/chrome, but |
# that's where the VERSION file is. This should probably all be moved to |
# src/build. |
import("//chrome/version.gni") |
+import("//testing/test.gni") |
import("//tools/grit/grit_rule.gni") |
assert(enable_extensions) |
@@ -52,105 +55,55 @@ source_set("app_shell_lib") { |
"//third_party/mojo/src/mojo/edk/system", |
"//ui/base", |
"//ui/base/ime", |
- "//ui/wm", |
"//v8", |
] |
- sources = [ |
- "app/shell_main_delegate.cc", |
- "app/shell_main_delegate.h", |
- "browser/api/identity/identity_api.cc", |
- "browser/api/identity/identity_api.h", |
- "browser/default_shell_browser_main_delegate.cc", |
- "browser/default_shell_browser_main_delegate.h", |
- "browser/desktop_controller.cc", |
- "browser/desktop_controller.h", |
- "browser/media_capture_util.cc", |
- "browser/media_capture_util.h", |
- "browser/shell_app_delegate.cc", |
- "browser/shell_app_delegate.h", |
- "browser/shell_app_view_guest_delegate.cc", |
- "browser/shell_app_view_guest_delegate.h", |
- "browser/shell_app_window_client.cc", |
- "browser/shell_app_window_client.h", |
- "browser/shell_app_window_client_aura.cc", |
- "browser/shell_audio_controller_chromeos.cc", |
- "browser/shell_audio_controller_chromeos.h", |
- "browser/shell_browser_context.cc", |
- "browser/shell_browser_context.h", |
- "browser/shell_browser_context_keyed_service_factories.cc", |
- "browser/shell_browser_context_keyed_service_factories.h", |
- "browser/shell_browser_main_delegate.h", |
- "browser/shell_browser_main_parts.cc", |
- "browser/shell_browser_main_parts.h", |
- "browser/shell_content_browser_client.cc", |
- "browser/shell_content_browser_client.h", |
- "browser/shell_desktop_controller_aura.cc", |
- "browser/shell_desktop_controller_aura.h", |
- "browser/shell_device_client.cc", |
- "browser/shell_device_client.h", |
- "browser/shell_display_info_provider.cc", |
- "browser/shell_display_info_provider.h", |
- "browser/shell_extension_host_delegate.cc", |
- "browser/shell_extension_host_delegate.h", |
- "browser/shell_extension_system.cc", |
- "browser/shell_extension_system.h", |
- "browser/shell_extension_system_factory.cc", |
- "browser/shell_extension_system_factory.h", |
- "browser/shell_extension_web_contents_observer.cc", |
- "browser/shell_extension_web_contents_observer.h", |
- "browser/shell_extensions_api_client.cc", |
- "browser/shell_extensions_api_client.h", |
- "browser/shell_extensions_browser_client.cc", |
- "browser/shell_extensions_browser_client.h", |
- "browser/shell_native_app_window.cc", |
- "browser/shell_native_app_window.h", |
- "browser/shell_native_app_window_aura.cc", |
- "browser/shell_native_app_window_aura.h", |
- "browser/shell_network_controller_chromeos.cc", |
- "browser/shell_network_controller_chromeos.h", |
- "browser/shell_network_delegate.cc", |
- "browser/shell_network_delegate.h", |
- "browser/shell_oauth2_token_service.cc", |
- "browser/shell_oauth2_token_service.h", |
- "browser/shell_prefs.cc", |
- "browser/shell_prefs.h", |
- "browser/shell_runtime_api_delegate.cc", |
- "browser/shell_runtime_api_delegate.h", |
- "browser/shell_screen.cc", |
- "browser/shell_screen.h", |
- "browser/shell_special_storage_policy.cc", |
- "browser/shell_special_storage_policy.h", |
- "browser/shell_speech_recognition_manager_delegate.cc", |
- "browser/shell_speech_recognition_manager_delegate.h", |
- "browser/shell_update_query_params_delegate.cc", |
- "browser/shell_update_query_params_delegate.h", |
- "browser/shell_url_request_context_getter.cc", |
- "browser/shell_url_request_context_getter.h", |
- "browser/shell_web_contents_modal_dialog_manager.cc", |
- "common/shell_content_client.cc", |
- "common/shell_content_client.h", |
- "common/shell_extensions_client.cc", |
- "common/shell_extensions_client.h", |
- "common/switches.cc", |
- "common/switches.h", |
- "renderer/shell_content_renderer_client.cc", |
- "renderer/shell_content_renderer_client.h", |
- "renderer/shell_extensions_renderer_client.cc", |
- "renderer/shell_extensions_renderer_client.h", |
- "utility/shell_content_utility_client.cc", |
- "utility/shell_content_utility_client.h", |
- ] |
+ |
+ sources = rebase_path(app_shell_gypi_values.app_shell_lib_sources, |
+ ".", |
+ "//extensions/shell") |
+ |
+ if (use_aura) { |
+ deps += [ "//ui/wm" ] |
+ |
+ aura_sources = rebase_path(app_shell_gypi_values.app_shell_lib_sources_aura, |
+ ".", |
+ "//extensions/shell") |
+ sources += aura_sources |
+ } |
+ |
if (is_chromeos) { |
deps += [ |
"//chromeos", |
"//ui/chromeos:ui_chromeos", |
"//ui/display", |
] |
- sources += [ |
- "browser/api/shell_gcd/shell_gcd_api.cc", |
- "browser/api/shell_gcd/shell_gcd_api.h", |
- "browser/api/vpn_provider/vpn_service_factory.cc", |
- ] |
+ chromeos_sources = |
+ rebase_path(app_shell_gypi_values.app_shell_lib_sources_chromeos, |
+ ".", |
+ "//extensions/shell") |
+ sources += chromeos_sources |
+ } |
+ |
+ # TODO(GYP): Enable this when //components/nacl GN is done. See |
+ # http://crbug.com/430602 |
+ if (false) { |
+ if (enable_nacl) { |
+ if (is_linux) { |
+ deps += [ "//components/nacl:nacl_helper" ] |
+ } |
+ deps += [ |
+ "//components/nacl", |
+ "//components/nacl:browser", |
+ "//components/nacl:common", |
+ "//components/nacl:renderer", |
+ "//components/nacl:switches", |
+ ] |
+ nacl_sources = |
+ rebase_path(app_shell_gypi_values.app_shell_lib_sources_nacl, |
+ ".", |
+ "//extensions/shell") |
+ sources += nacl_sources |
+ } |
} |
} |
@@ -158,9 +111,9 @@ if (!(is_chromeos && !use_ozone) && (!is_win || link_chrome_on_windows)) { |
executable("app_shell") { |
# testonly because :app_shell_lib is testonly. See :app_shell_lib comment. |
testonly = true |
- sources = [ |
- "app/shell_main.cc", |
- ] |
+ sources = rebase_path(app_shell_gypi_values.app_shell_sources, |
+ ".", |
+ "//extensions/shell") |
deps = [ |
":app_shell_lib", |
"//extensions:shell_and_test_pak", |
@@ -169,10 +122,66 @@ if (!(is_chromeos && !use_ozone) && (!is_win || link_chrome_on_windows)) { |
if (is_win) { |
configs += [ "//build/config/win:windowed" ] |
configs -= [ "//build/config/win:console" ] |
+ deps += [ "//base/allocator" ] |
+ } |
+ |
+ if (is_mac) { |
+ # TODO(GYP): Mac bundling |
} |
} |
} |
+test("app_shell_unittests") { |
+ sources = rebase_path(app_shell_gypi_values.app_shell_unittests_sources, |
+ ".", |
+ "//extensions/shell") |
+ |
+ deps = [ |
+ ":app_shell_lib", |
+ "//base", |
+ "//base/test:test_support", |
+ "//content/test:test_support", |
+ "//extensions:shell_and_test_pak", |
+ "//extensions:test_support", |
+ "//testing/gtest", |
+ ] |
+ |
+ if (use_aura) { |
+ deps += [ "//ui/aura:test_support" ] |
+ |
+ aura_sources = |
+ rebase_path(app_shell_gypi_values.app_shell_unittests_sources_aura, |
+ ".", |
+ "//extensions/shell") |
+ sources += aura_sources |
+ } |
+ |
+ if (is_chromeos) { |
+ deps += [ "//chromeos:test_support_without_gmock" ] |
+ |
+ chromeos_sources = |
+ rebase_path(app_shell_gypi_values.app_shell_unittests_sources_chromeos, |
+ ".", |
+ "//extensions/shell") |
+ sources += chromeos_sources |
+ } |
+ |
+ # TODO(GYP): Enable this when //components/nacl GN is done. |
+ if (false) { |
+ if (use_nacl) { |
+ nacl_sources = |
+ rebase_path(app_shell_gypi_values.app_shell_unittests_sources_nacl, |
+ ".", |
+ "//extensions/shell") |
+ sources += nacl_sources |
+ } |
+ } |
+ |
+ if (is_win) { |
+ deps += [ "//base/allocator" ] |
+ } |
+} |
+ |
process_version("version_header") { |
source = "common/version.h.in" |
output = "$target_gen_dir/common/version.h" |