blob: 9b246c069934c0efca95218b91b45eab0c68d7d9 [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",
David Brazdil8b557772022-07-05 12:22:20 +010067 "liblog_rust_nostd",
Andrew Walbranf44f1602023-05-30 14:59:19 +000068 "libsmccc",
Andrew Walbrandd74b902022-04-14 16:12:50 +000069 "libspin_nostd",
70 ],
Pierre-Clément Tosi50939ad2022-12-09 17:57:37 +000071 whole_static_libs: [
Pierre-Clément Tosi9f2f4462022-12-09 19:13:29 +000072 "librust_baremetal",
Pierre-Clément Tosi50939ad2022-12-09 17:57:37 +000073 ],
Alice Wang4dd20932023-05-26 13:47:16 +000074 features: [
75 "cpu_feat_hafdbs",
76 ],
Andrew Walbrandd74b902022-04-14 16:12:50 +000077 apex_available: ["com.android.virt"],
78}
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000079
80cc_library_static {
81 name: "libvmbase_entry",
David Brazdil30a7f082022-07-07 15:30:14 +010082 defaults: ["vmbase_cc_defaults"],
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000083 srcs: [
84 "entry.S",
85 "exceptions.S",
Pierre-Clément Tosid40ff912022-06-30 16:11:33 +010086 "exceptions_panic.S",
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000087 ],
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000088 no_libcrt: true,
Andrew Walbranf71e6ee2022-04-22 14:04:27 +000089 apex_available: ["com.android.virt"],
90}
Andrew Walbrana5b7af52022-07-06 15:06:20 +000091
92filegroup {
93 name: "vmbase_sections",
94 srcs: ["sections.ld"],
95}