blob: 0f5fe4fd3e0fcfcc6a5853fe7aa4d684f0c980e8 [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("//build/config/features.gni")
import("//mojo/public/tools/bindings/mojom.gni")
# Library works only on desktop platforms.
assert(is_win || is_linux || is_mac)
config("platform_support") {
visibility = [ ":serial" ]
if (is_win) {
libs = [ "setupapi.lib" ]
ldflags = [ "/DELAYLOAD:setupapi.dll" ]
}
}
# GYP version: device/serial/serial.gyp:device_serial
static_library("serial") {
output_name = "device_serial"
sources = [
"buffer.cc",
"buffer.h",
"data_receiver.cc",
"data_receiver.h",
"data_sender.cc",
"data_sender.h",
"data_sink_receiver.cc",
"data_sink_receiver.h",
"data_source_sender.cc",
"data_source_sender.h",
"serial_connection.cc",
"serial_connection.h",
"serial_connection_factory.cc",
"serial_connection_factory.h",
"serial_device_enumerator.cc",
"serial_device_enumerator.h",
"serial_device_enumerator_linux.cc",
"serial_device_enumerator_linux.h",
"serial_device_enumerator_mac.cc",
"serial_device_enumerator_mac.h",
"serial_device_enumerator_win.cc",
"serial_device_enumerator_win.h",
"serial_io_handler.cc",
"serial_io_handler.h",
"serial_io_handler_posix.cc",
"serial_io_handler_posix.h",
"serial_io_handler_win.cc",
"serial_io_handler_win.h",
"serial_service_impl.cc",
"serial_service_impl.h",
]
public_configs = [ ":platform_support" ]
public_deps = [
":serial_mojo",
"//base",
"//device/core",
]
deps = [
"//mojo/public/cpp/system",
"//net",
"//third_party/re2",
]
if (use_udev) {
deps += [ "//device/udev_linux" ]
}
if (is_chromeos) {
deps += [
"//chromeos",
"//dbus",
]
}
if (is_mac) {
libs = [
"Foundation.framework",
"IOKit.framework",
]
}
}
# GYP version: device/serial/serial.gyp:device_serial_test_util
static_library("test_support") {
sources = [
"test_serial_io_handler.cc",
"test_serial_io_handler.h",
]
deps = [
":serial",
]
}
# GYP version: device/serial/serial.gyp:device_serial_mojo
mojom("serial_mojo") {
visibility = [
":serial",
"//extensions:extensions_renderer_resources_grit",
]
sources = [
"data_stream.mojom",
"data_stream_serialization.mojom",
"serial.mojom",
"serial_serialization.mojom",
]
use_new_wrapper_types = false
}