blob: 72be0b0a4300711f2733dc703db22ddad26cab27 [file] [log] [blame]
Bob Badour47dac8e2022-05-05 07:11:36 -07001package {
2 default_applicable_licenses: ["Android-Apache-2.0"],
3}
4
David Brazdil30a7f082022-07-07 15:30:14 +01005rust_defaults {
6 name: "vmbase_rust_defaults",
Alan Stokes6472ccd2022-08-31 13:41:28 +01007 edition: "2021",
David Brazdil30a7f082022-07-07 15:30:14 +01008 host_supported: false,
9 enabled: false,
10 target: {
11 android_arm64: {
12 enabled: true,
13 },
14 },
15}
16
17rust_defaults {
18 name: "vmbase_ffi_defaults",
19 defaults: ["vmbase_rust_defaults"],
20 no_stdlibs: true,
21 stdlibs: [
22 "libcompiler_builtins.rust_sysroot",
23 "libcore.rust_sysroot",
24 ],
25}
26
27cc_defaults {
28 name: "vmbase_cc_defaults",
29 nocrt: true,
30 system_shared_libs: [],
31 stl: "none",
32 installable: false,
33 enabled: false,
34 target: {
35 android_arm64: {
36 enabled: true,
37 },
38 },
39 sanitize: {
40 hwaddress: false,
41 },
42}
43
44cc_defaults {
45 name: "vmbase_elf_defaults",
46 defaults: ["vmbase_cc_defaults"],
David Brazdil30a7f082022-07-07 15:30:14 +010047 static_executable: true,
48 static_libs: [
49 "libvmbase_entry",
50 ],
Pierre-Clément Tosi2098eda2022-09-09 12:02:02 +010051 installable: false,
Pierre-Clément Tosi48e013f2022-09-09 10:51:18 +010052 enabled: false,
53 target: {
54 android_arm64: {
55 enabled: true,
56 },
57 },
David Brazdil30a7f082022-07-07 15:30:14 +010058}
59
Andrew Walbrandd74b902022-04-14 16:12:50 +000060rust_library_rlib {
61 name: "libvmbase",
David Brazdil30a7f082022-07-07 15:30:14 +010062 defaults: ["vmbase_rust_defaults"],
Andrew Walbrandd74b902022-04-14 16:12:50 +000063 crate_name: "vmbase",
64 srcs: ["src/lib.rs"],
Andrew Walbrandd74b902022-04-14 16:12:50 +000065 rustlibs: [
Pierre-Clément Tosi3d4c5c32023-05-31 16:57:06 +000066 "libaarch64_paging",
Alice Wangf47b2342023-06-02 11:51:57 +000067 "libbuddy_system_allocator",
68 "libhyp",
David Brazdil8b557772022-07-05 12:22:20 +010069 "liblog_rust_nostd",
Andrew Walbranf44f1602023-05-30 14:59:19 +000070 "libsmccc",
Andrew Walbrandd74b902022-04-14 16:12:50 +000071 "libspin_nostd",
72 ],
Pierre-Clément Tosi50939ad2022-12-09 17:57:37 +000073 whole_static_libs: [
Pierre-Clément Tosi9f2f4462022-12-09 19:13:29 +000074 "librust_baremetal",
Pierre-Clément Tosi50939ad2022-12-09 17:57:37 +000075 ],
Alice Wang4dd20932023-05-26 13:47:16 +000076 features: [
77 "cpu_feat_hafdbs",
78 ],
Andrew Walbrandd74b902022-04-14 16:12:50 +000079 apex_available: ["com.android.virt"],
80}
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000081
82cc_library_static {
83 name: "libvmbase_entry",
David Brazdil30a7f082022-07-07 15:30:14 +010084 defaults: ["vmbase_cc_defaults"],
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000085 srcs: [
86 "entry.S",
87 "exceptions.S",
Pierre-Clément Tosid40ff912022-06-30 16:11:33 +010088 "exceptions_panic.S",
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000089 ],
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000090 no_libcrt: true,
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000091 apex_available: ["com.android.virt"],
92}
Andrew Walbrana5b7af52022-07-06 15:06:20 +000093
94filegroup {
95 name: "vmbase_sections",
96 srcs: ["sections.ld"],
97}