1package { 2 default_applicable_licenses: ["Android-Apache-2.0"], 3} 4 5rust_defaults { 6 name: "virtualizationmanager_defaults", 7 crate_name: "virtualizationmanager", 8 defaults: [ 9 "avf_build_flags_rust", 10 "secretkeeper_use_latest_hal_aidl_rust", 11 "authgraph_use_latest_hal_aidl_rust", 12 ], 13 edition: "2021", 14 // Only build on targets which crosvm builds on. 15 enabled: false, 16 target: { 17 android64: { 18 compile_multilib: "64", 19 enabled: true, 20 }, 21 linux_bionic_arm64: { 22 enabled: true, 23 }, 24 }, 25 prefer_rlib: true, 26 rustlibs: [ 27 "android.system.virtualizationcommon-rust", 28 "android.system.virtualizationservice-rust", 29 "android.system.virtualizationservice_internal-rust", 30 "android.system.virtualmachineservice-rust", 31 "android.os.permissions_aidl-rust", 32 "libandroid_logger", 33 "libanyhow", 34 "libapkverify", 35 "libavf_features", 36 "libavflog", 37 "libbinder_rs", 38 "libcfg_if", 39 "libclap", 40 "libcrosvm_control_static", 41 "libcstr", 42 "libcommand_fds", 43 "libdisk", 44 "libglob", 45 "libhex", 46 "libhypervisor_props", 47 "liblibc", 48 "liblog_rust", 49 "libmicrodroid_metadata", 50 "libmicrodroid_payload_config", 51 "libnested_virt", 52 "libnix", 53 "libonce_cell", 54 "libregex", 55 "librpcbinder_rs", 56 "librustutils", 57 "libsemver", 58 "libselinux_bindgen", 59 "libserde", 60 "libserde_json", 61 "libserde_xml_rs", 62 "libshared_child", 63 "libstatslog_virtualization_rust", 64 "libtombstoned_client_rust", 65 "libvbmeta_rust", 66 "libvmconfig", 67 "libzip", 68 "libvsock", 69 "liblibfdt", 70 "libfsfdt", 71 "libhypervisor_props", 72 "libzerocopy", 73 "libuuid", 74 // TODO(b/202115393) stabilize the interface 75 "packagemanager_aidl-rust", 76 ], 77 shared_libs: [ 78 "libselinux", 79 ], 80} 81 82rust_binary { 83 name: "virtmgr", 84 defaults: ["virtualizationmanager_defaults"], 85 srcs: ["src/main.rs"], 86 apex_available: ["com.android.virt"], 87} 88 89rust_binary { 90 name: "early_virtmgr", 91 defaults: ["virtualizationmanager_defaults"], 92 srcs: ["src/main.rs"], 93 cfgs: ["early"], 94 apex_available: ["com.android.virt"], 95} 96 97xsd_config { 98 name: "early_vms", 99 srcs: ["early_vms.xsd"], 100 api_dir: "schema", 101 package_name: "android.system.virtualizationservice", 102} 103 104rust_test { 105 name: "virtualizationmanager_device_test", 106 srcs: ["src/main.rs"], 107 defaults: ["virtualizationmanager_defaults"], 108 rustlibs: [ 109 "libtempfile", 110 ], 111 data: [ 112 ":test_avf_debug_policy_with_ramdump", 113 ":test_avf_debug_policy_without_ramdump", 114 ":test_avf_debug_policy_with_adb", 115 ":test_avf_debug_policy_without_adb", 116 ], 117 test_suites: ["general-tests"], 118} 119 120cc_fuzz { 121 name: "virtualizationmanager_fuzzer", 122 defaults: ["service_fuzzer_defaults"], 123 srcs: ["fuzzer.cpp"], 124 static_libs: [ 125 "android.system.virtualizationservice-ndk", 126 "libbase", 127 ], 128 shared_libs: [ 129 "libbinder_ndk", 130 "libbinder_rpc_unstable", 131 "liblog", 132 ], 133 fuzz_config: { 134 cc: ["[email protected]"], 135 }, 136} 137