| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/features.gni") |
| |
| source_set("common") { |
| visibility = [ |
| "//components/policy/*", |
| "//components/syncable_prefs/*", |
| ] |
| |
| defines = [ "POLICY_COMPONENT_IMPLEMENTATION" ] |
| |
| if (enable_configuration_policy) { |
| sources = [ |
| "../../policy_export.h", |
| "async_policy_loader.cc", |
| "async_policy_loader.h", |
| "async_policy_provider.cc", |
| "async_policy_provider.h", |
| "cloud/cloud_external_data_manager.cc", |
| "cloud/cloud_external_data_manager.h", |
| "cloud/cloud_policy_client.cc", |
| "cloud/cloud_policy_client.h", |
| "cloud/cloud_policy_client_registration_helper.cc", |
| "cloud/cloud_policy_client_registration_helper.h", |
| "cloud/cloud_policy_constants.cc", |
| "cloud/cloud_policy_constants.h", |
| "cloud/cloud_policy_core.cc", |
| "cloud/cloud_policy_core.h", |
| "cloud/cloud_policy_manager.cc", |
| "cloud/cloud_policy_manager.h", |
| "cloud/cloud_policy_refresh_scheduler.cc", |
| "cloud/cloud_policy_refresh_scheduler.h", |
| "cloud/cloud_policy_service.cc", |
| "cloud/cloud_policy_service.h", |
| "cloud/cloud_policy_store.cc", |
| "cloud/cloud_policy_store.h", |
| "cloud/cloud_policy_validator.cc", |
| "cloud/cloud_policy_validator.h", |
| "cloud/component_cloud_policy_service.cc", |
| "cloud/component_cloud_policy_service.h", |
| "cloud/component_cloud_policy_store.cc", |
| "cloud/component_cloud_policy_store.h", |
| "cloud/component_cloud_policy_updater.cc", |
| "cloud/component_cloud_policy_updater.h", |
| "cloud/device_management_service.cc", |
| "cloud/device_management_service.h", |
| "cloud/enterprise_metrics.cc", |
| "cloud/enterprise_metrics.h", |
| "cloud/external_policy_data_fetcher.cc", |
| "cloud/external_policy_data_fetcher.h", |
| "cloud/external_policy_data_updater.cc", |
| "cloud/external_policy_data_updater.h", |
| "cloud/policy_header_io_helper.cc", |
| "cloud/policy_header_io_helper.h", |
| "cloud/policy_header_service.cc", |
| "cloud/policy_header_service.h", |
| "cloud/resource_cache.cc", |
| "cloud/resource_cache.h", |
| "cloud/system_policy_request_context.cc", |
| "cloud/system_policy_request_context.h", |
| "cloud/user_cloud_policy_manager.cc", |
| "cloud/user_cloud_policy_manager.h", |
| "cloud/user_cloud_policy_store.cc", |
| "cloud/user_cloud_policy_store.h", |
| "cloud/user_cloud_policy_store_base.cc", |
| "cloud/user_cloud_policy_store_base.h", |
| "cloud/user_info_fetcher.cc", |
| "cloud/user_info_fetcher.h", |
| "config_dir_policy_loader.cc", |
| "config_dir_policy_loader.h", |
| "configuration_policy_provider.cc", |
| "configuration_policy_provider.h", |
| "external_data_fetcher.cc", |
| "external_data_fetcher.h", |
| "external_data_manager.h", |
| "mac_util.cc", |
| "mac_util.h", |
| "policy_bundle.cc", |
| "policy_bundle.h", |
| "policy_details.h", |
| "policy_load_status.cc", |
| "policy_load_status.h", |
| "policy_loader_ios.h", |
| "policy_loader_ios.mm", |
| "policy_loader_mac.h", |
| "policy_loader_mac.mm", |
| "policy_loader_win.cc", |
| "policy_loader_win.h", |
| "policy_map.cc", |
| "policy_map.h", |
| "policy_namespace.cc", |
| "policy_namespace.h", |
| "policy_pref_names.cc", |
| "policy_pref_names.h", |
| "policy_service.cc", |
| "policy_service.h", |
| "policy_service_impl.cc", |
| "policy_service_impl.h", |
| "policy_statistics_collector.cc", |
| "policy_statistics_collector.h", |
| "policy_switches.cc", |
| "policy_switches.h", |
| "policy_types.h", |
| "preferences_mac.cc", |
| "preferences_mac.h", |
| "preg_parser_win.cc", |
| "preg_parser_win.h", |
| "registry_dict_win.cc", |
| "registry_dict_win.h", |
| "remote_commands/remote_command_job.cc", |
| "remote_commands/remote_command_job.h", |
| "remote_commands/remote_commands_factory.cc", |
| "remote_commands/remote_commands_factory.h", |
| "remote_commands/remote_commands_queue.cc", |
| "remote_commands/remote_commands_queue.h", |
| "remote_commands/remote_commands_service.cc", |
| "remote_commands/remote_commands_service.h", |
| "schema.cc", |
| "schema.h", |
| "schema_internal.h", |
| "schema_map.cc", |
| "schema_map.h", |
| "schema_registry.cc", |
| "schema_registry.h", |
| "schema_registry_tracking_policy_provider.cc", |
| "schema_registry_tracking_policy_provider.h", |
| ] |
| |
| configs += [ "//build/config:precompiled_headers" ] |
| |
| public_deps = [ |
| "//components/policy/proto", |
| ] |
| deps = [ |
| "//base:i18n", |
| "//base:prefs", |
| "//base/third_party/dynamic_annotations", |
| "//components/data_use_measurement/core", |
| "//components/json_schema", |
| "//components/policy", |
| "//google_apis", |
| "//net", |
| "//third_party/re2", |
| "//url", |
| ] |
| |
| if (is_win) { |
| libs = [ "netapi32.lib" ] |
| } |
| if (is_android) { |
| sources += [ "cloud/component_cloud_policy_service_stub.cc" ] |
| sources -= [ |
| "cloud/component_cloud_policy_service.cc", |
| "cloud/component_cloud_policy_store.cc", |
| "cloud/component_cloud_policy_store.h", |
| "cloud/component_cloud_policy_updater.cc", |
| "cloud/component_cloud_policy_updater.h", |
| "cloud/external_policy_data_fetcher.cc", |
| "cloud/external_policy_data_fetcher.h", |
| "cloud/external_policy_data_updater.cc", |
| "cloud/external_policy_data_updater.h", |
| "cloud/resource_cache.cc", |
| "cloud/resource_cache.h", |
| "config_dir_policy_loader.cc", |
| "config_dir_policy_loader.h", |
| "policy_load_status.cc", |
| "policy_load_status.h", |
| ] |
| } |
| if (is_chromeos) { |
| sources += [ |
| "proxy_policy_provider.cc", |
| "proxy_policy_provider.h", |
| ] |
| sources -= [ |
| "cloud/cloud_policy_client_registration_helper.cc", |
| "cloud/cloud_policy_client_registration_helper.h", |
| "cloud/user_cloud_policy_manager.cc", |
| "cloud/user_cloud_policy_manager.h", |
| "cloud/user_cloud_policy_store.cc", |
| "cloud/user_cloud_policy_store.h", |
| ] |
| } |
| if (!is_ios && !is_mac) { |
| sources -= [ |
| "mac_util.cc", |
| "mac_util.h", |
| ] |
| } |
| } else { |
| # Some of the policy code is always enabled, so that other parts of Chrome |
| # can always interface with the PolicyService without having to #ifdef on |
| # ENABLE_CONFIGURATION_POLICY. |
| sources = [ |
| "external_data_fetcher.cc", |
| "external_data_fetcher.h", |
| "external_data_manager.h", |
| "policy_map.cc", |
| "policy_map.h", |
| "policy_namespace.cc", |
| "policy_namespace.h", |
| "policy_pref_names.cc", |
| "policy_pref_names.h", |
| "policy_service.cc", |
| "policy_service.h", |
| "policy_service_stub.cc", |
| "policy_service_stub.h", |
| ] |
| deps = [ |
| "//base", |
| ] |
| } |
| } |
| |
| if (enable_configuration_policy) { |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "async_policy_provider_unittest.cc", |
| "cloud/cloud_policy_client_unittest.cc", |
| "cloud/cloud_policy_constants_unittest.cc", |
| "cloud/cloud_policy_core_unittest.cc", |
| "cloud/cloud_policy_manager_unittest.cc", |
| "cloud/cloud_policy_refresh_scheduler_unittest.cc", |
| "cloud/cloud_policy_service_unittest.cc", |
| "cloud/cloud_policy_validator_unittest.cc", |
| "cloud/component_cloud_policy_service_unittest.cc", |
| "cloud/component_cloud_policy_store_unittest.cc", |
| "cloud/component_cloud_policy_updater_unittest.cc", |
| "cloud/device_management_service_unittest.cc", |
| "cloud/external_policy_data_fetcher_unittest.cc", |
| "cloud/external_policy_data_updater_unittest.cc", |
| "cloud/policy_header_io_helper_unittest.cc", |
| "cloud/policy_header_service_unittest.cc", |
| "cloud/resource_cache_unittest.cc", |
| "cloud/user_cloud_policy_manager_unittest.cc", |
| "cloud/user_cloud_policy_store_unittest.cc", |
| "cloud/user_info_fetcher_unittest.cc", |
| "config_dir_policy_loader_unittest.cc", |
| "generate_policy_source_unittest.cc", |
| "policy_bundle_unittest.cc", |
| "policy_loader_ios_unittest.mm", |
| "policy_loader_mac_unittest.cc", |
| "policy_loader_win_unittest.cc", |
| "policy_map_unittest.cc", |
| "policy_service_impl_unittest.cc", |
| "policy_statistics_collector_unittest.cc", |
| "preg_parser_win_unittest.cc", |
| "registry_dict_win_unittest.cc", |
| "remote_commands/remote_commands_queue_unittest.cc", |
| "remote_commands/remote_commands_service_unittest.cc", |
| "schema_map_unittest.cc", |
| "schema_registry_tracking_policy_provider_unittest.cc", |
| "schema_registry_unittest.cc", |
| "schema_unittest.cc", |
| ] |
| |
| if (is_chromeos) { |
| sources -= [ |
| "cloud/user_cloud_policy_manager_unittest.cc", |
| "cloud/user_cloud_policy_store_unittest.cc", |
| ] |
| } |
| |
| if (is_android) { |
| sources -= [ "async_policy_provider_unittest.cc" ] |
| } |
| |
| if (is_android || is_ios) { |
| sources -= [ |
| "cloud/component_cloud_policy_service_unittest.cc", |
| "cloud/component_cloud_policy_store_unittest.cc", |
| "cloud/component_cloud_policy_updater_unittest.cc", |
| "cloud/external_policy_data_fetcher_unittest.cc", |
| "cloud/external_policy_data_updater_unittest.cc", |
| "cloud/resource_cache_unittest.cc", |
| "config_dir_policy_loader_unittest.cc", |
| ] |
| } |
| |
| deps = [ |
| "//base", |
| "//base:prefs_test_support", |
| "//base/test:test_support", |
| "//components/policy", |
| "//components/policy:policy_component_test_support", |
| "//google_apis", |
| "//net:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| } |
| } |