• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_commands_proto",
22    host_supported: true,
23    proto: {
24        export_proto_headers: true,
25        canonical_path_from_root: false,
26        include_dirs: [
27            "external/googleapis",
28            "external/protobuf/src",
29        ],
30        type: "full",
31    },
32    srcs: [
33        "webrtc_commands.proto",
34    ],
35    target: {
36        darwin: {
37            enabled: true,
38        },
39    },
40    shared_libs: [
41        "libgoogleapis-status-proto",
42        "libprotobuf-cpp-full",
43    ],
44    defaults: [
45        "cuttlefish_host",
46        "cvd_cc_defaults",
47    ],
48}
49
50cc_library {
51    name: "libcuttlefish_webrtc_command_channel",
52    srcs: [
53        "webrtc_command_channel.cpp",
54    ],
55    shared_libs: [
56        "libbase",
57        "libgoogleapis-status-proto",
58        "libprotobuf-cpp-full",
59    ],
60    static_libs: [
61        "libcuttlefish_fs",
62        "libcuttlefish_transport",
63        "libcuttlefish_utils",
64        "libcuttlefish_webrtc_commands_proto",
65    ],
66    target: {
67        darwin: {
68            enabled: true,
69        },
70    },
71    defaults: [
72        "cuttlefish_host",
73        "cvd_cc_defaults",
74    ],
75}
76
77cc_binary_host {
78    name: "webRTC",
79    srcs: [
80        "adb_handler.cpp",
81        "audio_handler.cpp",
82        "bluetooth_handler.cpp",
83        "client_server.cpp",
84        "connection_observer.cpp",
85        "cvd_video_frame_buffer.cpp",
86        "display_handler.cpp",
87        "gpx_locations_handler.cpp",
88        "kernel_log_events_handler.cpp",
89        "kml_locations_handler.cpp",
90        "location_handler.cpp",
91        "main.cpp",
92        "screenshot_handler.cpp",
93        "sensors_handler.cpp",
94    ],
95    cflags: [
96        // libwebrtc headers need this
97        "-DWEBRTC_LINUX",
98        "-DWEBRTC_POSIX",
99        "-D_XOPEN_SOURCE",
100        "-Wno-unused-parameter",
101    ],
102    header_libs: [
103        "libcuttlefish_confui_host_headers",
104        "libdrm_headers",
105        "webrtc_signaling_headers",
106    ],
107    static_libs: [
108        "libabsl_host",
109        "libaom",
110        "libcap",
111        "libcn-cbor",
112        "libcuttlefish_audio_connector",
113        "libcuttlefish_confui",
114        "libcuttlefish_confui_host",
115        "libcuttlefish_host_config",
116        "libcuttlefish_input_connector",
117        "libcuttlefish_screen_connector",
118        "libcuttlefish_security",
119        "libcuttlefish_transport",
120        "libcuttlefish_utils",
121        "libcuttlefish_vm_manager",
122        "libcuttlefish_wayland_server",
123        "libcuttlefish_webrtc_command_channel",
124        "libcuttlefish_webrtc_commands_proto",
125        "libcuttlefish_webrtc_common",
126        "libcuttlefish_webrtc_device",
127        "libcvd_gnss_grpc_proxy",
128        "libevent",
129        "libffi",
130        "libft2.nodep",
131        "libgflags",
132        "liblocation",
133        "libopus",
134        "libskia",
135        "libsrtp2",
136        "libteeui",
137        "libteeui_localization",
138        "libvpx",
139        "libwayland_crosvm_gpu_display_extension_server_protocols",
140        "libwayland_extension_server_protocols",
141        "libwayland_server",
142        "libwebrtc",
143        "libwebsockets",
144        "libyuv",
145    ],
146    shared_libs: [
147        "libbase",
148        "libcrypto",
149        "libcuttlefish_fs",
150        "libcuttlefish_kernel_log_monitor_utils",
151        "libfruit",
152        "libgoogleapis-status-proto",
153        "libgrpc++_unsecure",
154        "libjsoncpp",
155        "libopus",
156        "libprotobuf-cpp-full",
157        "libssl",
158        "libvpx",
159        "libwebm_mkvmuxer",
160        "libxml2",
161        "libyuv",
162    ],
163    defaults: [
164        "cuttlefish_buildhost_only",
165        "skia_deps",
166    ],
167}
168