blob: 2ad4679d4c874c69b98b76664ca87de88c13f85f [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.
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 = [
# Should there be a separate "embedder" target?
"../embedder/embedder.cc",
"../embedder/embedder.h",
"../embedder/platform_channel_pair.cc",
"../embedder/platform_channel_pair.h",
"../embedder/platform_channel_pair_posix.cc",
"../embedder/platform_channel_pair_win.cc",
"../embedder/platform_channel_utils_posix.cc",
"../embedder/platform_channel_utils_posix.h",
"../embedder/platform_handle.cc",
"../embedder/platform_handle.h",
"../embedder/platform_handle_utils.h",
"../embedder/platform_handle_utils_posix.cc",
"../embedder/platform_handle_utils_win.cc",
"../embedder/platform_handle_vector.h",
"../embedder/scoped_platform_handle.h",
"channel.cc",
"channel.h",
"constants.h",
"core.cc",
"core.h",
"data_pipe.cc",
"data_pipe.h",
"data_pipe_consumer_dispatcher.cc",
"data_pipe_consumer_dispatcher.h",
"data_pipe_producer_dispatcher.cc",
"data_pipe_producer_dispatcher.h",
"dispatcher.cc",
"dispatcher.h",
"entrypoints.cc",
"handle_signals_state.h",
"handle_table.cc",
"handle_table.h",
"local_data_pipe.cc",
"local_data_pipe.h",
"local_message_pipe_endpoint.cc",
"local_message_pipe_endpoint.h",
"mapping_table.cc",
"mapping_table.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",
"proxy_message_pipe_endpoint.cc",
"proxy_message_pipe_endpoint.h",
"raw_channel.cc",
"raw_channel.h",
"raw_channel_posix.cc",
"raw_channel_win.cc",
"raw_shared_buffer.cc",
"raw_shared_buffer.h",
"raw_shared_buffer_posix.cc",
"raw_shared_buffer_win.cc",
"shared_buffer_dispatcher.cc",
"shared_buffer_dispatcher.h",
"simple_dispatcher.cc",
"simple_dispatcher.h",
"transport_data.cc",
"transport_data.h",
"waiter.cc",
"waiter.h",
"waiter_list.cc",
"waiter_list.h",
# Test-only code:
# TODO(vtl): It's a little unfortunate that these end up in the same
# component as non-test-only code. In the static build, this code should
# hopefully be dead-stripped.
"../embedder/test_embedder.cc",
"../embedder/test_embedder.h",
]
defines = [
"MOJO_SYSTEM_IMPL_IMPLEMENTATION",
"MOJO_SYSTEM_IMPLEMENTATION",
]
all_dependent_configs = [ ":system_config" ]
deps = [
"//base",
"//base/third_party/dynamic_annotations",
]
}