diff options
Diffstat (limited to 'chromeos/BUILD.gn')
-rw-r--r-- | chromeos/BUILD.gn | 178 |
1 files changed, 178 insertions, 0 deletions
diff --git a/chromeos/BUILD.gn b/chromeos/BUILD.gn index c237ca1..d6aeda5 100644 --- a/chromeos/BUILD.gn +++ b/chromeos/BUILD.gn @@ -2,8 +2,167 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/allocator.gni") +import("//build/config/ui.gni") import("//third_party/protobuf/proto_library.gni") +gypi_values = exec_script( + "//build/gypi_to_gn.py", + [ rebase_path("chromeos.gyp") ], + "scope", + [ "chromeos.gyp" ]) + +component("chromeos") { + configs += [ + "//build/config/linux:dbus", + "//net/third_party/nss/ssl:ssl_config", + ] + deps = [ + "//base", + "//base:prefs", + "//base/third_party/dynamic_annotations", + "//chromeos/ime:gencode", + "//components/policy/proto", + "//components/onc", + "//crypto", + "//dbus", + "//google_apis", + "//net/third_party/nss/ssl:libssl", + "//third_party/icu", + "//third_party/libxml", + "//third_party/protobuf:protobuf_lite", + "//ui/accelerometer", + "//url", + ":cryptohome_proto", + ":power_manager_proto" + ] + sources = gypi_values.chromeos_sources + defines = [ "CHROMEOS_IMPLEMENTATION" ] + if (use_x11) { + configs += [ "//build/config/linux:x11" ] + deps += [ "//ui/gfx/x" ] + sources -= [ "ime/ime_keyboard_ozone.cc" ] + } else { + sources -= [ + "ime/keyboard_controller.cc", + "ime/ime_keyboard_x11.cc", + ] + } +} + +static_library("test_support") { + testonly = true + configs += [ + "//build/config/linux:dbus", + ] + deps = [ + "//testing/gmock", + ":chromeos", + ":cryptohome_proto", + ":power_manager_proto", + ":test_support_without_gmock", + ] + sources = [ + "attestation/mock_attestation_flow.cc", + "attestation/mock_attestation_flow.h", + "chromeos_test_utils.cc", + "chromeos_test_utils.h", + "cryptohome/mock_async_method_caller.cc", + "cryptohome/mock_async_method_caller.h", + "cryptohome/mock_homedir_methods.cc", + "cryptohome/mock_homedir_methods.h", + "dbus/mock_cryptohome_client.cc", + "dbus/mock_cryptohome_client.h", + "dbus/mock_session_manager_client.cc", + "dbus/mock_session_manager_client.h", + "dbus/mock_shill_manager_client.cc", + "dbus/mock_shill_manager_client.h", + "dbus/mock_shill_profile_client.cc", + "dbus/mock_shill_profile_client.h", + "dbus/mock_shill_service_client.cc", + "dbus/mock_shill_service_client.h", + "disks/mock_disk_mount_manager.cc", + "disks/mock_disk_mount_manager.h", + "ime/mock_component_extension_ime_manager_delegate.cc", + "ime/mock_component_extension_ime_manager_delegate.h", + "login/auth/mock_auth_attempt_state_resolver.cc", + "login/auth/mock_auth_attempt_state_resolver.h", + "login/auth/mock_auth_status_consumer.cc", + "login/auth/mock_auth_status_consumer.h", + "login/auth/mock_authenticator.cc", + "login/auth/mock_authenticator.h", + "login/auth/mock_url_fetchers.cc", + "login/auth/mock_url_fetchers.h", + "network/fake_network_device_handler.cc", + "network/fake_network_device_handler.h", + "network/mock_managed_network_configuration_handler.cc", + "network/mock_managed_network_configuration_handler.h", + "network/onc/onc_test_utils.cc", + "network/onc/onc_test_utils.h", + "system/mock_statistics_provider.cc", + "system/mock_statistics_provider.h", + ] +} + +static_library("test_support_without_gmock") { + testonly = true + configs += [ + "//build/config/linux:dbus", + ] + deps = [ + "//crypto", + ":chromeos", + ":cryptohome_proto", + ":power_manager_proto", + ] + sources = [ + "dbus/fake_cros_disks_client.cc", + "dbus/fake_cros_disks_client.h", + "dbus/fake_power_manager_client.cc", + "dbus/fake_power_manager_client.h", + "dbus/fake_session_manager_client.cc", + "dbus/fake_session_manager_client.h", + "dbus/fake_shill_manager_client.cc", + "dbus/fake_shill_manager_client.h", + "dbus/fake_update_engine_client.cc", + "dbus/fake_update_engine_client.h", + "ime/fake_input_method_delegate.cc", + "ime/fake_input_method_delegate.h", + ] +} + +test("chromeos_unittests") { + configs += [ + "//build/config/linux:dbus", + "//net/third_party/nss/ssl:ssl_config", + ] + deps = [ + "//base/test:run_all_unittests", + "//base/test:test_support", + "//components/onc", + "//content/test:test_support", + "//crypto", + "//crypto:test_support", + "//dbus:test_support", + "//google_apis", + "//net", + "//net:test_support", + "//testing/gmock", + "//testing/gtest", + "//url", + ":cryptohome_proto", + ":power_manager_proto", + ":test_support", + ] + sources = gypi_values.chromeos_test_sources + if (use_allocator != "none") { + deps += [ "//base/allocator" ] + } + if (use_x11) { + deps += [ "//ui/gfx/x" ] + } +} + proto_library("power_manager_proto") { sources = [ "//third_party/cros_system_api/dbus/power_manager/input_event.proto", @@ -12,4 +171,23 @@ proto_library("power_manager_proto") { "//third_party/cros_system_api/dbus/power_manager/power_supply_properties.proto", "//third_party/cros_system_api/dbus/power_manager/suspend.proto", ] + + proto_out_dir = "chromeos/dbus/power_manager" +} + +proto_library("cryptohome_proto") { + sources = [ + "//third_party/cros_system_api/dbus/cryptohome/key.proto", + "//third_party/cros_system_api/dbus/cryptohome/rpc.proto", + ] + + proto_out_dir = "chromeos/dbus/cryptohome" +} + +proto_library("cryptohome_signkey_proto") { + sources = [ + "//third_party/cros_system_api/dbus/cryptohome/signed_secret.proto", + ] + + proto_out_dir = "chromeos/dbus/cryptohome" } |