blob: 723190417477b98f298f701868f193a83b9bea90 [file] [log] [blame]
David Brazdil1baa9a92022-06-28 14:47:50 +01001package {
Aditya Choudhary53696172024-02-05 15:46:19 +00002 default_team: "trendy_team_virtualization",
David Brazdil1baa9a92022-06-28 14:47:50 +01003 default_applicable_licenses: ["Android-Apache-2.0"],
4}
5
6rust_bindgen {
7 name: "liblibfdt_bindgen",
8 crate_name: "libfdt_bindgen",
Nikita Ioffeda1b2732023-09-04 13:46:56 +01009 defaults: ["avf_build_flags_rust"],
David Brazdil1baa9a92022-06-28 14:47:50 +010010 wrapper_src: "bindgen/fdt.h",
11 source_stem: "bindings",
12 bindgen_flags: [
David Brazdil1baa9a92022-06-28 14:47:50 +010013 "--allowlist-type=fdt_.*",
14 "--allowlist-function=fdt_.*",
15 "--allowlist-var=FDT_.*",
16 "--use-core",
17 "--raw-line=#![no_std]",
18 "--ctypes-prefix=core::ffi",
19 ],
20 static_libs: [
21 "libfdt",
22 ],
23 apex_available: ["com.android.virt"],
24}
25
26rust_library_rlib {
27 name: "liblibfdt",
28 crate_name: "libfdt",
Nikita Ioffeda1b2732023-09-04 13:46:56 +010029 defaults: ["avf_build_flags_rust"],
David Brazdil1baa9a92022-06-28 14:47:50 +010030 srcs: [
31 "src/lib.rs",
32 ":liblibfdt_bindgen",
33 ],
34 edition: "2021",
35 no_stdlibs: true,
36 prefer_rlib: true,
37 stdlibs: [
38 "libcore.rust_sysroot",
39 ],
40 rustlibs: [
Pierre-Clément Tosi1bf532b2023-11-13 11:06:20 +000041 "libcstr",
David Brazdil1baa9a92022-06-28 14:47:50 +010042 "liblibfdt_bindgen",
Pierre-Clément Tosic27c4272023-05-19 15:46:26 +000043 "libzerocopy_nostd",
David Brazdil1baa9a92022-06-28 14:47:50 +010044 ],
45 whole_static_libs: [
46 "libfdt",
47 ],
48 apex_available: ["com.android.virt"],
49}
Alice Wang9d4df702023-05-25 14:14:12 +000050
51rust_test {
52 name: "liblibfdt.integration_test",
53 crate_name: "libfdt_test",
Nikita Ioffeda1b2732023-09-04 13:46:56 +010054 defaults: ["avf_build_flags_rust"],
Alice Wang9d4df702023-05-25 14:14:12 +000055 srcs: ["tests/*.rs"],
56 test_suites: ["general-tests"],
57 data: [
Alice Wang2422bdc2023-06-12 08:37:55 +000058 ":fdt_test_tree_one_memory_range_dtb",
59 ":fdt_test_tree_multiple_memory_ranges_dtb",
60 ":fdt_test_tree_empty_memory_range_dtb",
61 ":fdt_test_tree_no_memory_node_dtb",
Jaewan Kim17ba7a32023-10-19 13:25:15 +090062 ":fdt_test_tree_phandle_dtb",
Alice Wang9d4df702023-05-25 14:14:12 +000063 ],
64 prefer_rlib: true,
65 rustlibs: [
Pierre-Clément Tosi1bf532b2023-11-13 11:06:20 +000066 "libcstr",
Alice Wang9d4df702023-05-25 14:14:12 +000067 "liblibfdt",
68 ],
69}
70
71genrule {
Alice Wang2422bdc2023-06-12 08:37:55 +000072 name: "fdt_test_tree_one_memory_range_dtb",
Cole Faustcad8d5e2023-11-20 15:09:27 -080073 tools: ["dtc"],
74 srcs: [
75 "tests/data/test_tree_one_memory_range.dts",
76 "tests/data/test_tree_no_memory_node.dts",
77 ],
78 cmd: "$(location dtc) -I dts -O dtb $(location tests/data/test_tree_one_memory_range.dts) -o $(out)",
Alice Wang2422bdc2023-06-12 08:37:55 +000079 out: ["data/test_tree_one_memory_range.dtb"],
80}
81
82genrule {
83 name: "fdt_test_tree_multiple_memory_ranges_dtb",
Cole Faustcad8d5e2023-11-20 15:09:27 -080084 tools: ["dtc"],
85 srcs: [
86 "tests/data/test_tree_multiple_memory_ranges.dts",
87 "tests/data/test_tree_no_memory_node.dts",
88 ],
89 cmd: "$(location dtc) -I dts -O dtb $(location tests/data/test_tree_multiple_memory_ranges.dts) -o $(out)",
Alice Wang2422bdc2023-06-12 08:37:55 +000090 out: ["data/test_tree_multiple_memory_ranges.dtb"],
91}
92
93genrule {
94 name: "fdt_test_tree_empty_memory_range_dtb",
Cole Faustcad8d5e2023-11-20 15:09:27 -080095 tools: ["dtc"],
96 srcs: [
97 "tests/data/test_tree_empty_memory_range.dts",
98 "tests/data/test_tree_no_memory_node.dts",
99 ],
100 cmd: "$(location dtc) -I dts -O dtb $(location tests/data/test_tree_empty_memory_range.dts) -o $(out)",
Alice Wang2422bdc2023-06-12 08:37:55 +0000101 out: ["data/test_tree_empty_memory_range.dtb"],
102}
103
104genrule {
105 name: "fdt_test_tree_no_memory_node_dtb",
Jaewan Kim0df5fb12023-09-24 23:33:54 +0900106 defaults: ["dts_to_dtb"],
Alice Wang2422bdc2023-06-12 08:37:55 +0000107 srcs: ["tests/data/test_tree_no_memory_node.dts"],
108 out: ["data/test_tree_no_memory_node.dtb"],
Alice Wang9d4df702023-05-25 14:14:12 +0000109}
Jaewan Kim17ba7a32023-10-19 13:25:15 +0900110
111genrule {
112 name: "fdt_test_tree_phandle_dtb",
113 defaults: ["dts_to_dtb"],
114 srcs: ["tests/data/test_tree_phandle.dts"],
115 out: ["data/test_tree_phandle.dtb"],
116}