| # 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") |
| } |
| |
| config("system_config") { |
| defines = [ |
| # Ensures that dependent projects import the core functions on Windows. |
| "MOJO_USE_SYSTEM_IMPL", |
| ] |
| } |
| |
| component("system") { |
| output_name = "mojo_system_impl" |
| |
| 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", |
| "handle_signals_state.h", |
| "handle_table.cc", |
| "handle_table.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", |
| "mutex.cc", |
| "mutex.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", |
| "raw_channel_win.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", |
| "thread_annotations.h", |
| "transport_data.cc", |
| "transport_data.h", |
| "unique_identifier.cc", |
| "unique_identifier.h", |
| "waiter.cc", |
| "waiter.h", |
| ] |
| |
| defines = [ |
| "MOJO_SYSTEM_IMPL_IMPLEMENTATION", |
| "MOJO_SYSTEM_IMPLEMENTATION", |
| ] |
| |
| all_dependent_configs = [ ":system_config" ] |
| |
| public_deps = [ |
| "../embedder", |
| "../embedder:delegates", |
| "../embedder:platform", |
| "../../public/c/system", |
| "../../public/cpp/system", |
| ] |
| |
| deps = [ |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| ] |
| |
| allow_circular_includes_from = [ "../embedder" ] |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ |
| ":mojo_system_unittests", |
| ":mojo_message_pipe_perftests", |
| ] |
| } |
| |
| mojo_edk_source_set("test_utils") { |
| testonly = true |
| |
| sources = [ |
| "test_utils.cc", |
| "test_utils.h", |
| ] |
| |
| mojo_sdk_public_deps = [ |
| "mojo/public/c/system", |
| "mojo/public/cpp/system", |
| ] |
| |
| deps = [ |
| "//base", |
| "//base/test:test_support", |
| ] |
| } |
| |
| test("mojo_system_unittests") { |
| sources = [ |
| "../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", |
| "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", |
| "multiprocess_message_pipe_unittest.cc", |
| "mutex_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", |
| "run_all_unittests.cc", |
| "shared_buffer_dispatcher_unittest.cc", |
| "simple_dispatcher_unittest.cc", |
| "test_channel_endpoint_client.cc", |
| "test_channel_endpoint_client.h", |
| "test_utils_unittest.cc", |
| "thread_annotations_unittest.cc", |
| "unique_identifier_unittest.cc", |
| "waiter_test_utils.cc", |
| "waiter_test_utils.h", |
| "waiter_unittest.cc", |
| ] |
| |
| deps = [ |
| ":system", |
| ":test_utils", |
| "../embedder:embedder_unittests", |
| "../test:test_support", |
| "//base", |
| "//base/test:test_support", |
| "//testing/gtest", |
| ] |
| |
| allow_circular_includes_from = [ "../embedder:embedder_unittests" ] |
| } |
| |
| test("mojo_message_pipe_perftests") { |
| sources = [ |
| "message_pipe_perftest.cc", |
| "message_pipe_test_utils.cc", |
| "message_pipe_test_utils.h", |
| ] |
| |
| deps = [ |
| ":system", |
| ":test_utils", |
| "../test:test_support", |
| "//base", |
| "//base/test:test_support", |
| "//base/test:test_support_perf", |
| "//testing/gtest", |
| ] |
| } |