1// 2// Copyright (C) 2019 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_binary_host { 21 name: "run_cvd", 22 srcs: [ 23 "boot_state_machine.cc", 24 "launch/automotive_proxy.cpp", 25 "launch/bluetooth_connector.cpp", 26 "launch/casimir.cpp", 27 "launch/casimir_control_server.cpp", 28 "launch/console_forwarder.cpp", 29 "launch/control_env_proxy_server.cpp", 30 "launch/echo_server.cpp", 31 "launch/gnss_grpc_proxy.cpp", 32 "launch/grpc_socket_creator.cpp", 33 "launch/kernel_log_monitor.cpp", 34 "launch/log_tee_creator.cpp", 35 "launch/logcat_receiver.cpp", 36 "launch/metrics.cpp", 37 "launch/netsim_server.cpp", 38 "launch/nfc_connector.cpp", 39 "launch/openwrt_control_server.cpp", 40 "launch/pica.cpp", 41 "launch/root_canal.cpp", 42 "launch/screen_recording_server.cpp", 43 "launch/secure_env.cpp", 44 "launch/snapshot_control_files.cpp", 45 "launch/streamer.cpp", 46 "launch/uwb_connector.cpp", 47 "launch/vhal_proxy_server.cpp", 48 "launch/webrtc_controller.cpp", 49 "main.cc", 50 "reporting.cpp", 51 "server_loop.cpp", 52 "server_loop_impl.cpp", 53 "server_loop_impl_snapshot.cpp", 54 "server_loop_impl_webrtc.cpp", 55 "validate.cpp", 56 ], 57 shared_libs: [ 58 "libbase", 59 "libcuttlefish_fs", 60 "libcuttlefish_kernel_log_monitor_utils", 61 "libcuttlefish_run_cvd_proto", 62 "libcuttlefish_utils", 63 "libcuttlefish_webrtc_command_channel", 64 "libcuttlefish_webrtc_commands_proto", 65 "libext2_blkid", 66 "libfruit", 67 "libgoogleapis-status-proto", 68 "libgrpc++_unsecure", 69 "libjsoncpp", 70 "libprotobuf-cpp-full", 71 ], 72 static_libs: [ 73 "libbuildversion", 74 "libcuttlefish_command_util", 75 "libcuttlefish_host_config", 76 "libcuttlefish_host_config_adb", 77 "libcuttlefish_host_config_fastboot", 78 "libcuttlefish_metrics", 79 "libcuttlefish_msg_queue", 80 "libcuttlefish_process_monitor", 81 "libcuttlefish_utils", 82 "libcuttlefish_vm_manager", 83 "libgflags", 84 "libopenwrt_control_server", 85 ], 86 required: [ 87 "console_forwarder", 88 "kernel_log_monitor", 89 "log_tee", 90 "logcat_receiver", 91 "secure_env", 92 "tcp_connector", 93 ], 94 target: { 95 darwin: { 96 enabled: true, 97 }, 98 linux: { 99 required: [ 100 "echo_server", 101 "gnss_grpc_proxy", 102 ], 103 srcs: [ 104 "launch/mcu.cpp", 105 "launch/modem.cpp", 106 "launch/open_wrt.cpp", 107 "launch/tombstone_receiver.cpp", 108 "launch/vhost_device_vsock.cpp", 109 "launch/wmediumd_server.cpp", 110 ], 111 shared_libs: [ 112 "libnl", 113 ], 114 }, 115 }, 116 defaults: [ 117 "cuttlefish_host", 118 "cvd_cc_defaults", 119 ], 120 use_version_lib: true, 121} 122