blob: 789066b7844fbed275bf4e4740c9a9df769b8ad1 [file] [log] [blame]
# 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("../mojo_edk.gni")
import("//testing/test.gni")
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
}
mojo_edk_source_set("system") {
sources = [
"async_waiter.cc",
"async_waiter.h",
"awakable.h",
"awakable_list.cc",
"awakable_list.h",
"channel.cc",
"channel.h",
"channel_endpoint.cc",
"channel_endpoint.h",
"channel_endpoint_client.h",
"channel_endpoint_id.cc",
"channel_endpoint_id.h",
"channel_id.h",
"channel_manager.cc",
"channel_manager.h",
"configuration.cc",
"configuration.h",
"connection_identifier.h",
"connection_manager.cc",
"connection_manager.h",
"connection_manager_messages.h",
"core.cc",
"core.h",
"data_pipe.cc",
"data_pipe.h",
"data_pipe_consumer_dispatcher.cc",
"data_pipe_consumer_dispatcher.h",
"data_pipe_impl.cc",
"data_pipe_impl.h",
"data_pipe_producer_dispatcher.cc",
"data_pipe_producer_dispatcher.h",
"dispatcher.cc",
"dispatcher.h",
"endpoint_relayer.cc",
"endpoint_relayer.h",
"entrypoint_class.h",
"handle.cc",
"handle.h",
"handle_signals_state.h",
"handle_table.cc",
"handle_table.h",
"handle_transport.cc",
"handle_transport.h",
"incoming_endpoint.cc",
"incoming_endpoint.h",
"ipc_support.cc",
"ipc_support.h",
"local_data_pipe_impl.cc",
"local_data_pipe_impl.h",
"local_message_pipe_endpoint.cc",
"local_message_pipe_endpoint.h",
"mapping_table.cc",
"mapping_table.h",
"master_connection_manager.cc",
"master_connection_manager.h",
"memory.cc",
"memory.h",
"message_in_transit.cc",
"message_in_transit.h",
"message_in_transit_queue.cc",
"message_in_transit_queue.h",
"message_pipe.cc",
"message_pipe.h",
"message_pipe_dispatcher.cc",
"message_pipe_dispatcher.h",
"message_pipe_endpoint.cc",
"message_pipe_endpoint.h",
"options_validation.h",
"platform_handle_dispatcher.cc",
"platform_handle_dispatcher.h",
"process_identifier.h",
"proxy_message_pipe_endpoint.cc",
"proxy_message_pipe_endpoint.h",
"raw_channel.cc",
"raw_channel.h",
"raw_channel_posix.cc",
"remote_consumer_data_pipe_impl.cc",
"remote_consumer_data_pipe_impl.h",
"remote_data_pipe_ack.h",
"remote_producer_data_pipe_impl.cc",
"remote_producer_data_pipe_impl.h",
"shared_buffer_dispatcher.cc",
"shared_buffer_dispatcher.h",
"simple_dispatcher.cc",
"simple_dispatcher.h",
"slave_connection_manager.cc",
"slave_connection_manager.h",
"transport_data.cc",
"transport_data.h",
"unique_identifier.cc",
"unique_identifier.h",
"waiter.cc",
"waiter.h",
]
mojo_edk_public_deps = [
"mojo/edk/embedder",
"mojo/edk/embedder:delegates",
"mojo/edk/embedder:platform",
"mojo/edk/platform",
"mojo/edk/util",
]
mojo_sdk_public_deps = [
"mojo/public/c/system",
"mojo/public/cpp/system",
]
deps = [
"//base",
"//base/third_party/dynamic_annotations",
]
allow_circular_includes_from = [ "../embedder" ]
}
mojo_edk_unittests("mojo_edk_system_unittests") {
sources = [
# TODO(vtl): This should be in its own mojo_edk_unittests target.
"../test/multiprocess_test_helper_unittest.cc",
"awakable_list_unittest.cc",
"channel_endpoint_id_unittest.cc",
"channel_endpoint_unittest.cc",
"channel_manager_unittest.cc",
"channel_test_base.cc",
"channel_test_base.h",
"channel_unittest.cc",
"connection_manager_unittest.cc",
"core_test_base.cc",
"core_test_base.h",
"core_unittest.cc",
"data_pipe_impl_unittest.cc",
"data_pipe_unittest.cc",
"dispatcher_unittest.cc",
"endpoint_relayer_unittest.cc",
"handle_table_unittest.cc",
"handle_unittest.cc",
"ipc_support_unittest.cc",
"memory_unittest.cc",
"message_in_transit_queue_unittest.cc",
"message_in_transit_test_utils.cc",
"message_in_transit_test_utils.h",
"message_pipe_dispatcher_unittest.cc",
"message_pipe_test_utils.cc",
"message_pipe_test_utils.h",
"message_pipe_unittest.cc",
"mock_simple_dispatcher.cc",
"mock_simple_dispatcher.h",
"multiprocess_message_pipe_unittest.cc",
"options_validation_unittest.cc",
"platform_handle_dispatcher_unittest.cc",
"raw_channel_unittest.cc",
"remote_data_pipe_impl_unittest.cc",
"remote_message_pipe_unittest.cc",
"shared_buffer_dispatcher_unittest.cc",
"simple_dispatcher_unittest.cc",
"test_channel_endpoint_client.cc",
"test_channel_endpoint_client.h",
"unique_identifier_unittest.cc",
"waiter_test_utils.cc",
"waiter_test_utils.h",
"waiter_unittest.cc",
]
deps = [
":system",
"//base",
"//testing/gtest",
]
mojo_edk_deps = [
"mojo/edk/base_edk",
"mojo/edk/base_edk:test_base_edk",
"mojo/edk/platform:test_platform",
"mojo/edk/system/test",
"mojo/edk/test:test_support",
"mojo/edk/util",
]
}
mojo_edk_perftests("mojo_edk_system_perftests") {
sources = [
"message_pipe_perftest.cc",
"message_pipe_test_utils.cc",
"message_pipe_test_utils.h",
]
deps = [
":system",
"//base",
"//testing/gtest",
]
mojo_edk_deps = [
# TODO(vtl): Add separate test targets for this.
"mojo/edk/util:perftests",
"mojo/edk/base_edk",
"mojo/edk/base_edk:test_base_edk",
"mojo/edk/system/test",
"mojo/edk/system/test:perf",
"mojo/edk/test:test_support",
]
}