# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
component("system") {
output_name = "mojo_public_system_cpp"
sources = [
"buffer.cc",
"buffer.h",
"data_pipe.h",
"data_pipe_drainer.cc",
"data_pipe_drainer.h",
"data_pipe_producer.cc",
"data_pipe_producer.h",
"data_pipe_utils.cc",
"data_pipe_utils.h",
"file_data_source.cc",
"file_data_source.h",
"filtered_data_source.cc",
"filtered_data_source.h",
"functions.cc",
"functions.h",
"handle.h",
"handle_signal_tracker.cc",
"handle_signal_tracker.h",
"handle_signals_state.h",
"invitation.cc",
"invitation.h",
"isolated_connection.cc",
"isolated_connection.h",
"message.h",
"message_pipe.cc",
"message_pipe.h",
"platform_handle.cc",
"platform_handle.h",
"scope_to_message_pipe.cc",
"scope_to_message_pipe.h",
"simple_watcher.cc",
"simple_watcher.h",
"string_data_source.cc",
"string_data_source.h",
"system_export.h",
"trap.cc",
"trap.h",
"wait.cc",
"wait.h",
"wait_set.cc",
"wait_set.h",
]
if (is_nacl) {
# This file refers to a the base::File::File(path, flags)
# constructor which does not exist in nacl builds, and the code
# here is unused in nacl builds anyway.
sources -= [ "file_data_source.cc" ]
}
public_deps = [
"//base",
"//mojo/core/embedder",
"//mojo/public/c/system",
"//mojo/public/cpp/platform",
]
configs += [ "//build/config/compiler:wexit_time_destructors" ]
defines = [ "MOJO_CPP_SYSTEM_IMPLEMENTATION" ]
}