xref: /aosp_15_r20/external/crosvm/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    default_applicable_licenses: ["external_crosvm_license"],
8*bb4ee6a4SAndroid Build Coastguard Worker}
9*bb4ee6a4SAndroid Build Coastguard Worker
10*bb4ee6a4SAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of
11*bb4ee6a4SAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect
12*bb4ee6a4SAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct.
13*bb4ee6a4SAndroid Build Coastguard Worker//
14*bb4ee6a4SAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory.
15*bb4ee6a4SAndroid Build Coastguard Worker//
16*bb4ee6a4SAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses,
17*bb4ee6a4SAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the
18*bb4ee6a4SAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed.
19*bb4ee6a4SAndroid Build Coastguard Worker//
20*bb4ee6a4SAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private"
21*bb4ee6a4SAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be
22*bb4ee6a4SAndroid Build Coastguard Worker// used in the current project.
23*bb4ee6a4SAndroid Build Coastguard Worker// See: http://go/android-license-faq
24*bb4ee6a4SAndroid Build Coastguard Workerlicense {
25*bb4ee6a4SAndroid Build Coastguard Worker    name: "external_crosvm_license",
26*bb4ee6a4SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
27*bb4ee6a4SAndroid Build Coastguard Worker    license_kinds: [
28*bb4ee6a4SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
29*bb4ee6a4SAndroid Build Coastguard Worker        "SPDX-license-identifier-BSD",
30*bb4ee6a4SAndroid Build Coastguard Worker        "SPDX-license-identifier-MIT",
31*bb4ee6a4SAndroid Build Coastguard Worker    ],
32*bb4ee6a4SAndroid Build Coastguard Worker    license_text: [
33*bb4ee6a4SAndroid Build Coastguard Worker        "LICENSE",
34*bb4ee6a4SAndroid Build Coastguard Worker    ],
35*bb4ee6a4SAndroid Build Coastguard Worker}
36*bb4ee6a4SAndroid Build Coastguard Worker
37*bb4ee6a4SAndroid Build Coastguard Workerrust_binary {
38*bb4ee6a4SAndroid Build Coastguard Worker    name: "crosvm",
39*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
40*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
41*bb4ee6a4SAndroid Build Coastguard Worker    prefer_rlib: true,
42*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "crosvm",
43*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
44*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
45*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "src/main.rs",
46*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
47*bb4ee6a4SAndroid Build Coastguard Worker    features: [
48*bb4ee6a4SAndroid Build Coastguard Worker        "android-sparse",
49*bb4ee6a4SAndroid Build Coastguard Worker        "android_display",
50*bb4ee6a4SAndroid Build Coastguard Worker        "android_display_stub",
51*bb4ee6a4SAndroid Build Coastguard Worker        "audio",
52*bb4ee6a4SAndroid Build Coastguard Worker        "audio_aaudio",
53*bb4ee6a4SAndroid Build Coastguard Worker        "balloon",
54*bb4ee6a4SAndroid Build Coastguard Worker        "config-file",
55*bb4ee6a4SAndroid Build Coastguard Worker        "fs_runtime_ugid_map",
56*bb4ee6a4SAndroid Build Coastguard Worker        "gdb",
57*bb4ee6a4SAndroid Build Coastguard Worker        "gdbstub",
58*bb4ee6a4SAndroid Build Coastguard Worker        "gdbstub_arch",
59*bb4ee6a4SAndroid Build Coastguard Worker        "geniezone",
60*bb4ee6a4SAndroid Build Coastguard Worker        "gfxstream",
61*bb4ee6a4SAndroid Build Coastguard Worker        "gpu",
62*bb4ee6a4SAndroid Build Coastguard Worker        "gpu_display",
63*bb4ee6a4SAndroid Build Coastguard Worker        "gunyah",
64*bb4ee6a4SAndroid Build Coastguard Worker        "libaaudio_stub",
65*bb4ee6a4SAndroid Build Coastguard Worker        "net",
66*bb4ee6a4SAndroid Build Coastguard Worker        "qcow",
67*bb4ee6a4SAndroid Build Coastguard Worker        "usb",
68*bb4ee6a4SAndroid Build Coastguard Worker        "virgl_renderer",
69*bb4ee6a4SAndroid Build Coastguard Worker    ],
70*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
71*bb4ee6a4SAndroid Build Coastguard Worker        "libacpi_tables",
72*bb4ee6a4SAndroid Build Coastguard Worker        "libandroid_audio",
73*bb4ee6a4SAndroid Build Coastguard Worker        "libanyhow",
74*bb4ee6a4SAndroid Build Coastguard Worker        "libarch",
75*bb4ee6a4SAndroid Build Coastguard Worker        "libargh",
76*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
77*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_rust",
78*bb4ee6a4SAndroid Build Coastguard Worker        "libbit_field_crosvm",
79*bb4ee6a4SAndroid Build Coastguard Worker        "libbroker_ipc",
80*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
81*bb4ee6a4SAndroid Build Coastguard Worker        "libcros_async",
82*bb4ee6a4SAndroid Build Coastguard Worker        "libcros_tracing",
83*bb4ee6a4SAndroid Build Coastguard Worker        "libcrosvm_cli",
84*bb4ee6a4SAndroid Build Coastguard Worker        "libdevices",
85*bb4ee6a4SAndroid Build Coastguard Worker        "libdisk",
86*bb4ee6a4SAndroid Build Coastguard Worker        "libext2",
87*bb4ee6a4SAndroid Build Coastguard Worker        "libgdbstub",
88*bb4ee6a4SAndroid Build Coastguard Worker        "libgdbstub_arch",
89*bb4ee6a4SAndroid Build Coastguard Worker        "libhypervisor",
90*bb4ee6a4SAndroid Build Coastguard Worker        "libjail",
91*bb4ee6a4SAndroid Build Coastguard Worker        "libkernel_cmdline",
92*bb4ee6a4SAndroid Build Coastguard Worker        "libkernel_loader",
93*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
94*bb4ee6a4SAndroid Build Coastguard Worker        "liblibcras",
95*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
96*bb4ee6a4SAndroid Build Coastguard Worker        "libmerge",
97*bb4ee6a4SAndroid Build Coastguard Worker        "libmetrics",
98*bb4ee6a4SAndroid Build Coastguard Worker        "libmetrics_events",
99*bb4ee6a4SAndroid Build Coastguard Worker        "libminijail_rust",
100*bb4ee6a4SAndroid Build Coastguard Worker        "libnet_util",
101*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
102*bb4ee6a4SAndroid Build Coastguard Worker        "libp9",
103*bb4ee6a4SAndroid Build Coastguard Worker        "libresources",
104*bb4ee6a4SAndroid Build Coastguard Worker        "librutabaga_gfx",
105*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
106*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
107*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_keyvalue",
108*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
109*bb4ee6a4SAndroid Build Coastguard Worker        "libstatic_assertions",
110*bb4ee6a4SAndroid Build Coastguard Worker        "libswap",
111*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
112*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
113*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
114*bb4ee6a4SAndroid Build Coastguard Worker        "libvhost",
115*bb4ee6a4SAndroid Build Coastguard Worker        "libvm_control",
116*bb4ee6a4SAndroid Build Coastguard Worker        "libvm_memory",
117*bb4ee6a4SAndroid Build Coastguard Worker        "libvmm_vhost",
118*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
119*bb4ee6a4SAndroid Build Coastguard Worker    ],
120*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
121*bb4ee6a4SAndroid Build Coastguard Worker        "libargh_helpers",
122*bb4ee6a4SAndroid Build Coastguard Worker        "libenumn",
123*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
124*bb4ee6a4SAndroid Build Coastguard Worker    ],
125*bb4ee6a4SAndroid Build Coastguard Worker    visibility: ["//visibility:public"],
126*bb4ee6a4SAndroid Build Coastguard Worker    arch: {
127*bb4ee6a4SAndroid Build Coastguard Worker        x86_64: {
128*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libx86_64_rust"],
129*bb4ee6a4SAndroid Build Coastguard Worker        },
130*bb4ee6a4SAndroid Build Coastguard Worker        arm64: {
131*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libaarch64"],
132*bb4ee6a4SAndroid Build Coastguard Worker        },
133*bb4ee6a4SAndroid Build Coastguard Worker        riscv64: {
134*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libriscv64"],
135*bb4ee6a4SAndroid Build Coastguard Worker        },
136*bb4ee6a4SAndroid Build Coastguard Worker    },
137*bb4ee6a4SAndroid Build Coastguard Worker    target: {
138*bb4ee6a4SAndroid Build Coastguard Worker        host: {
139*bb4ee6a4SAndroid Build Coastguard Worker            strip: {
140*bb4ee6a4SAndroid Build Coastguard Worker                keep_symbols_and_debug_frame: true,
141*bb4ee6a4SAndroid Build Coastguard Worker            },
142*bb4ee6a4SAndroid Build Coastguard Worker        },
143*bb4ee6a4SAndroid Build Coastguard Worker        android: {
144*bb4ee6a4SAndroid Build Coastguard Worker            shared_libs: [
145*bb4ee6a4SAndroid Build Coastguard Worker                // TODO(b/332677108): remove libc++ when display service is rewritten in rust.
146*bb4ee6a4SAndroid Build Coastguard Worker                "libc++",
147*bb4ee6a4SAndroid Build Coastguard Worker                "libbinder_ndk",
148*bb4ee6a4SAndroid Build Coastguard Worker                "libnativewindow",
149*bb4ee6a4SAndroid Build Coastguard Worker                "libprocessgroup",
150*bb4ee6a4SAndroid Build Coastguard Worker            ],
151*bb4ee6a4SAndroid Build Coastguard Worker        },
152*bb4ee6a4SAndroid Build Coastguard Worker        host_linux: {
153*bb4ee6a4SAndroid Build Coastguard Worker            shared_libs: [
154*bb4ee6a4SAndroid Build Coastguard Worker                "libprocessgroup",
155*bb4ee6a4SAndroid Build Coastguard Worker            ],
156*bb4ee6a4SAndroid Build Coastguard Worker        },
157*bb4ee6a4SAndroid Build Coastguard Worker        linux_bionic_arm64: {
158*bb4ee6a4SAndroid Build Coastguard Worker            relative_install_path: "aarch64-linux-bionic",
159*bb4ee6a4SAndroid Build Coastguard Worker        },
160*bb4ee6a4SAndroid Build Coastguard Worker        linux_glibc_x86_64: {
161*bb4ee6a4SAndroid Build Coastguard Worker            relative_install_path: "x86_64-linux-gnu",
162*bb4ee6a4SAndroid Build Coastguard Worker        },
163*bb4ee6a4SAndroid Build Coastguard Worker        linux_musl_x86_64: {
164*bb4ee6a4SAndroid Build Coastguard Worker            relative_install_path: "x86_64-linux-musl",
165*bb4ee6a4SAndroid Build Coastguard Worker        },
166*bb4ee6a4SAndroid Build Coastguard Worker        linux_musl_arm64: {
167*bb4ee6a4SAndroid Build Coastguard Worker            relative_install_path: "aarch64-linux-musl",
168*bb4ee6a4SAndroid Build Coastguard Worker        },
169*bb4ee6a4SAndroid Build Coastguard Worker    },
170*bb4ee6a4SAndroid Build Coastguard Worker    ld_flags: [
171*bb4ee6a4SAndroid Build Coastguard Worker        "-Wl,--rpath,\\$$ORIGIN",
172*bb4ee6a4SAndroid Build Coastguard Worker        "-Wl,--rpath,\\$$ORIGIN/../../lib64",
173*bb4ee6a4SAndroid Build Coastguard Worker    ],
174*bb4ee6a4SAndroid Build Coastguard Worker
175*bb4ee6a4SAndroid Build Coastguard Worker}
176*bb4ee6a4SAndroid Build Coastguard Worker
177*bb4ee6a4SAndroid Build Coastguard Workerrust_test {
178*bb4ee6a4SAndroid Build Coastguard Worker    name: "crosvm_test_src_main",
179*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_inner_defaults"],
180*bb4ee6a4SAndroid Build Coastguard Worker    host_supported: true,
181*bb4ee6a4SAndroid Build Coastguard Worker    crate_name: "crosvm",
182*bb4ee6a4SAndroid Build Coastguard Worker    cargo_env_compat: true,
183*bb4ee6a4SAndroid Build Coastguard Worker    cargo_pkg_version: "0.1.0",
184*bb4ee6a4SAndroid Build Coastguard Worker    crate_root: "src/main.rs",
185*bb4ee6a4SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
186*bb4ee6a4SAndroid Build Coastguard Worker    auto_gen_config: true,
187*bb4ee6a4SAndroid Build Coastguard Worker    test_options: {
188*bb4ee6a4SAndroid Build Coastguard Worker        unit_test: false,
189*bb4ee6a4SAndroid Build Coastguard Worker    },
190*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2021",
191*bb4ee6a4SAndroid Build Coastguard Worker    features: [
192*bb4ee6a4SAndroid Build Coastguard Worker        "android-sparse",
193*bb4ee6a4SAndroid Build Coastguard Worker        "android_display",
194*bb4ee6a4SAndroid Build Coastguard Worker        "android_display_stub",
195*bb4ee6a4SAndroid Build Coastguard Worker        "audio",
196*bb4ee6a4SAndroid Build Coastguard Worker        "audio_aaudio",
197*bb4ee6a4SAndroid Build Coastguard Worker        "balloon",
198*bb4ee6a4SAndroid Build Coastguard Worker        "config-file",
199*bb4ee6a4SAndroid Build Coastguard Worker        "fs_runtime_ugid_map",
200*bb4ee6a4SAndroid Build Coastguard Worker        "gdb",
201*bb4ee6a4SAndroid Build Coastguard Worker        "gdbstub",
202*bb4ee6a4SAndroid Build Coastguard Worker        "gdbstub_arch",
203*bb4ee6a4SAndroid Build Coastguard Worker        "geniezone",
204*bb4ee6a4SAndroid Build Coastguard Worker        "gfxstream",
205*bb4ee6a4SAndroid Build Coastguard Worker        "gpu",
206*bb4ee6a4SAndroid Build Coastguard Worker        "gpu_display",
207*bb4ee6a4SAndroid Build Coastguard Worker        "gunyah",
208*bb4ee6a4SAndroid Build Coastguard Worker        "libaaudio_stub",
209*bb4ee6a4SAndroid Build Coastguard Worker        "net",
210*bb4ee6a4SAndroid Build Coastguard Worker        "qcow",
211*bb4ee6a4SAndroid Build Coastguard Worker        "usb",
212*bb4ee6a4SAndroid Build Coastguard Worker        "virgl_renderer",
213*bb4ee6a4SAndroid Build Coastguard Worker    ],
214*bb4ee6a4SAndroid Build Coastguard Worker    rustlibs: [
215*bb4ee6a4SAndroid Build Coastguard Worker        "libacpi_tables",
216*bb4ee6a4SAndroid Build Coastguard Worker        "libandroid_audio",
217*bb4ee6a4SAndroid Build Coastguard Worker        "libanyhow",
218*bb4ee6a4SAndroid Build Coastguard Worker        "libarch",
219*bb4ee6a4SAndroid Build Coastguard Worker        "libargh",
220*bb4ee6a4SAndroid Build Coastguard Worker        "libaudio_streams",
221*bb4ee6a4SAndroid Build Coastguard Worker        "libbase_rust",
222*bb4ee6a4SAndroid Build Coastguard Worker        "libbit_field_crosvm",
223*bb4ee6a4SAndroid Build Coastguard Worker        "libbroker_ipc",
224*bb4ee6a4SAndroid Build Coastguard Worker        "libcfg_if",
225*bb4ee6a4SAndroid Build Coastguard Worker        "libcros_async",
226*bb4ee6a4SAndroid Build Coastguard Worker        "libcros_tracing",
227*bb4ee6a4SAndroid Build Coastguard Worker        "libcrosvm_cli",
228*bb4ee6a4SAndroid Build Coastguard Worker        "libdevices",
229*bb4ee6a4SAndroid Build Coastguard Worker        "libdisk",
230*bb4ee6a4SAndroid Build Coastguard Worker        "libext2",
231*bb4ee6a4SAndroid Build Coastguard Worker        "libgdbstub",
232*bb4ee6a4SAndroid Build Coastguard Worker        "libgdbstub_arch",
233*bb4ee6a4SAndroid Build Coastguard Worker        "libhypervisor",
234*bb4ee6a4SAndroid Build Coastguard Worker        "libjail",
235*bb4ee6a4SAndroid Build Coastguard Worker        "libkernel_cmdline",
236*bb4ee6a4SAndroid Build Coastguard Worker        "libkernel_loader",
237*bb4ee6a4SAndroid Build Coastguard Worker        "liblibc",
238*bb4ee6a4SAndroid Build Coastguard Worker        "liblibcras",
239*bb4ee6a4SAndroid Build Coastguard Worker        "liblog_rust",
240*bb4ee6a4SAndroid Build Coastguard Worker        "libmerge",
241*bb4ee6a4SAndroid Build Coastguard Worker        "libmetrics",
242*bb4ee6a4SAndroid Build Coastguard Worker        "libmetrics_events",
243*bb4ee6a4SAndroid Build Coastguard Worker        "libminijail_rust",
244*bb4ee6a4SAndroid Build Coastguard Worker        "libnet_util",
245*bb4ee6a4SAndroid Build Coastguard Worker        "libonce_cell",
246*bb4ee6a4SAndroid Build Coastguard Worker        "libp9",
247*bb4ee6a4SAndroid Build Coastguard Worker        "librand",
248*bb4ee6a4SAndroid Build Coastguard Worker        "libresources",
249*bb4ee6a4SAndroid Build Coastguard Worker        "librutabaga_gfx",
250*bb4ee6a4SAndroid Build Coastguard Worker        "libserde",
251*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_json",
252*bb4ee6a4SAndroid Build Coastguard Worker        "libserde_keyvalue",
253*bb4ee6a4SAndroid Build Coastguard Worker        "libsmallvec",
254*bb4ee6a4SAndroid Build Coastguard Worker        "libstatic_assertions",
255*bb4ee6a4SAndroid Build Coastguard Worker        "libswap",
256*bb4ee6a4SAndroid Build Coastguard Worker        "libsync_rust",
257*bb4ee6a4SAndroid Build Coastguard Worker        "libtempfile",
258*bb4ee6a4SAndroid Build Coastguard Worker        "libthiserror",
259*bb4ee6a4SAndroid Build Coastguard Worker        "libuuid",
260*bb4ee6a4SAndroid Build Coastguard Worker        "libvhost",
261*bb4ee6a4SAndroid Build Coastguard Worker        "libvm_control",
262*bb4ee6a4SAndroid Build Coastguard Worker        "libvm_memory",
263*bb4ee6a4SAndroid Build Coastguard Worker        "libvmm_vhost",
264*bb4ee6a4SAndroid Build Coastguard Worker        "libzerocopy",
265*bb4ee6a4SAndroid Build Coastguard Worker    ],
266*bb4ee6a4SAndroid Build Coastguard Worker    proc_macros: [
267*bb4ee6a4SAndroid Build Coastguard Worker        "libargh_helpers",
268*bb4ee6a4SAndroid Build Coastguard Worker        "libenumn",
269*bb4ee6a4SAndroid Build Coastguard Worker        "libremain",
270*bb4ee6a4SAndroid Build Coastguard Worker    ],
271*bb4ee6a4SAndroid Build Coastguard Worker    arch: {
272*bb4ee6a4SAndroid Build Coastguard Worker        x86_64: {
273*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libx86_64_rust"],
274*bb4ee6a4SAndroid Build Coastguard Worker        },
275*bb4ee6a4SAndroid Build Coastguard Worker        arm64: {
276*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libaarch64"],
277*bb4ee6a4SAndroid Build Coastguard Worker        },
278*bb4ee6a4SAndroid Build Coastguard Worker        riscv64: {
279*bb4ee6a4SAndroid Build Coastguard Worker            rustlibs: ["libriscv64"],
280*bb4ee6a4SAndroid Build Coastguard Worker        },
281*bb4ee6a4SAndroid Build Coastguard Worker    },
282*bb4ee6a4SAndroid Build Coastguard Worker    target: {
283*bb4ee6a4SAndroid Build Coastguard Worker        host: {
284*bb4ee6a4SAndroid Build Coastguard Worker            strip: {
285*bb4ee6a4SAndroid Build Coastguard Worker                keep_symbols_and_debug_frame: true,
286*bb4ee6a4SAndroid Build Coastguard Worker            },
287*bb4ee6a4SAndroid Build Coastguard Worker        },
288*bb4ee6a4SAndroid Build Coastguard Worker        android: {
289*bb4ee6a4SAndroid Build Coastguard Worker            shared_libs: [
290*bb4ee6a4SAndroid Build Coastguard Worker                "libprocessgroup",
291*bb4ee6a4SAndroid Build Coastguard Worker            ],
292*bb4ee6a4SAndroid Build Coastguard Worker        },
293*bb4ee6a4SAndroid Build Coastguard Worker        host_linux: {
294*bb4ee6a4SAndroid Build Coastguard Worker            shared_libs: [
295*bb4ee6a4SAndroid Build Coastguard Worker                "libprocessgroup",
296*bb4ee6a4SAndroid Build Coastguard Worker            ],
297*bb4ee6a4SAndroid Build Coastguard Worker        },
298*bb4ee6a4SAndroid Build Coastguard Worker    },
299*bb4ee6a4SAndroid Build Coastguard Worker    ld_flags: [
300*bb4ee6a4SAndroid Build Coastguard Worker        "-Wl,--rpath,\\$$ORIGIN",
301*bb4ee6a4SAndroid Build Coastguard Worker        "-Wl,--rpath,\\$$ORIGIN/../../lib64",
302*bb4ee6a4SAndroid Build Coastguard Worker    ],
303*bb4ee6a4SAndroid Build Coastguard Worker
304*bb4ee6a4SAndroid Build Coastguard Worker}
305*bb4ee6a4SAndroid Build Coastguard Worker
306*bb4ee6a4SAndroid Build Coastguard Workerrust_defaults {
307*bb4ee6a4SAndroid Build Coastguard Worker    name: "crosvm_defaults",
308*bb4ee6a4SAndroid Build Coastguard Worker    edition: "2018",
309*bb4ee6a4SAndroid Build Coastguard Worker    enabled: false,
310*bb4ee6a4SAndroid Build Coastguard Worker    target: {
311*bb4ee6a4SAndroid Build Coastguard Worker        linux_glibc_x86_64: {
312*bb4ee6a4SAndroid Build Coastguard Worker            enabled: true,
313*bb4ee6a4SAndroid Build Coastguard Worker        },
314*bb4ee6a4SAndroid Build Coastguard Worker        linux_musl_x86_64: {
315*bb4ee6a4SAndroid Build Coastguard Worker            enabled: true,
316*bb4ee6a4SAndroid Build Coastguard Worker        },
317*bb4ee6a4SAndroid Build Coastguard Worker        android64: {
318*bb4ee6a4SAndroid Build Coastguard Worker            compile_multilib: "64",
319*bb4ee6a4SAndroid Build Coastguard Worker            enabled: true,
320*bb4ee6a4SAndroid Build Coastguard Worker        },
321*bb4ee6a4SAndroid Build Coastguard Worker        linux_bionic_arm64: {
322*bb4ee6a4SAndroid Build Coastguard Worker            enabled: true,
323*bb4ee6a4SAndroid Build Coastguard Worker        },
324*bb4ee6a4SAndroid Build Coastguard Worker        linux_musl_arm64: {
325*bb4ee6a4SAndroid Build Coastguard Worker            enabled: true,
326*bb4ee6a4SAndroid Build Coastguard Worker        },
327*bb4ee6a4SAndroid Build Coastguard Worker        darwin: {
328*bb4ee6a4SAndroid Build Coastguard Worker            enabled: false,
329*bb4ee6a4SAndroid Build Coastguard Worker        },
330*bb4ee6a4SAndroid Build Coastguard Worker    },
331*bb4ee6a4SAndroid Build Coastguard Worker    apex_available: [
332*bb4ee6a4SAndroid Build Coastguard Worker        "com.android.virt",
333*bb4ee6a4SAndroid Build Coastguard Worker    ],
334*bb4ee6a4SAndroid Build Coastguard Worker    defaults_visibility: [
335*bb4ee6a4SAndroid Build Coastguard Worker        "//external/crosvm:__subpackages__",
336*bb4ee6a4SAndroid Build Coastguard Worker        "//packages/modules/Virtualization/guest/authfs",
337*bb4ee6a4SAndroid Build Coastguard Worker        "//packages/modules/Virtualization/tests/authfs",
338*bb4ee6a4SAndroid Build Coastguard Worker        // For QCOM's crosvm fork.
339*bb4ee6a4SAndroid Build Coastguard Worker        "//vendor:__subpackages__",
340*bb4ee6a4SAndroid Build Coastguard Worker    ],
341*bb4ee6a4SAndroid Build Coastguard Worker}
342*bb4ee6a4SAndroid Build Coastguard Worker
343*bb4ee6a4SAndroid Build Coastguard Worker// "crosvm_defaults" is being used outside of external/crosvm, so we need a
344*bb4ee6a4SAndroid Build Coastguard Worker// layer of indirection to add options that would break those users.
345*bb4ee6a4SAndroid Build Coastguard Worker//
346*bb4ee6a4SAndroid Build Coastguard Worker// TODO(b/238324526): move others off of "crosvm_defaults"
347*bb4ee6a4SAndroid Build Coastguard Workerrust_defaults {
348*bb4ee6a4SAndroid Build Coastguard Worker    name: "crosvm_inner_defaults",
349*bb4ee6a4SAndroid Build Coastguard Worker    defaults: ["crosvm_defaults"],
350*bb4ee6a4SAndroid Build Coastguard Worker    defaults_visibility: ["//external/crosvm:__subpackages__"],
351*bb4ee6a4SAndroid Build Coastguard Worker    visibility: ["//external/crosvm:__subpackages__"],
352*bb4ee6a4SAndroid Build Coastguard Worker}
353