# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
static_library("engine") {
sources = [
"active_devices_invalidation_info.cc",
"active_devices_invalidation_info.h",
"backoff_delay_provider.cc",
"backoff_delay_provider.h",
"bookmark_update_preprocessing.cc",
"bookmark_update_preprocessing.h",
"cancelation_signal.cc",
"cancelation_signal.h",
"commit.cc",
"commit.h",
"commit_and_get_updates_types.cc",
"commit_and_get_updates_types.h",
"commit_contribution.h",
"commit_contribution_impl.cc",
"commit_contribution_impl.h",
"commit_contributor.h",
"commit_processor.cc",
"commit_processor.h",
"commit_queue.h",
"commit_util.cc",
"commit_util.h",
"configure_reason.h",
"cycle/commit_quota.cc",
"cycle/commit_quota.h",
"cycle/data_type_tracker.cc",
"cycle/data_type_tracker.h",
"cycle/debug_info_getter.h",
"cycle/entity_change_metric_recording.cc",
"cycle/entity_change_metric_recording.h",
"cycle/model_neutral_state.cc",
"cycle/model_neutral_state.h",
"cycle/nudge_tracker.cc",
"cycle/nudge_tracker.h",
"cycle/status_controller.cc",
"cycle/status_controller.h",
"cycle/sync_cycle.cc",
"cycle/sync_cycle.h",
"cycle/sync_cycle_context.cc",
"cycle/sync_cycle_context.h",
"cycle/sync_cycle_snapshot.cc",
"cycle/sync_cycle_snapshot.h",
"data_type_activation_response.cc",
"data_type_activation_response.h",
"data_type_configurer.cc",
"data_type_configurer.h",
"data_type_connector.h",
"data_type_connector_proxy.cc",
"data_type_connector_proxy.h",
"data_type_processor.h",
"data_type_processor_metrics.cc",
"data_type_processor_metrics.h",
"data_type_processor_proxy.cc",
"data_type_processor_proxy.h",
"data_type_registry.cc",
"data_type_registry.h",
"data_type_worker.cc",
"data_type_worker.h",
"debug_info_event_listener.cc",
"debug_info_event_listener.h",
"engine_components_factory.h",
"engine_components_factory_impl.cc",
"engine_components_factory_impl.h",
"events/commit_request_event.cc",
"events/commit_request_event.h",
"events/commit_response_event.cc",
"events/commit_response_event.h",
"events/configure_get_updates_request_event.cc",
"events/configure_get_updates_request_event.h",
"events/get_updates_response_event.cc",
"events/get_updates_response_event.h",
"events/normal_get_updates_request_event.cc",
"events/normal_get_updates_request_event.h",
"events/poll_get_updates_request_event.cc",
"events/poll_get_updates_request_event.h",
"events/protocol_event.cc",
"events/protocol_event.h",
"events/protocol_event_buffer.cc",
"events/protocol_event_buffer.h",
"events/protocol_event_observer.h",
"forwarding_data_type_processor.cc",
"forwarding_data_type_processor.h",
"get_updates_delegate.cc",
"get_updates_delegate.h",
"get_updates_processor.cc",
"get_updates_processor.h",
"loopback_server/loopback_connection_manager.cc",
"loopback_server/loopback_connection_manager.h",
"loopback_server/loopback_server.cc",
"loopback_server/loopback_server.h",
"loopback_server/loopback_server_entity.cc",
"loopback_server/loopback_server_entity.h",
"loopback_server/persistent_bookmark_entity.cc",
"loopback_server/persistent_bookmark_entity.h",
"loopback_server/persistent_permanent_entity.cc",
"loopback_server/persistent_permanent_entity.h",
"loopback_server/persistent_tombstone_entity.cc",
"loopback_server/persistent_tombstone_entity.h",
"loopback_server/persistent_unique_client_entity.cc",
"loopback_server/persistent_unique_client_entity.h",
"net/http_bridge.cc",
"net/http_bridge.h",
"net/http_post_provider.h",
"net/http_post_provider_factory.h",
"net/server_connection_manager.cc",
"net/server_connection_manager.h",
"net/sync_server_connection_manager.cc",
"net/sync_server_connection_manager.h",
"net/url_translator.cc",
"net/url_translator.h",
"nigori/cross_user_sharing_public_key.cc",
"nigori/cross_user_sharing_public_key.h",
"nigori/cross_user_sharing_public_private_key_pair.cc",
"nigori/cross_user_sharing_public_private_key_pair.h",
"nigori/cryptographer.cc",
"nigori/cryptographer.h",
"nigori/key_derivation_params.cc",
"nigori/key_derivation_params.h",
"nigori/keystore_keys_handler.h",
"nigori/nigori.cc",
"nigori/nigori.h",
"nudge_handler.h",
"polling_constants.h",
"shutdown_reason.cc",
"shutdown_reason.h",
"sync_credentials.h",
"sync_cycle_event.cc",
"sync_cycle_event.h",
"sync_encryption_handler.h",
"sync_engine.cc",
"sync_engine.h",
"sync_engine_event_listener.h",
"sync_engine_host.h",
"sync_manager.cc",
"sync_manager.h",
"sync_manager_factory.cc",
"sync_manager_factory.h",
"sync_manager_impl.cc",
"sync_manager_impl.h",
"sync_protocol_error.cc",
"sync_protocol_error.h",
"sync_scheduler.h",
"sync_scheduler_impl.cc",
"sync_scheduler_impl.h",
"sync_status.cc",
"sync_status.h",
"sync_status_tracker.cc",
"sync_status_tracker.h",
"sync_string_conversions.cc",
"sync_string_conversions.h",
"syncer.cc",
"syncer.h",
"syncer_error.cc",
"syncer_error.h",
"syncer_proto_util.cc",
"syncer_proto_util.h",
"traffic_logger.cc",
"traffic_logger.h",
"update_handler.h",
]
configs += [
# The target has >50 .cc files, so speed up the build with
# precompiled_headers.
"//build/config:precompiled_headers",
"//build/config/compiler:wexit_time_destructors",
]
public_deps = [
"//base",
"//components/signin/public/identity_manager",
"//components/sync/base",
"//components/sync/protocol",
"//components/sync/protocol:util",
"//net",
"//services/network/public/cpp",
"//url",
]
deps = [
"//base:i18n",
"//build:branding_buildflags",
"//components/variations/net",
# For engine/nigori.
"//crypto",
"//third_party/zlib/google:compression_utils",
]
}