blob: 0901b3e17d362e4a5df356c58cd28b9ba88314a0 [file] [log] [blame]
# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
component("common") {
sources = [
"user_type.cc",
"user_type.h",
]
defines = [ "IS_USER_MANAGER_COMMON_IMPL" ]
deps = [ "//base" ]
}
component("user_manager") {
sources = [
"multi_user/multi_user_sign_in_policy.cc",
"multi_user/multi_user_sign_in_policy.h",
"user_manager_export.h",
"user_manager_pref_names.h",
"user_names.cc",
"user_names.h",
]
public_deps = [
":common",
"//base",
"//components/account_id",
"//components/prefs",
"//google_apis",
"//ui/gfx",
]
deps = [
"//components/crash/core/common",
"//google_apis",
]
defines = [ "USER_MANAGER_IMPLEMENTATION" ]
if (is_chromeos) {
sources += [
"account_id_util.cc",
"account_id_util.h",
"common_types.h",
"device_ownership_waiter.h",
"device_ownership_waiter_impl.cc",
"device_ownership_waiter_impl.h",
"include_exclude_account_id_filter.cc",
"include_exclude_account_id_filter.h",
"known_user.cc",
"known_user.h",
"multi_user/multi_user_sign_in_policy_controller.cc",
"multi_user/multi_user_sign_in_policy_controller.h",
"scoped_user_manager.cc",
"scoped_user_manager.h",
"user.cc",
"user.h",
"user_directory_integrity_manager.cc",
"user_directory_integrity_manager.h",
"user_image/user_image.cc",
"user_image/user_image.h",
"user_manager.cc",
"user_manager.h",
"user_manager_impl.cc",
"user_manager_impl.h",
"user_manager_policy_util.cc",
"user_manager_policy_util.h",
]
deps += [
"//ash/constants",
"//chromeos/ash/components/install_attributes",
"//chromeos/ash/components/policy/device_local_account",
"//chromeos/ash/components/settings",
"//components/pref_registry",
"//skia",
"//ui/base",
"//ui/chromeos/resources",
"//url",
]
}
}
if (is_chromeos) {
source_set("test_support") {
testonly = true
sources = [
"fake_device_ownership_waiter.cc",
"fake_device_ownership_waiter.h",
"fake_user_manager.cc",
"fake_user_manager.h",
"fake_user_manager_delegate.cc",
"fake_user_manager_delegate.h",
"test_helper.cc",
"test_helper.h",
]
public_deps = [
":user_manager",
"//base",
"//chromeos/ash/components/install_attributes",
"//components/account_id",
]
deps = [
"//chromeos/ash/components/cryptohome",
"//chromeos/ash/components/dbus/cryptohome",
"//chromeos/ash/components/dbus/cryptohome:cryptohome_proto",
"//chromeos/ash/components/dbus/userdataauth",
"//chromeos/ash/components/policy/device_local_account",
"//chromeos/ash/components/settings",
"//components/policy/core/common",
"//components/prefs",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"account_id_util_unittest.cc",
"device_ownership_waiter_unittest.cc",
"include_exclude_account_id_filter_unittest.cc",
"known_user_unittest.cc",
"user_unittest.cc",
]
deps = [
":test_support",
":user_manager",
"//base/test:test_support",
"//chromeos/ash/components/install_attributes:test_support",
"//components/account_id",
"//components/prefs:test_support",
"//testing/gmock",
"//testing/gtest",
]
# TODO(crbug.com/40031409): Fix code that adds exit-time destructors and
# enable the diagnostic by removing this line.
configs += [ "//build/config/compiler:no_exit_time_destructors" ]
}
}