blob: 843873b91f91f54120588fbd683a7948f6d587e2 [file] [log] [blame]
Bob Badourbd1037f2021-02-12 15:54:17 -08001package {
2 default_applicable_licenses: ["Android-Apache-2.0"],
3}
4
Alice Wang4c6c5582023-11-23 15:07:18 +00005rust_defaults {
6 name: "virtualizationservice_defaults",
Andrew Walbranf6bf6862021-05-21 12:41:13 +00007 crate_name: "virtualizationservice",
Nikita Ioffeda1b2732023-09-04 13:46:56 +01008 defaults: ["avf_build_flags_rust"],
Alan Stokes6472ccd2022-08-31 13:41:28 +01009 edition: "2021",
David Brazdil3f0f1e82023-01-12 16:18:43 +000010 srcs: ["src/main.rs"],
Andrew Walbrandfc953d2021-06-10 13:59:56 +000011 // Only build on targets which crosvm builds on.
12 enabled: false,
13 target: {
14 android64: {
15 compile_multilib: "64",
16 enabled: true,
17 },
18 linux_bionic_arm64: {
19 enabled: true,
20 },
21 },
Jiyong Park26bdf442021-04-05 16:04:49 +090022 prefer_rlib: true,
Andrew Walbranb12a43e2020-11-10 14:22:42 +000023 rustlibs: [
Alice Wang15f6d082023-08-25 09:11:07 +000024 "android.hardware.security.rkp-V3-rust",
Alan Stokes2bead0d2022-09-05 16:58:34 +010025 "android.system.virtualizationcommon-rust",
Andrew Walbranf6bf6862021-05-21 12:41:13 +000026 "android.system.virtualizationservice-rust",
David Brazdil528e0472022-10-10 15:06:02 +010027 "android.system.virtualizationservice_internal-rust",
Inseob Kim1b95f2e2021-08-19 13:17:40 +090028 "android.system.virtualmachineservice-rust",
Jiyong Park753553b2021-07-12 21:21:09 +090029 "android.os.permissions_aidl-rust",
Andrew Walbranbf1fb042021-03-15 16:54:09 +000030 "libandroid_logger",
Andrew Walbranb12a43e2020-11-10 14:22:42 +000031 "libanyhow",
Jiyong Parkd7bd2f22023-08-10 20:41:19 +090032 "libavflog",
Inseob Kim1b95f2e2021-08-19 13:17:40 +090033 "libbinder_rs",
Alice Wangb5b90322023-11-14 07:38:18 +000034 "libhypervisor_props",
Jakob Vukalovicd42aa2c2023-11-09 16:04:00 +000035 "liblazy_static",
David Brazdila07a1792022-10-25 13:37:57 +010036 "liblibc",
Andrew Walbran3a5a9212021-05-04 17:09:08 +000037 "liblog_rust",
Andrew Walbranb27681f2022-02-23 15:11:52 +000038 "libnix",
Alice Wangfc5a44a2023-12-21 12:22:40 +000039 "libopenssl",
Alice Wangbff017f2023-11-09 14:43:28 +000040 "librkpd_client",
Jiyong Parkd50a0242021-09-16 21:00:14 +090041 "librustutils",
Treehugger Robot3ffa8322021-11-22 12:06:47 +000042 "libstatslog_virtualization_rust",
Shikha Panwar7afc1392022-03-24 08:54:43 +000043 "libtombstoned_client_rust",
Jiyong Park8611a6c2021-07-09 18:17:44 +090044 "libvsock",
Inseob Kimc4a774d2023-08-30 12:48:43 +090045 "libserde",
46 "libserde_xml_rs",
Alice Wanga4486592023-09-05 08:25:59 +000047 "libservice_vm_comm",
Alice Wang734801c2023-09-05 11:46:50 +000048 "libservice_vm_manager",
David Brazdil1f530702022-10-03 12:18:10 +010049 ],
Jiyong Park8d1eb7e2021-02-16 13:23:00 +090050 apex_available: ["com.android.virt"],
Andrew Walbranb12a43e2020-11-10 14:22:42 +000051}
Inseob Kimc4a774d2023-08-30 12:48:43 +090052
Alice Wang4c6c5582023-11-23 15:07:18 +000053rust_binary {
54 name: "virtualizationservice",
55 defaults: ["virtualizationservice_defaults"],
56}
57
Inseob Kimc4a774d2023-08-30 12:48:43 +090058xsd_config {
59 name: "assignable_devices",
60 srcs: ["assignable_devices.xsd"],
61 api_dir: "schema",
62 package_name: "android.system.virtualizationservice",
63}
Alice Wang4c6c5582023-11-23 15:07:18 +000064
65rust_test {
66 name: "virtualizationservice_test",
67 defaults: ["virtualizationservice_defaults"],
68 test_suites: ["general-tests"],
69 data: [
70 ":test_rkp_cert_chain",
71 ],
72}
73
74// The chain originates from a CTS test for Keymint, with the Keymint certificate
75// (leaf certificate) truncated.
76//
77// The certificate chain begins with a leaf certificate obtained from RKP and ends
78// with a root certificate. Each certificate in the chain possesses a signature that
79// is signed by the private key of the subsequent certificate in the chain.
80filegroup {
81 name: "test_rkp_cert_chain",
82 srcs: ["testdata/rkp_cert_chain.der"],
83}