1//
2// Copyright (C) 2020 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16package {
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20cc_library {
21    name: "libcuttlefish_webrtc_device",
22    srcs: [
23        "audio_track_source_impl.cpp",
24        "camera_streamer.cpp",
25        "client_handler.cpp",
26        "data_channels.cpp",
27        "keyboard.cpp",
28        "lights_observer.cpp",
29        "local_recorder.cpp",
30        "recording_manager.cpp",
31        "server_connection.cpp",
32        "streamer.cpp",
33        "video_track_source_impl.cpp",
34    ],
35    cflags: [
36        // libwebrtc headers need this
37        "-DWEBRTC_LINUX",
38        "-DWEBRTC_POSIX",
39        "-D_XOPEN_SOURCE",
40        "-Wno-unused-parameter",
41    ],
42    header_libs: [
43        "webrtc_signaling_headers",
44    ],
45    static_libs: [
46        "libabsl_host",
47        "libcap",
48        "libcuttlefish_host_config",
49        "libcuttlefish_screen_connector",
50        "libcuttlefish_utils",
51        "libcuttlefish_wayland_server",
52        "libcuttlefish_webrtc_common",
53        "libcvd_gnss_grpc_proxy",
54        "libdrm",
55        "libevent",
56        "libffi",
57        "libgflags",
58        "liblocation",
59        "libopus",
60        "libsrtp2",
61        "libvpx",
62        "libwayland_crosvm_gpu_display_extension_server_protocols",
63        "libwayland_extension_server_protocols",
64        "libwayland_server",
65        "libwebrtc",
66        "libwebsockets",
67        "libyuv",
68    ],
69    shared_libs: [
70        "libbase",
71        "libcn-cbor",
72        "libcrypto",
73        "libcuttlefish_fs",
74        "libfruit",
75        "libgrpc++_unsecure",
76        "libjsoncpp",
77        "libprotobuf-cpp-full",
78        "libssl",
79        "libwebm_mkvmuxer",
80        "libxml2",
81    ],
82    defaults: ["cuttlefish_buildhost_only"],
83}
84