blob: 0540f26721439249adb8d4ceb417ecf530755913 [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",
8 wrapper_src: "bindgen/fdt.h",
9 source_stem: "bindings",
10 bindgen_flags: [
David Brazdil1baa9a92022-06-28 14:47:50 +010011 "--allowlist-type=fdt_.*",
12 "--allowlist-function=fdt_.*",
13 "--allowlist-var=FDT_.*",
14 "--use-core",
15 "--raw-line=#![no_std]",
16 "--ctypes-prefix=core::ffi",
17 ],
18 static_libs: [
19 "libfdt",
20 ],
21 apex_available: ["com.android.virt"],
22}
23
24rust_library_rlib {
25 name: "liblibfdt",
26 crate_name: "libfdt",
27 srcs: [
28 "src/lib.rs",
29 ":liblibfdt_bindgen",
30 ],
31 edition: "2021",
32 no_stdlibs: true,
33 prefer_rlib: true,
34 stdlibs: [
35 "libcore.rust_sysroot",
36 ],
37 rustlibs: [
38 "liblibfdt_bindgen",
Pierre-Clément Tosic27c4272023-05-19 15:46:26 +000039 "libzerocopy_nostd",
David Brazdil1baa9a92022-06-28 14:47:50 +010040 ],
41 whole_static_libs: [
42 "libfdt",
43 ],
44 apex_available: ["com.android.virt"],
45}
Alice Wang9d4df702023-05-25 14:14:12 +000046
47rust_test {
48 name: "liblibfdt.integration_test",
49 crate_name: "libfdt_test",
50 srcs: ["tests/*.rs"],
51 test_suites: ["general-tests"],
52 data: [
Alice Wang2422bdc2023-06-12 08:37:55 +000053 ":fdt_test_tree_one_memory_range_dtb",
54 ":fdt_test_tree_multiple_memory_ranges_dtb",
55 ":fdt_test_tree_empty_memory_range_dtb",
56 ":fdt_test_tree_no_memory_node_dtb",
Alice Wang9d4df702023-05-25 14:14:12 +000057 ],
58 prefer_rlib: true,
59 rustlibs: [
60 "liblibfdt",
61 ],
62}
63
64genrule {
Alice Wang2422bdc2023-06-12 08:37:55 +000065 name: "fdt_test_tree_one_memory_range_dtb",
66 defaults: ["test_avf_dts_to_dtb"],
67 srcs: ["tests/data/test_tree_one_memory_range.dts"],
68 out: ["data/test_tree_one_memory_range.dtb"],
69}
70
71genrule {
72 name: "fdt_test_tree_multiple_memory_ranges_dtb",
73 defaults: ["test_avf_dts_to_dtb"],
74 srcs: ["tests/data/test_tree_multiple_memory_ranges.dts"],
75 out: ["data/test_tree_multiple_memory_ranges.dtb"],
76}
77
78genrule {
79 name: "fdt_test_tree_empty_memory_range_dtb",
80 defaults: ["test_avf_dts_to_dtb"],
81 srcs: ["tests/data/test_tree_empty_memory_range.dts"],
82 out: ["data/test_tree_empty_memory_range.dtb"],
83}
84
85genrule {
86 name: "fdt_test_tree_no_memory_node_dtb",
87 defaults: ["test_avf_dts_to_dtb"],
88 srcs: ["tests/data/test_tree_no_memory_node.dts"],
89 out: ["data/test_tree_no_memory_node.dtb"],
Alice Wang9d4df702023-05-25 14:14:12 +000090}