xref: /aosp_15_r20/external/crosvm/base/Android.bp (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker// This file is generated by cargo_embargo.
2*bb4ee6a4SAndroid Build Coastguard Worker// Do not modify this file after the first "rust_*" or "genrule" module
3*bb4ee6a4SAndroid Build Coastguard Worker// because the changes will be overridden on upgrade.
4*bb4ee6a4SAndroid Build Coastguard Worker// Content before the first "rust_*" or "genrule" module is preserved.
5*bb4ee6a4SAndroid Build Coastguard Worker
6*bb4ee6a4SAndroid Build Coastguard Workerpackage {
7*bb4ee6a4SAndroid Build Coastguard Worker    // See: http://go/android-license-faq
8*bb4ee6a4SAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
9*bb4ee6a4SAndroid Build Coastguard Worker    // all of the 'license_kinds' from "external_crosvm_license"
10*bb4ee6a4SAndroid Build Coastguard Worker    // to get the below license kinds:
11*bb4ee6a4SAndroid Build Coastguard Worker    //   SPDX-license-identifier-BSD
12*bb4ee6a4SAndroid Build Coastguard Worker    default_applicable_licenses: ["external_crosvm_license"],
13*bb4ee6a4SAndroid Build Coastguard Worker}
14*bb4ee6a4SAndroid Build Coastguard Worker
15*bb4ee6a4SAndroid Build Coastguard Workerrust_test {
16*bb4ee6a4SAndroid Build Coastguard Worker    name: "base_test_src_lib",
17*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
18*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: false, // Can't seem to access syslog in TH host tests.
19*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "base",
20*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
21*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
22*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "src/lib.rs",
23*bb4ee6a4SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
24*bb4ee6a4SAndroid Build Coastguard Worker    auto_gen_config: true,
25*bb4ee6a4SAndroid Build Coastguard Worker    test_options: {
26*bb4ee6a4SAndroid Build Coastguard Worker        unit_test: true,
27*bb4ee6a4SAndroid Build Coastguard Worker    },
28*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
29*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
30*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
31*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
32*bb4ee6a4SAndroid Build Coastguard Worker        "libchrono",
33*bb4ee6a4SAndroid Build Coastguard Worker        "libenv_logger",
34*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
35*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
36*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
37*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
38*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
39*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
40*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
41*bb4ee6a4SAndroid Build Coastguard Worker        "libtempfile",
42*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
43*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
44*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
45*bb4ee6a4SAndroid Build Coastguard Worker    ],
46*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
47*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_event_token_derive",
48*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
49*bb4ee6a4SAndroid Build Coastguard Worker    ],
50*bb4ee6a4SAndroid Build Coastguard Worker    target: {
51*bb4ee6a4SAndroid Build Coastguard Worker        android: {
52*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libandroid_log_sys"],
53*bb4ee6a4SAndroid Build Coastguard Worker        },
54*bb4ee6a4SAndroid Build Coastguard Worker        linux_bionic_arm64: {
55*bb4ee6a4SAndroid Build Coastguard Worker            // For ARM architecture, we use aarch64-linux-android for BOTH
56*bb4ee6a4SAndroid Build Coastguard Worker            // device and host targets. As a result, host targets are also
57*bb4ee6a4SAndroid Build Coastguard Worker            // built with target_os = "android". Therefore, sys_util/src/android
58*bb4ee6a4SAndroid Build Coastguard Worker            // is used and thus this android module is required.
59*bb4ee6a4SAndroid Build Coastguard Worker            // This seems incorrect, but is inevitable because rustc doesn't
60*bb4ee6a4SAndroid Build Coastguard Worker            // yet support a Linux-based target using Bionic as libc. We can't
61*bb4ee6a4SAndroid Build Coastguard Worker            // use aarch64-unknown-linux-gnu because it's using glibc which
62*bb4ee6a4SAndroid Build Coastguard Worker            // we don't support for cross-host builds.
63*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: [
64*bb4ee6a4SAndroid Build Coastguard Worker                "libandroid_log_sys",
65*bb4ee6a4SAndroid Build Coastguard Worker            ],
66*bb4ee6a4SAndroid Build Coastguard Worker        },
67*bb4ee6a4SAndroid Build Coastguard Worker    },
68*bb4ee6a4SAndroid Build Coastguard Worker    shared_libs: ["libcap"], // specified in src/linux/capabilities.rs
69*bb4ee6a4SAndroid Build Coastguard Worker}
70*bb4ee6a4SAndroid Build Coastguard Worker
71*bb4ee6a4SAndroid Build Coastguard Workerrust_test {
72*bb4ee6a4SAndroid Build Coastguard Worker    name: "base_test_tests_linux_main",
73*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
74*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: false, // Can't seem to access syslog in TH host tests.
75*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "linux",
76*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
77*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
78*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "tests/linux/main.rs",
79*bb4ee6a4SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
80*bb4ee6a4SAndroid Build Coastguard Worker    auto_gen_config: true,
81*bb4ee6a4SAndroid Build Coastguard Worker    test_options: {
82*bb4ee6a4SAndroid Build Coastguard Worker        unit_test: true,
83*bb4ee6a4SAndroid Build Coastguard Worker    },
84*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
85*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
86*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
87*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_rust",
88*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
89*bb4ee6a4SAndroid Build Coastguard Worker        "libchrono",
90*bb4ee6a4SAndroid Build Coastguard Worker        "libenv_logger",
91*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
92*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
93*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
94*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
95*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
96*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
97*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
98*bb4ee6a4SAndroid Build Coastguard Worker        "libtempfile",
99*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
100*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
101*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
102*bb4ee6a4SAndroid Build Coastguard Worker    ],
103*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
104*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_event_token_derive",
105*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
106*bb4ee6a4SAndroid Build Coastguard Worker    ],
107*bb4ee6a4SAndroid Build Coastguard Worker}
108*bb4ee6a4SAndroid Build Coastguard Worker
109*bb4ee6a4SAndroid Build Coastguard Workerrust_test {
110*bb4ee6a4SAndroid Build Coastguard Worker    name: "base_test_tests_syslog",
111*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
112*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
113*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "syslog",
114*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
115*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
116*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "tests/syslog.rs",
117*bb4ee6a4SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
118*bb4ee6a4SAndroid Build Coastguard Worker    auto_gen_config: true,
119*bb4ee6a4SAndroid Build Coastguard Worker    test_options: {
120*bb4ee6a4SAndroid Build Coastguard Worker        unit_test: true,
121*bb4ee6a4SAndroid Build Coastguard Worker    },
122*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
123*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
124*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
125*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_rust",
126*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
127*bb4ee6a4SAndroid Build Coastguard Worker        "libchrono",
128*bb4ee6a4SAndroid Build Coastguard Worker        "libenv_logger",
129*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
130*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
131*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
132*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
133*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
134*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
135*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
136*bb4ee6a4SAndroid Build Coastguard Worker        "libtempfile",
137*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
138*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
139*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
140*bb4ee6a4SAndroid Build Coastguard Worker    ],
141*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
142*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_event_token_derive",
143*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
144*bb4ee6a4SAndroid Build Coastguard Worker    ],
145*bb4ee6a4SAndroid Build Coastguard Worker}
146*bb4ee6a4SAndroid Build Coastguard Worker
147*bb4ee6a4SAndroid Build Coastguard Workerrust_test {
148*bb4ee6a4SAndroid Build Coastguard Worker    name: "base_test_tests_tube",
149*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
150*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
151*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "tube",
152*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
153*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
154*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "tests/tube.rs",
155*bb4ee6a4SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
156*bb4ee6a4SAndroid Build Coastguard Worker    auto_gen_config: true,
157*bb4ee6a4SAndroid Build Coastguard Worker    test_options: {
158*bb4ee6a4SAndroid Build Coastguard Worker        unit_test: true,
159*bb4ee6a4SAndroid Build Coastguard Worker    },
160*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
161*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
162*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
163*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_rust",
164*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
165*bb4ee6a4SAndroid Build Coastguard Worker        "libchrono",
166*bb4ee6a4SAndroid Build Coastguard Worker        "libenv_logger",
167*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
168*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
169*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
170*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
171*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
172*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
173*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
174*bb4ee6a4SAndroid Build Coastguard Worker        "libtempfile",
175*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
176*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
177*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
178*bb4ee6a4SAndroid Build Coastguard Worker    ],
179*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
180*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_event_token_derive",
181*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
182*bb4ee6a4SAndroid Build Coastguard Worker    ],
183*bb4ee6a4SAndroid Build Coastguard Worker    target: {
184*bb4ee6a4SAndroid Build Coastguard Worker        android: {
185*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libandroid_log_sys"],
186*bb4ee6a4SAndroid Build Coastguard Worker        },
187*bb4ee6a4SAndroid Build Coastguard Worker        linux_bionic_arm64: {
188*bb4ee6a4SAndroid Build Coastguard Worker            // For ARM architecture, we use aarch64-linux-android for BOTH
189*bb4ee6a4SAndroid Build Coastguard Worker            // device and host targets. As a result, host targets are also
190*bb4ee6a4SAndroid Build Coastguard Worker            // built with target_os = "android". Therefore, sys_util/src/android
191*bb4ee6a4SAndroid Build Coastguard Worker            // is used and thus this android module is required.
192*bb4ee6a4SAndroid Build Coastguard Worker            // This seems incorrect, but is inevitable because rustc doesn't
193*bb4ee6a4SAndroid Build Coastguard Worker            // yet support a Linux-based target using Bionic as libc. We can't
194*bb4ee6a4SAndroid Build Coastguard Worker            // use aarch64-unknown-linux-gnu because it's using glibc which
195*bb4ee6a4SAndroid Build Coastguard Worker            // we don't support for cross-host builds.
196*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: [
197*bb4ee6a4SAndroid Build Coastguard Worker                "libandroid_log_sys",
198*bb4ee6a4SAndroid Build Coastguard Worker            ],
199*bb4ee6a4SAndroid Build Coastguard Worker        },
200*bb4ee6a4SAndroid Build Coastguard Worker    },
201*bb4ee6a4SAndroid Build Coastguard Worker    shared_libs: ["libcap"], // specified in src/linux/capabilities.rs
202*bb4ee6a4SAndroid Build Coastguard Worker}
203*bb4ee6a4SAndroid Build Coastguard Worker
204*bb4ee6a4SAndroid Build Coastguard Workerrust_library {
205*bb4ee6a4SAndroid Build Coastguard Worker    name: "libbase_rust",
206*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
207*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
208*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "base",
209*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
210*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
211*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "src/lib.rs",
212*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
213*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
214*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
215*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
216*bb4ee6a4SAndroid Build Coastguard Worker        "libchrono",
217*bb4ee6a4SAndroid Build Coastguard Worker        "libenv_logger",
218*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
219*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
220*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
221*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
222*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
223*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
224*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
225*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
226*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
227*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
228*bb4ee6a4SAndroid Build Coastguard Worker    ],
229*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
230*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_event_token_derive",
231*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
232*bb4ee6a4SAndroid Build Coastguard Worker    ],
233*bb4ee6a4SAndroid Build Coastguard Worker    target: {
234*bb4ee6a4SAndroid Build Coastguard Worker        android: {
235*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libandroid_log_sys"],
236*bb4ee6a4SAndroid Build Coastguard Worker        },
237*bb4ee6a4SAndroid Build Coastguard Worker        linux_bionic_arm64: {
238*bb4ee6a4SAndroid Build Coastguard Worker            // For ARM architecture, we use aarch64-linux-android for BOTH
239*bb4ee6a4SAndroid Build Coastguard Worker            // device and host targets. As a result, host targets are also
240*bb4ee6a4SAndroid Build Coastguard Worker            // built with target_os = "android". Therefore, sys_util/src/android
241*bb4ee6a4SAndroid Build Coastguard Worker            // is used and thus this android module is required.
242*bb4ee6a4SAndroid Build Coastguard Worker            // This seems incorrect, but is inevitable because rustc doesn't
243*bb4ee6a4SAndroid Build Coastguard Worker            // yet support a Linux-based target using Bionic as libc. We can't
244*bb4ee6a4SAndroid Build Coastguard Worker            // use aarch64-unknown-linux-gnu because it's using glibc which
245*bb4ee6a4SAndroid Build Coastguard Worker            // we don't support for cross-host builds.
246*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: [
247*bb4ee6a4SAndroid Build Coastguard Worker                "libandroid_log_sys",
248*bb4ee6a4SAndroid Build Coastguard Worker            ],
249*bb4ee6a4SAndroid Build Coastguard Worker        },
250*bb4ee6a4SAndroid Build Coastguard Worker    },
251*bb4ee6a4SAndroid Build Coastguard Worker    shared_libs: ["libcap"], // specified in src/linux/capabilities.rs
252*bb4ee6a4SAndroid Build Coastguard Worker    visibility: ["//vendor:__subpackages__"],
253*bb4ee6a4SAndroid Build Coastguard Worker}
254