blob: 6f1c9a154773697602982418252b96e5d2584347 [file] [log] [blame]
Shikha Panwar55957112022-08-22 13:54:33 +00001package {
Aditya Choudhary53696172024-02-05 15:46:19 +00002 default_team: "trendy_team_virtualization",
Shikha Panwar55957112022-08-22 13:54:33 +00003 default_applicable_licenses: ["Android-Apache-2.0"],
4}
5
6rust_binary_host {
7 name: "initrd_bootconfig",
Nikita Ioffeda1b2732023-09-04 13:46:56 +01008 defaults: ["avf_build_flags_rust"],
Shikha Panwar55957112022-08-22 13:54:33 +00009 srcs: ["src/main.rs"],
10 rustlibs: [
11 "libanyhow",
Victor Hsiehb5bcfab2022-09-12 13:06:26 -070012 "libclap",
Shikha Panwar55957112022-08-22 13:54:33 +000013 ],
14 prefer_rlib: true,
15}
Shikha Panwarf46f96b2022-08-22 14:11:14 +000016
Andrew Walbranda8786d2022-12-01 14:54:27 +000017rust_test_host {
18 name: "initrd_bootconfig.test",
Nikita Ioffeda1b2732023-09-04 13:46:56 +010019 defaults: ["avf_build_flags_rust"],
Andrew Walbranda8786d2022-12-01 14:54:27 +000020 srcs: ["src/main.rs"],
21 rustlibs: [
22 "libanyhow",
23 "libclap",
24 ],
25 prefer_rlib: true,
26 test_suites: ["general-tests"],
27}
28
Shikha Panwarf46f96b2022-08-22 14:11:14 +000029python_binary_host {
30 name: "gen_vbmeta_bootconfig",
31 srcs: ["gen_vbmeta_bootconfig.py"],
32}
33
34genrule {
35 name: "microdroid_initrd_gen",
36 srcs: [
37 ":microdroid_ramdisk",
Nikita Ioffe57b4dfc2023-06-14 20:29:37 +000038 ":microdroid_fstab_ramdisk",
Shikha Panwarf46f96b2022-08-22 14:11:14 +000039 ],
40 out: ["microdroid_initrd.img"],
41 cmd: "cat $(in) > $(out)",
42}
43
Inseob Kim77c7f712023-11-06 17:01:02 +090044genrule {
Inseob Kim0276f612023-12-07 17:25:18 +090045 name: "microdroid_gki-android14-6.1_initrd_gen_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +090046 srcs: [
47 ":microdroid_ramdisk",
48 ":microdroid_fstab_ramdisk",
49 ":microdroid_gki_modules-6.1-arm64",
50 ],
51 out: ["microdroid_initrd.img"],
52 cmd: "cat $(in) > $(out)",
53}
54
55genrule {
Inseob Kim0276f612023-12-07 17:25:18 +090056 name: "microdroid_gki-android14-6.1_initrd_gen_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +090057 srcs: [
58 ":microdroid_ramdisk",
59 ":microdroid_fstab_ramdisk",
60 ":microdroid_gki_modules-6.1-x86_64",
61 ],
62 out: ["microdroid_initrd.img"],
63 cmd: "cat $(in) > $(out)",
64}
65
Shikha Panwarf46f96b2022-08-22 14:11:14 +000066// This contains vbmeta hashes & related (boot)configs which are passed to kernel/init
67genrule {
68 name: "microdroid_vbmeta_bootconfig_gen",
69 srcs: [":microdroid_vbmeta"],
70 out: ["bootconfig_microdroid_vbmeta"],
71 tools: [
72 "gen_vbmeta_bootconfig",
73 "avbtool",
74 ],
75 cmd: "$(location gen_vbmeta_bootconfig) $(location avbtool) $(in) > $(out)",
76}
77
78bootconfigs_arm64 = [
79 ":microdroid_bootconfig_arm64_gen",
80 ":microdroid_vbmeta_bootconfig_gen",
81]
82
83bootconfigs_x86_64 = [
84 ":microdroid_bootconfig_x86_64_gen",
85 ":microdroid_vbmeta_bootconfig_gen",
86]
87
88genrule {
Seungjae Yooe85831e2022-12-12 09:34:58 +090089 name: "microdroid_initrd_debuggable_arm64",
Shikha Panwarf46f96b2022-08-22 14:11:14 +000090 tools: ["initrd_bootconfig"],
91 srcs: [
92 ":microdroid_initrd_gen",
Seungjae Yooe85831e2022-12-12 09:34:58 +090093 ":microdroid_bootconfig_debuggable_src",
Shikha Panwarf46f96b2022-08-22 14:11:14 +000094 ] + bootconfigs_arm64,
Seungjae Yooe85831e2022-12-12 09:34:58 +090095 out: ["microdroid_initrd_debuggable_arm64"],
Shikha Panwar049c28b2023-01-10 05:25:05 +000096 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
Shikha Panwarf46f96b2022-08-22 14:11:14 +000097}
98
99genrule {
Inseob Kim0276f612023-12-07 17:25:18 +0900100 name: "microdroid_gki-android14-6.1_initrd_debuggable_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900101 tools: ["initrd_bootconfig"],
102 srcs: [
Inseob Kim0276f612023-12-07 17:25:18 +0900103 ":microdroid_gki-android14-6.1_initrd_gen_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900104 ":microdroid_bootconfig_debuggable_src",
105 ] + bootconfigs_arm64,
Inseob Kim0276f612023-12-07 17:25:18 +0900106 out: ["microdroid_gki-android14-6.1_initrd_debuggable_arm64"],
Inseob Kim77c7f712023-11-06 17:01:02 +0900107 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
108}
109
110genrule {
Seungjae Yooe85831e2022-12-12 09:34:58 +0900111 name: "microdroid_initrd_debuggable_x86_64",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000112 tools: ["initrd_bootconfig"],
113 srcs: [
114 ":microdroid_initrd_gen",
Seungjae Yooe85831e2022-12-12 09:34:58 +0900115 ":microdroid_bootconfig_debuggable_src",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000116 ] + bootconfigs_x86_64,
Seungjae Yooe85831e2022-12-12 09:34:58 +0900117 out: ["microdroid_initrd_debuggable_x86_64"],
Shikha Panwar049c28b2023-01-10 05:25:05 +0000118 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000119}
120
121genrule {
Inseob Kim0276f612023-12-07 17:25:18 +0900122 name: "microdroid_gki-android14-6.1_initrd_debuggable_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900123 tools: ["initrd_bootconfig"],
124 srcs: [
Inseob Kim0276f612023-12-07 17:25:18 +0900125 ":microdroid_gki-android14-6.1_initrd_gen_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900126 ":microdroid_bootconfig_debuggable_src",
127 ] + bootconfigs_x86_64,
Inseob Kim0276f612023-12-07 17:25:18 +0900128 out: ["microdroid_gki-android14-6.1_initrd_debuggable_x86_64"],
Inseob Kim77c7f712023-11-06 17:01:02 +0900129 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
130}
131
132genrule {
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000133 name: "microdroid_initrd_normal_arm64",
134 tools: ["initrd_bootconfig"],
135 srcs: [
136 ":microdroid_initrd_gen",
137 ":microdroid_bootconfig_normal_src",
138 ] + bootconfigs_arm64,
139 out: ["microdroid_initrd_normal_arm64"],
Shikha Panwar049c28b2023-01-10 05:25:05 +0000140 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000141}
142
143genrule {
Inseob Kim0276f612023-12-07 17:25:18 +0900144 name: "microdroid_gki-android14-6.1_initrd_normal_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900145 tools: ["initrd_bootconfig"],
146 srcs: [
Inseob Kim0276f612023-12-07 17:25:18 +0900147 ":microdroid_gki-android14-6.1_initrd_gen_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900148 ":microdroid_bootconfig_normal_src",
149 ] + bootconfigs_arm64,
Inseob Kim0276f612023-12-07 17:25:18 +0900150 out: ["microdroid_gki-android14-6.1_initrd_normal_arm64"],
Inseob Kim77c7f712023-11-06 17:01:02 +0900151 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
152}
153
154genrule {
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000155 name: "microdroid_initrd_normal_x86_64",
156 tools: ["initrd_bootconfig"],
157 srcs: [
158 ":microdroid_initrd_gen",
159 ":microdroid_bootconfig_normal_src",
160 ] + bootconfigs_x86_64,
161 out: ["microdroid_initrd_normal_x86_64"],
Shikha Panwar049c28b2023-01-10 05:25:05 +0000162 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000163}
164
Inseob Kim77c7f712023-11-06 17:01:02 +0900165genrule {
Inseob Kim0276f612023-12-07 17:25:18 +0900166 name: "microdroid_gki-android14-6.1_initrd_normal_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900167 tools: ["initrd_bootconfig"],
168 srcs: [
Inseob Kim0276f612023-12-07 17:25:18 +0900169 ":microdroid_gki-android14-6.1_initrd_gen_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900170 ":microdroid_bootconfig_normal_src",
171 ] + bootconfigs_x86_64,
Inseob Kim0276f612023-12-07 17:25:18 +0900172 out: ["microdroid_gki-android14-6.1_initrd_normal_x86_64"],
Inseob Kim77c7f712023-11-06 17:01:02 +0900173 cmd: "$(location initrd_bootconfig) attach --output $(out) $(in)",
174}
175
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000176prebuilt_etc {
Seungjae Yooe85831e2022-12-12 09:34:58 +0900177 name: "microdroid_initrd_debuggable",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000178 // We don't have ramdisk for architectures other than x86_64 & arm64
Alice Wang1c7e0eb2023-04-11 17:03:42 +0000179 src: ":empty_file",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000180 arch: {
181 x86_64: {
Seungjae Yooe85831e2022-12-12 09:34:58 +0900182 src: ":microdroid_initrd_debuggable_x86_64",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000183 },
184 arm64: {
Seungjae Yooe85831e2022-12-12 09:34:58 +0900185 src: ":microdroid_initrd_debuggable_arm64",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000186 },
187 },
Seungjae Yooe85831e2022-12-12 09:34:58 +0900188 filename: "microdroid_initrd_debuggable.img",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000189}
190
191prebuilt_etc {
Inseob Kim0276f612023-12-07 17:25:18 +0900192 name: "microdroid_gki-android14-6.1_initrd_debuggable",
Inseob Kim77c7f712023-11-06 17:01:02 +0900193 // We don't have ramdisk for architectures other than x86_64 & arm64
194 src: ":empty_file",
195 arch: {
196 x86_64: {
Inseob Kim0276f612023-12-07 17:25:18 +0900197 src: ":microdroid_gki-android14-6.1_initrd_debuggable_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900198 },
199 arm64: {
Inseob Kim0276f612023-12-07 17:25:18 +0900200 src: ":microdroid_gki-android14-6.1_initrd_debuggable_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900201 },
202 },
Inseob Kim0276f612023-12-07 17:25:18 +0900203 filename: "microdroid_gki-android14-6.1_initrd_debuggable.img",
Inseob Kim77c7f712023-11-06 17:01:02 +0900204}
205
206prebuilt_etc {
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000207 name: "microdroid_initrd_normal",
208 // We don't have ramdisk for architectures other than x86_64 & arm64
Alice Wang1c7e0eb2023-04-11 17:03:42 +0000209 src: ":empty_file",
Shikha Panwarf46f96b2022-08-22 14:11:14 +0000210 arch: {
211 x86_64: {
212 src: ":microdroid_initrd_normal_x86_64",
213 },
214 arm64: {
215 src: ":microdroid_initrd_normal_arm64",
216 },
217 },
218 filename: "microdroid_initrd_normal.img",
219}
Inseob Kim77c7f712023-11-06 17:01:02 +0900220
221prebuilt_etc {
Inseob Kim0276f612023-12-07 17:25:18 +0900222 name: "microdroid_gki-android14-6.1_initrd_normal",
Inseob Kim77c7f712023-11-06 17:01:02 +0900223 // We don't have ramdisk for architectures other than x86_64 & arm64
224 src: ":empty_file",
225 arch: {
226 x86_64: {
Inseob Kim0276f612023-12-07 17:25:18 +0900227 src: ":microdroid_gki-android14-6.1_initrd_normal_x86_64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900228 },
229 arm64: {
Inseob Kim0276f612023-12-07 17:25:18 +0900230 src: ":microdroid_gki-android14-6.1_initrd_normal_arm64",
Inseob Kim77c7f712023-11-06 17:01:02 +0900231 },
232 },
Inseob Kim0276f612023-12-07 17:25:18 +0900233 filename: "microdroid_gki-android14-6.1_initrd_normal.img",
Inseob Kim77c7f712023-11-06 17:01:02 +0900234}