blob: 402040c31069ac8435078f451724eb6fef2d7056 [file] [log] [blame]
David Brazdil1baa9a92022-06-28 14:47:50 +01001package {
2 default_applicable_licenses: ["Android-Apache-2.0"],
3}
4
5rust_bindgen {
6 name: "liblibfdt_bindgen",
7 crate_name: "libfdt_bindgen",
Nikita Ioffeda1b2732023-09-04 13:46:56 +01008 defaults: ["avf_build_flags_rust"],
David Brazdil1baa9a92022-06-28 14:47:50 +01009 wrapper_src: "bindgen/fdt.h",
10 source_stem: "bindings",
11 bindgen_flags: [
David Brazdil1baa9a92022-06-28 14:47:50 +010012 "--allowlist-type=fdt_.*",
13 "--allowlist-function=fdt_.*",
14 "--allowlist-var=FDT_.*",
15 "--use-core",
16 "--raw-line=#![no_std]",
17 "--ctypes-prefix=core::ffi",
18 ],
19 static_libs: [
20 "libfdt",
21 ],
22 apex_available: ["com.android.virt"],
23}
24
25rust_library_rlib {
26 name: "liblibfdt",
27 crate_name: "libfdt",
Nikita Ioffeda1b2732023-09-04 13:46:56 +010028 defaults: ["avf_build_flags_rust"],
David Brazdil1baa9a92022-06-28 14:47:50 +010029 srcs: [
30 "src/lib.rs",
31 ":liblibfdt_bindgen",
32 ],
33 edition: "2021",
34 no_stdlibs: true,
35 prefer_rlib: true,
36 stdlibs: [
37 "libcore.rust_sysroot",
38 ],
39 rustlibs: [
40 "liblibfdt_bindgen",
Pierre-Clément Tosic27c4272023-05-19 15:46:26 +000041 "libzerocopy_nostd",
David Brazdil1baa9a92022-06-28 14:47:50 +010042 ],
43 whole_static_libs: [
44 "libfdt",
45 ],
46 apex_available: ["com.android.virt"],
47}
Alice Wang9d4df702023-05-25 14:14:12 +000048
49rust_test {
50 name: "liblibfdt.integration_test",
51 crate_name: "libfdt_test",
Nikita Ioffeda1b2732023-09-04 13:46:56 +010052 defaults: ["avf_build_flags_rust"],
Alice Wang9d4df702023-05-25 14:14:12 +000053 srcs: ["tests/*.rs"],
54 test_suites: ["general-tests"],
55 data: [
Alice Wang2422bdc2023-06-12 08:37:55 +000056 ":fdt_test_tree_one_memory_range_dtb",
57 ":fdt_test_tree_multiple_memory_ranges_dtb",
58 ":fdt_test_tree_empty_memory_range_dtb",
59 ":fdt_test_tree_no_memory_node_dtb",
Alice Wang9d4df702023-05-25 14:14:12 +000060 ],
61 prefer_rlib: true,
62 rustlibs: [
63 "liblibfdt",
64 ],
65}
66
67genrule {
Alice Wang2422bdc2023-06-12 08:37:55 +000068 name: "fdt_test_tree_one_memory_range_dtb",
69 defaults: ["test_avf_dts_to_dtb"],
70 srcs: ["tests/data/test_tree_one_memory_range.dts"],
71 out: ["data/test_tree_one_memory_range.dtb"],
72}
73
74genrule {
75 name: "fdt_test_tree_multiple_memory_ranges_dtb",
76 defaults: ["test_avf_dts_to_dtb"],
77 srcs: ["tests/data/test_tree_multiple_memory_ranges.dts"],
78 out: ["data/test_tree_multiple_memory_ranges.dtb"],
79}
80
81genrule {
82 name: "fdt_test_tree_empty_memory_range_dtb",
83 defaults: ["test_avf_dts_to_dtb"],
84 srcs: ["tests/data/test_tree_empty_memory_range.dts"],
85 out: ["data/test_tree_empty_memory_range.dtb"],
86}
87
88genrule {
89 name: "fdt_test_tree_no_memory_node_dtb",
90 defaults: ["test_avf_dts_to_dtb"],
91 srcs: ["tests/data/test_tree_no_memory_node.dts"],
92 out: ["data/test_tree_no_memory_node.dtb"],
Alice Wang9d4df702023-05-25 14:14:12 +000093}