• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    default_applicable_licenses: ["Android-Apache-2.0"],
3}
4
5rust_defaults {
6    name: "mmd_defaults",
7    srcs: [
8        "src/main.rs",
9    ],
10    rustlibs: [
11        "libanyhow",
12        "libbinder_rs",
13        "libflags_rust",
14        "liblogger",
15        "liblog_rust",
16        "libmmd_flags_rust",
17        "libmmdproperties_rust",
18        "libnix",
19        "librustutils",
20        "libstatslog_rust",
21        "libstatslog_rust_header",
22        "libstatspull_rust",
23        "libthiserror",
24        "mmd_aidl_interface-rust",
25    ],
26}
27
28rust_defaults {
29    name: "libmmd_defaults",
30    srcs: [
31        "src/lib.rs",
32    ],
33    rustlibs: [
34        "libanyhow",
35        "libscopeguard",
36        "libdm_rust",
37        "liblibc",
38        "libnix",
39        "libthiserror",
40    ],
41}
42
43rust_binary {
44    name: "mm_daemon",
45    defaults: ["mmd_defaults"],
46    stem: "mmd",
47    init_rc: ["mmd.rc"],
48    rustlibs: [
49        "libmmd",
50    ],
51}
52
53rust_library {
54    name: "libmmd",
55    crate_name: "mmd",
56    defaults: ["libmmd_defaults"],
57    host_supported: true,
58}
59
60rust_library {
61    name: "libmmd_test_utils",
62    crate_name: "mmd",
63    features: [
64        "test_utils",
65    ],
66    defaults: ["libmmd_defaults"],
67    host_supported: true,
68    rustlibs: [
69        "libmockall",
70    ],
71}
72
73rust_test {
74    name: "mmd_unit_tests",
75    defaults: ["mmd_defaults"],
76    test_suites: ["general-tests"],
77    auto_gen_config: true,
78    rustlibs: [
79        "libmockall",
80        "libmmd_test_utils",
81    ],
82}
83
84rust_test_host {
85    name: "libmmd_unit_tests",
86    defaults: ["libmmd_defaults"],
87    test_suites: ["general-tests"],
88    rustlibs: [
89        "libtempfile",
90        "libmockall",
91    ],
92}
93
94aconfig_declarations {
95    name: "mmd_flags",
96    package: "android.mmd.flags",
97    container: "system",
98    srcs: ["flags.aconfig"],
99}
100
101rust_aconfig_library {
102    name: "libmmd_flags_rust",
103    crate_name: "mmd_flags",
104    aconfig_declarations: "mmd_flags",
105}
106
107java_aconfig_library {
108    name: "mmd_flags_lib",
109    aconfig_declarations: "mmd_flags",
110}
111
112cc_aconfig_library {
113    name: "mmd_flags_c_lib",
114    aconfig_declarations: "mmd_flags",
115}
116
117aidl_interface {
118    name: "mmd_aidl_interface",
119    unstable: true,
120    srcs: [":mmd_aidl"],
121    local_include_dir: "aidl",
122    backend: {
123        rust: {
124            enabled: true,
125        },
126    },
127}
128
129filegroup {
130    name: "mmd_aidl",
131    srcs: [
132        "aidl/android/os/IMmd.aidl",
133    ],
134    path: "aidl",
135}
136
137sysprop_library {
138    name: "MmdProperties",
139    srcs: ["MmdProperties.sysprop"],
140    property_owner: "Platform",
141    vendor_available: true,
142    ramdisk_available: true,
143    vendor_ramdisk_available: true,
144    recovery_available: true,
145    api_packages: ["android.sysprop"],
146}
147