# Copyright 2013 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.

{
  'include_dirs': [
    '..',
  ],
  'defines': [
    'SYNC_IMPLEMENTATION',
  ],
  'dependencies': [
    '../base/base.gyp:base',
    '../base/base.gyp:base_i18n',
    '../crypto/crypto.gyp:crypto',
    '../google_apis/google_apis.gyp:google_apis',
    '../net/net.gyp:net',
    '../sql/sql.gyp:sql',
    '../url/url.gyp:url_lib',
  ],
  'conditions': [
    ['OS=="linux" and chromeos==1', {
      # Required by get_session_name.cc on Chrome OS.
      'dependencies': [
        '../chromeos/chromeos.gyp:chromeos',
      ],
    }],
  ],
  'sources': [
    'base/sync_export.h',
    'engine/all_status.cc',
    'engine/all_status.h',
    'engine/apply_control_data_updates.cc',
    'engine/apply_control_data_updates.h',
    'engine/backoff_delay_provider.cc',
    'engine/backoff_delay_provider.h',
    'engine/commit.cc',
    'engine/commit.h',
    'engine/commit_contribution.cc',
    'engine/commit_contribution.h',
    'engine/commit_contributor.cc',
    'engine/commit_contributor.h',
    'engine/commit_processor.cc',
    'engine/commit_processor.h',
    'engine/commit_util.cc',
    'engine/commit_util.h',
    'engine/conflict_resolver.cc',
    'engine/conflict_resolver.h',
    'engine/conflict_util.cc',
    'engine/conflict_util.h',
    'engine/directory_commit_contribution.cc',
    'engine/directory_commit_contribution.h',
    'engine/directory_commit_contributor.cc',
    'engine/directory_commit_contributor.h',
    'engine/directory_update_handler.cc',
    'engine/directory_update_handler.h',
    'engine/get_commit_ids.cc',
    'engine/get_commit_ids.h',
    'engine/get_updates_delegate.cc',
    'engine/get_updates_delegate.h',
    'engine/get_updates_processor.cc',
    'engine/get_updates_processor.h',
    'engine/model_thread_sync_entity.cc',
    'engine/model_thread_sync_entity.h',
    'engine/net/server_connection_manager.cc',
    'engine/net/server_connection_manager.h',
    'engine/net/url_translator.cc',
    'engine/net/url_translator.h',
    'engine/non_blocking_sync_common.cc',
    'engine/non_blocking_sync_common.h',
    'engine/non_blocking_type_commit_contribution.cc',
    'engine/non_blocking_type_commit_contribution.h',
    'engine/non_blocking_type_processor.cc',
    'engine/non_blocking_type_processor.h',
    'engine/non_blocking_type_processor_core.cc',
    'engine/non_blocking_type_processor_core.h',
    'engine/non_blocking_type_processor_core_interface.cc',
    'engine/non_blocking_type_processor_core_interface.h',
    'engine/non_blocking_type_processor_interface.cc',
    'engine/non_blocking_type_processor_interface.h',
    'engine/nudge_source.cc',
    'engine/nudge_source.h',
    'engine/process_updates_util.cc',
    'engine/process_updates_util.h',
    'engine/sync_cycle_event.cc',
    'engine/sync_cycle_event.h',
    'engine/sync_engine_event_listener.cc',
    'engine/sync_engine_event_listener.h',
    'engine/sync_scheduler.cc',
    'engine/sync_scheduler.h',
    'engine/sync_scheduler_impl.cc',
    'engine/sync_scheduler_impl.h',
    'engine/sync_thread_sync_entity.cc',
    'engine/sync_thread_sync_entity.h',
    'engine/syncer.cc',
    'engine/syncer.h',
    'engine/syncer_proto_util.cc',
    'engine/syncer_proto_util.h',
    'engine/syncer_types.h',
    'engine/syncer_util.cc',
    'engine/syncer_util.h',
    'engine/traffic_logger.cc',
    'engine/traffic_logger.h',
    'engine/update_applicator.cc',
    'engine/update_applicator.h',
    'engine/update_handler.cc',
    'engine/update_handler.h',
    'js/js_backend.h',
    'js/js_controller.h',
    'js/js_event_details.cc',
    'js/js_event_details.h',
    'js/js_event_handler.h',
    'js/sync_js_controller.cc',
    'js/sync_js_controller.h',
    'protocol/proto_enum_conversions.cc',
    'protocol/proto_enum_conversions.h',
    'protocol/proto_value_conversions.cc',
    'protocol/proto_value_conversions.h',
    'protocol/sync_protocol_error.cc',
    'protocol/sync_protocol_error.h',
    'sessions/data_type_tracker.cc',
    'sessions/data_type_tracker.h',
    'sessions/debug_info_getter.h',
    'sessions/directory_type_debug_info_emitter.cc',
    'sessions/directory_type_debug_info_emitter.h',
    'sessions/model_type_registry.cc',
    'sessions/model_type_registry.h',
    'sessions/nudge_tracker.cc',
    'sessions/nudge_tracker.h',
    'sessions/status_controller.cc',
    'sessions/status_controller.h',
    'sessions/sync_session.cc',
    'sessions/sync_session.h',
    'sessions/sync_session_context.cc',
    'sessions/sync_session_context.h',
    'syncable/blob.h',
    'syncable/dir_open_result.h',
    'syncable/directory.cc',
    'syncable/directory.h',
    'syncable/directory_backing_store.cc',
    'syncable/directory_backing_store.h',
    'syncable/directory_change_delegate.h',
    'syncable/entry.cc',
    'syncable/entry.h',
    'syncable/entry_kernel.cc',
    'syncable/entry_kernel.h',
    'syncable/in_memory_directory_backing_store.cc',
    'syncable/in_memory_directory_backing_store.h',
    'syncable/invalid_directory_backing_store.cc',
    'syncable/invalid_directory_backing_store.h',
    'syncable/metahandle_set.h',
    'syncable/model_neutral_mutable_entry.cc',
    'syncable/model_neutral_mutable_entry.h',
    'syncable/model_type.cc',
    'syncable/mutable_entry.cc',
    'syncable/mutable_entry.h',
    'syncable/nigori_handler.cc',
    'syncable/nigori_handler.h',
    'syncable/nigori_util.cc',
    'syncable/nigori_util.h',
    'syncable/on_disk_directory_backing_store.cc',
    'syncable/on_disk_directory_backing_store.h',
    'syncable/parent_child_index.cc',
    'syncable/parent_child_index.h',
    'syncable/scoped_kernel_lock.cc',
    'syncable/scoped_kernel_lock.h',
    'syncable/scoped_parent_child_index_updater.cc',
    'syncable/scoped_parent_child_index_updater.h',
    'syncable/syncable-inl.h',
    'syncable/syncable_base_transaction.cc',
    'syncable/syncable_base_transaction.h',
    'syncable/syncable_base_write_transaction.cc',
    'syncable/syncable_base_write_transaction.h',
    'syncable/syncable_changes_version.h',
    'syncable/syncable_columns.h',
    'syncable/syncable_delete_journal.cc',
    'syncable/syncable_delete_journal.h',
    'syncable/syncable_enum_conversions.cc',
    'syncable/syncable_enum_conversions.h',
    'syncable/syncable_id.cc',
    'syncable/syncable_id.h',
    'syncable/syncable_model_neutral_write_transaction.cc',
    'syncable/syncable_model_neutral_write_transaction.h',
    'syncable/syncable_proto_util.cc',
    'syncable/syncable_proto_util.h',
    'syncable/syncable_read_transaction.cc',
    'syncable/syncable_read_transaction.h',
    'syncable/syncable_util.cc',
    'syncable/syncable_util.h',
    'syncable/syncable_write_transaction.cc',
    'syncable/syncable_write_transaction.h',
    'syncable/transaction_observer.h',
    'syncable/write_transaction_info.cc',
    'syncable/write_transaction_info.h',
    'util/cryptographer.cc',
    'util/cryptographer.h',
    'util/data_type_histogram.h',
    'util/encryptor.h',
    'util/extensions_activity.cc',
    'util/extensions_activity.h',
    'util/get_session_name.cc',
    'util/get_session_name.h',
    'util/get_session_name_ios.h',
    'util/get_session_name_ios.mm',
    'util/get_session_name_linux.cc',
    'util/get_session_name_linux.h',
    'util/get_session_name_mac.h',
    'util/get_session_name_mac.mm',
    'util/get_session_name_win.cc',
    'util/get_session_name_win.h',
    'util/logging.cc',
    'util/logging.h',
    'util/nigori.cc',
    'util/nigori.h',
    'util/time.cc',
    'util/time.h',
  ],
}