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        "streamer.cpp",
31        "video_track_source_impl.cpp",
32        "server_connection.cpp",
33        "recording_manager.cpp",
34    ],
35    cflags: [
36        // libwebrtc headers need this
37        "-Wno-unused-parameter",
38        "-D_XOPEN_SOURCE",
39        "-DWEBRTC_POSIX",
40        "-DWEBRTC_LINUX",
41    ],
42    header_libs: [
43        "webrtc_signaling_headers",
44        "libwebrtc_absl_headers",
45    ],
46    static_libs: [
47        "libsrtp2",
48        "libcuttlefish_host_config",
49        "libcuttlefish_wayland_server",
50        "libcuttlefish_webrtc_common",
51        "libgflags",
52        "libdrm",
53        "libevent",
54        "libffi",
55        "libwayland_crosvm_gpu_display_extension_server_protocols",
56        "libwayland_extension_server_protocols",
57        "libwayland_server",
58        "libwebsockets",
59        "libcap",
60        "libcuttlefish_utils",
61        "libwebrtc",
62        "libcvd_gnss_grpc_proxy",
63        "liblocation",
64        "libopus",
65        "libvpx",
66        "libyuv",
67    ],
68    shared_libs: [
69        "libbase",
70        "libcn-cbor",
71        "libcrypto",
72        "libcuttlefish_fs",
73        "libfruit",
74        "libjsoncpp",
75        "libssl",
76        "libwebm_mkvmuxer",
77        "libprotobuf-cpp-full",
78        "libgrpc++_unsecure",
79        "libxml2",
80    ],
81    defaults: ["cuttlefish_buildhost_only"],
82}
83
84