xref: /aosp_15_r20/frameworks/native/cmds/dumpstate/Android.bp (revision 38e8c45f13ce32b0dcecb25141ffecaf386fa17f)
1*38e8c45fSAndroid Build Coastguard Worker//
2*38e8c45fSAndroid Build Coastguard Worker// Copyright (C) 2017 The Android Open Source Project
3*38e8c45fSAndroid Build Coastguard Worker//
4*38e8c45fSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
5*38e8c45fSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
6*38e8c45fSAndroid Build Coastguard Worker// You may obtain a copy of the License at
7*38e8c45fSAndroid Build Coastguard Worker//
8*38e8c45fSAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
9*38e8c45fSAndroid Build Coastguard Worker//
10*38e8c45fSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
11*38e8c45fSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
12*38e8c45fSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*38e8c45fSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
14*38e8c45fSAndroid Build Coastguard Worker// limitations under the License.
15*38e8c45fSAndroid Build Coastguard Worker
16*38e8c45fSAndroid Build Coastguard Workerpackage {
17*38e8c45fSAndroid Build Coastguard Worker    // See: http://go/android-license-faq
18*38e8c45fSAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
19*38e8c45fSAndroid Build Coastguard Worker    // all of the 'license_kinds' from "frameworks_native_license"
20*38e8c45fSAndroid Build Coastguard Worker    // to get the below license kinds:
21*38e8c45fSAndroid Build Coastguard Worker    //   SPDX-license-identifier-Apache-2.0
22*38e8c45fSAndroid Build Coastguard Worker    default_applicable_licenses: ["frameworks_native_license"],
23*38e8c45fSAndroid Build Coastguard Worker}
24*38e8c45fSAndroid Build Coastguard Worker
25*38e8c45fSAndroid Build Coastguard Workercc_defaults {
26*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_cflag_defaults",
27*38e8c45fSAndroid Build Coastguard Worker    cflags: [
28*38e8c45fSAndroid Build Coastguard Worker        "-Wall",
29*38e8c45fSAndroid Build Coastguard Worker        "-Werror",
30*38e8c45fSAndroid Build Coastguard Worker        "-Wno-missing-field-initializers",
31*38e8c45fSAndroid Build Coastguard Worker        "-Wno-unused-variable",
32*38e8c45fSAndroid Build Coastguard Worker        "-Wunused-parameter",
33*38e8c45fSAndroid Build Coastguard Worker    ],
34*38e8c45fSAndroid Build Coastguard Worker}
35*38e8c45fSAndroid Build Coastguard Worker
36*38e8c45fSAndroid Build Coastguard Workercc_library_shared {
37*38e8c45fSAndroid Build Coastguard Worker    name: "libdumpstateutil",
38*38e8c45fSAndroid Build Coastguard Worker    defaults: ["dumpstate_cflag_defaults"],
39*38e8c45fSAndroid Build Coastguard Worker    vendor_available: true,
40*38e8c45fSAndroid Build Coastguard Worker    srcs: [
41*38e8c45fSAndroid Build Coastguard Worker        "DumpstateInternal.cpp",
42*38e8c45fSAndroid Build Coastguard Worker        "DumpstateUtil.cpp",
43*38e8c45fSAndroid Build Coastguard Worker    ],
44*38e8c45fSAndroid Build Coastguard Worker    shared_libs: [
45*38e8c45fSAndroid Build Coastguard Worker        "libbase",
46*38e8c45fSAndroid Build Coastguard Worker        "liblog",
47*38e8c45fSAndroid Build Coastguard Worker    ],
48*38e8c45fSAndroid Build Coastguard Worker    export_include_dirs: ["."],
49*38e8c45fSAndroid Build Coastguard Worker    export_shared_lib_headers: [
50*38e8c45fSAndroid Build Coastguard Worker        "libbase",
51*38e8c45fSAndroid Build Coastguard Worker    ],
52*38e8c45fSAndroid Build Coastguard Worker}
53*38e8c45fSAndroid Build Coastguard Worker
54*38e8c45fSAndroid Build Coastguard Workercc_library_shared {
55*38e8c45fSAndroid Build Coastguard Worker    name: "libdumpstateaidl",
56*38e8c45fSAndroid Build Coastguard Worker    defaults: ["dumpstate_cflag_defaults"],
57*38e8c45fSAndroid Build Coastguard Worker    shared_libs: [
58*38e8c45fSAndroid Build Coastguard Worker        "libbinder",
59*38e8c45fSAndroid Build Coastguard Worker        "libutils",
60*38e8c45fSAndroid Build Coastguard Worker    ],
61*38e8c45fSAndroid Build Coastguard Worker    aidl: {
62*38e8c45fSAndroid Build Coastguard Worker        local_include_dirs: ["binder"],
63*38e8c45fSAndroid Build Coastguard Worker        export_aidl_headers: true,
64*38e8c45fSAndroid Build Coastguard Worker    },
65*38e8c45fSAndroid Build Coastguard Worker    srcs: [
66*38e8c45fSAndroid Build Coastguard Worker        ":dumpstate_aidl",
67*38e8c45fSAndroid Build Coastguard Worker    ],
68*38e8c45fSAndroid Build Coastguard Worker    export_include_dirs: ["binder"],
69*38e8c45fSAndroid Build Coastguard Worker}
70*38e8c45fSAndroid Build Coastguard Worker
71*38e8c45fSAndroid Build Coastguard Workerfilegroup {
72*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_aidl",
73*38e8c45fSAndroid Build Coastguard Worker    srcs: [
74*38e8c45fSAndroid Build Coastguard Worker        "binder/android/os/IDumpstateListener.aidl",
75*38e8c45fSAndroid Build Coastguard Worker        "binder/android/os/IDumpstate.aidl",
76*38e8c45fSAndroid Build Coastguard Worker    ],
77*38e8c45fSAndroid Build Coastguard Worker    path: "binder",
78*38e8c45fSAndroid Build Coastguard Worker}
79*38e8c45fSAndroid Build Coastguard Worker
80*38e8c45fSAndroid Build Coastguard Workercc_defaults {
81*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_defaults",
82*38e8c45fSAndroid Build Coastguard Worker    defaults: [
83*38e8c45fSAndroid Build Coastguard Worker        "aconfig_lib_cc_static_link.defaults",
84*38e8c45fSAndroid Build Coastguard Worker        "dumpstate_cflag_defaults",
85*38e8c45fSAndroid Build Coastguard Worker    ],
86*38e8c45fSAndroid Build Coastguard Worker    shared_libs: [
87*38e8c45fSAndroid Build Coastguard Worker        "[email protected]",
88*38e8c45fSAndroid Build Coastguard Worker        "[email protected]",
89*38e8c45fSAndroid Build Coastguard Worker        "android.hardware.dumpstate-V1-ndk",
90*38e8c45fSAndroid Build Coastguard Worker        "libziparchive",
91*38e8c45fSAndroid Build Coastguard Worker        "libbase",
92*38e8c45fSAndroid Build Coastguard Worker        "libbinder",
93*38e8c45fSAndroid Build Coastguard Worker        "libbinder_ndk",
94*38e8c45fSAndroid Build Coastguard Worker        "libcrypto",
95*38e8c45fSAndroid Build Coastguard Worker        "libcutils",
96*38e8c45fSAndroid Build Coastguard Worker        "libdebuggerd_client",
97*38e8c45fSAndroid Build Coastguard Worker        "libdumpstateaidl",
98*38e8c45fSAndroid Build Coastguard Worker        "libdumpstateutil",
99*38e8c45fSAndroid Build Coastguard Worker        "libdumputils",
100*38e8c45fSAndroid Build Coastguard Worker        "libhardware_legacy",
101*38e8c45fSAndroid Build Coastguard Worker        "libhidlbase",
102*38e8c45fSAndroid Build Coastguard Worker        "liblog",
103*38e8c45fSAndroid Build Coastguard Worker        "libutils",
104*38e8c45fSAndroid Build Coastguard Worker        "libvintf",
105*38e8c45fSAndroid Build Coastguard Worker        "libbinderdebug",
106*38e8c45fSAndroid Build Coastguard Worker        "packagemanager_aidl-cpp",
107*38e8c45fSAndroid Build Coastguard Worker        "server_configurable_flags",
108*38e8c45fSAndroid Build Coastguard Worker        "device_policy_aconfig_flags_c_lib",
109*38e8c45fSAndroid Build Coastguard Worker    ],
110*38e8c45fSAndroid Build Coastguard Worker    srcs: [
111*38e8c45fSAndroid Build Coastguard Worker        "DumpstateService.cpp",
112*38e8c45fSAndroid Build Coastguard Worker    ],
113*38e8c45fSAndroid Build Coastguard Worker    static_libs: [
114*38e8c45fSAndroid Build Coastguard Worker        "libincidentcompanion",
115*38e8c45fSAndroid Build Coastguard Worker        "libdumpsys",
116*38e8c45fSAndroid Build Coastguard Worker        "libserviceutils",
117*38e8c45fSAndroid Build Coastguard Worker        "android.tracing.flags_c_lib",
118*38e8c45fSAndroid Build Coastguard Worker    ],
119*38e8c45fSAndroid Build Coastguard Worker}
120*38e8c45fSAndroid Build Coastguard Worker
121*38e8c45fSAndroid Build Coastguard Workerprebuilt_etc {
122*38e8c45fSAndroid Build Coastguard Worker    name: "default_screenshot",
123*38e8c45fSAndroid Build Coastguard Worker    src: "res/default_screenshot.png",
124*38e8c45fSAndroid Build Coastguard Worker    filename_from_src: true,
125*38e8c45fSAndroid Build Coastguard Worker}
126*38e8c45fSAndroid Build Coastguard Worker
127*38e8c45fSAndroid Build Coastguard Workercc_binary {
128*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate",
129*38e8c45fSAndroid Build Coastguard Worker    defaults: ["dumpstate_defaults"],
130*38e8c45fSAndroid Build Coastguard Worker    srcs: [
131*38e8c45fSAndroid Build Coastguard Worker        "DumpPool.cpp",
132*38e8c45fSAndroid Build Coastguard Worker        "TaskQueue.cpp",
133*38e8c45fSAndroid Build Coastguard Worker        "dumpstate.cpp",
134*38e8c45fSAndroid Build Coastguard Worker        "main.cpp",
135*38e8c45fSAndroid Build Coastguard Worker    ],
136*38e8c45fSAndroid Build Coastguard Worker    required: [
137*38e8c45fSAndroid Build Coastguard Worker        "atrace",
138*38e8c45fSAndroid Build Coastguard Worker        "bugreport_procdump",
139*38e8c45fSAndroid Build Coastguard Worker        "default_screenshot",
140*38e8c45fSAndroid Build Coastguard Worker        "dmabuf_dump",
141*38e8c45fSAndroid Build Coastguard Worker        "ip",
142*38e8c45fSAndroid Build Coastguard Worker        "iptables",
143*38e8c45fSAndroid Build Coastguard Worker        "librank",
144*38e8c45fSAndroid Build Coastguard Worker        "logcat",
145*38e8c45fSAndroid Build Coastguard Worker        "lpdump",
146*38e8c45fSAndroid Build Coastguard Worker        "lpdumpd",
147*38e8c45fSAndroid Build Coastguard Worker        "procrank",
148*38e8c45fSAndroid Build Coastguard Worker        "screencap",
149*38e8c45fSAndroid Build Coastguard Worker        "showmap",
150*38e8c45fSAndroid Build Coastguard Worker        "ss",
151*38e8c45fSAndroid Build Coastguard Worker        "storaged",
152*38e8c45fSAndroid Build Coastguard Worker        "toolbox",
153*38e8c45fSAndroid Build Coastguard Worker        "toybox",
154*38e8c45fSAndroid Build Coastguard Worker        "vdc",
155*38e8c45fSAndroid Build Coastguard Worker    ],
156*38e8c45fSAndroid Build Coastguard Worker    init_rc: ["dumpstate.rc"],
157*38e8c45fSAndroid Build Coastguard Worker}
158*38e8c45fSAndroid Build Coastguard Worker
159*38e8c45fSAndroid Build Coastguard Workercc_test {
160*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_test",
161*38e8c45fSAndroid Build Coastguard Worker    defaults: ["dumpstate_defaults"],
162*38e8c45fSAndroid Build Coastguard Worker    srcs: [
163*38e8c45fSAndroid Build Coastguard Worker        "DumpPool.cpp",
164*38e8c45fSAndroid Build Coastguard Worker        "TaskQueue.cpp",
165*38e8c45fSAndroid Build Coastguard Worker        "dumpstate.cpp",
166*38e8c45fSAndroid Build Coastguard Worker        "tests/dumpstate_test.cpp",
167*38e8c45fSAndroid Build Coastguard Worker    ],
168*38e8c45fSAndroid Build Coastguard Worker    static_libs: [
169*38e8c45fSAndroid Build Coastguard Worker        "libgmock",
170*38e8c45fSAndroid Build Coastguard Worker    ],
171*38e8c45fSAndroid Build Coastguard Worker    test_config: "dumpstate_test.xml",
172*38e8c45fSAndroid Build Coastguard Worker    data: [
173*38e8c45fSAndroid Build Coastguard Worker        ":dumpstate_test_fixture",
174*38e8c45fSAndroid Build Coastguard Worker        "tests/testdata/**/*",
175*38e8c45fSAndroid Build Coastguard Worker    ],
176*38e8c45fSAndroid Build Coastguard Worker    test_suites: ["device-tests"],
177*38e8c45fSAndroid Build Coastguard Worker}
178*38e8c45fSAndroid Build Coastguard Worker
179*38e8c45fSAndroid Build Coastguard Workercc_test {
180*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_smoke_test",
181*38e8c45fSAndroid Build Coastguard Worker    defaults: ["dumpstate_defaults"],
182*38e8c45fSAndroid Build Coastguard Worker    srcs: [
183*38e8c45fSAndroid Build Coastguard Worker        "DumpPool.cpp",
184*38e8c45fSAndroid Build Coastguard Worker        "TaskQueue.cpp",
185*38e8c45fSAndroid Build Coastguard Worker        "dumpstate.cpp",
186*38e8c45fSAndroid Build Coastguard Worker        "tests/dumpstate_smoke_test.cpp",
187*38e8c45fSAndroid Build Coastguard Worker    ],
188*38e8c45fSAndroid Build Coastguard Worker    static_libs: ["libgmock"],
189*38e8c45fSAndroid Build Coastguard Worker    test_config: "dumpstate_smoke_test.xml",
190*38e8c45fSAndroid Build Coastguard Worker    test_suites: ["device-tests"],
191*38e8c45fSAndroid Build Coastguard Worker}
192*38e8c45fSAndroid Build Coastguard Worker
193*38e8c45fSAndroid Build Coastguard Worker// =======================#
194*38e8c45fSAndroid Build Coastguard Worker// dumpstate_test_fixture #
195*38e8c45fSAndroid Build Coastguard Worker// =======================#
196*38e8c45fSAndroid Build Coastguard Workercc_test {
197*38e8c45fSAndroid Build Coastguard Worker
198*38e8c45fSAndroid Build Coastguard Worker    name: "dumpstate_test_fixture",
199*38e8c45fSAndroid Build Coastguard Worker    test_suites: ["device-tests"],
200*38e8c45fSAndroid Build Coastguard Worker    cflags: [
201*38e8c45fSAndroid Build Coastguard Worker        "-Wall",
202*38e8c45fSAndroid Build Coastguard Worker        "-Werror",
203*38e8c45fSAndroid Build Coastguard Worker        "-Wno-missing-field-initializers",
204*38e8c45fSAndroid Build Coastguard Worker        "-Wno-unused-variable",
205*38e8c45fSAndroid Build Coastguard Worker        "-Wunused-parameter",
206*38e8c45fSAndroid Build Coastguard Worker    ],
207*38e8c45fSAndroid Build Coastguard Worker    srcs: ["tests/dumpstate_test_fixture.cpp"],
208*38e8c45fSAndroid Build Coastguard Worker    data: ["tests/testdata/**/*"],
209*38e8c45fSAndroid Build Coastguard Worker}
210