blob: b6f1ae8ef2898cc2c366ba0ea0a47d3dc2c32b11 [file] [log] [blame]
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -08001// Copyright (C) 2020 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15cc_defaults {
16 name: "carwatchdogd_defaults",
17 cflags: [
18 "-Wall",
19 "-Wno-missing-field-initializers",
20 "-Werror",
21 "-Wno-unused-variable",
22 "-Wunused-parameter",
Jooyung Han23598092021-01-06 15:49:53 +090023 "-Wno-error=deprecated",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080024 ],
25 include_dirs: [
Baligh Uddin919323d2020-10-25 18:13:46 +000026 "system/libbase/include",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080027 ],
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -070028 shared_libs: [
Jeongik Chad589dc02021-01-28 00:49:50 +090029 "android.automotive.watchdog-V3-cpp",
30 "android.automotive.watchdog.internal-cpp",
Lakshman Annadorai8dfeeaf2020-12-15 14:10:53 -080031 "android.automotive.watchdog.internal-unstable-cpp",
32 "android.automotive.watchdog-unstable-cpp",
33 "android.hardware.automotive.vehicle@2.0",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -070034 "libbase",
35 "libbinder",
36 "liblog",
37 "libutils",
38 ],
Lakshman Annadoraie4054622020-11-10 14:09:42 -080039 static_libs: [
40 "libgtest_prod",
41 ],
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080042}
43
Lakshman Annadoraif3abe482020-08-07 16:52:45 -070044cc_library {
Lakshman Annadorai37975c92021-01-06 11:03:13 -080045 name: "libwatchdog_package_info_resolver",
Lakshman Annadoraif3abe482020-08-07 16:52:45 -070046 srcs: [
Lakshman Annadorai37975c92021-01-06 11:03:13 -080047 "src/PackageInfoResolver.cpp",
Lakshman Annadoraif3abe482020-08-07 16:52:45 -070048 ],
49 defaults: [
50 "carwatchdogd_defaults",
51 ],
52 shared_libs: [
53 "libcutils",
54 ],
Lakshman Annadoraif3abe482020-08-07 16:52:45 -070055 export_include_dirs: [
Lakshman Annadorai37975c92021-01-06 11:03:13 -080056 "src",
Lakshman Annadoraif3abe482020-08-07 16:52:45 -070057 ],
58}
59
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080060cc_defaults {
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -070061 name: "libwatchdog_perf_service_defaults",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080062 shared_libs: [
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080063 "libcutils",
Lakshman Annadoraif2855b22020-03-03 14:13:10 -080064 "libprocessgroup",
Lakshman Annadorai37975c92021-01-06 11:03:13 -080065 "libwatchdog_package_info_resolver",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080066 ],
67}
68
69cc_library {
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -070070 name: "libwatchdog_perf_service",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080071 defaults: [
72 "carwatchdogd_defaults",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -070073 "libwatchdog_perf_service_defaults",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080074 ],
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080075 srcs: [
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -070076 "src/WatchdogPerfService.cpp",
Lakshman Annadoraiaf6486c2020-10-09 12:41:45 -070077 "src/IoOveruseConfigs.cpp",
Lakshman Annadoraie166c8b2020-10-09 12:36:50 -070078 "src/IoOveruseMonitor.cpp",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -080079 "src/IoPerfCollection.cpp",
Lakshman Annadoraif2855b22020-03-03 14:13:10 -080080 "src/LooperWrapper.cpp",
Lakshman Annadorai2fce0012020-02-18 14:05:22 -080081 "src/ProcPidStat.cpp",
82 "src/ProcStat.cpp",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080083 "src/UidIoStats.cpp",
84 ],
Lakshman Annadorai52877702020-03-25 14:29:52 -070085 whole_static_libs: [
86 "libwatchdog_properties",
87 ],
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080088 export_include_dirs: [
89 "src",
90 ],
91}
92
93cc_test {
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -070094 name: "libwatchdog_test",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080095 defaults: [
96 "carwatchdogd_defaults",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -070097 "libwatchdog_perf_service_defaults",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -070098 "libwatchdog_process_service_defaults",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -080099 ],
100 test_suites: ["general-tests"],
101 srcs: [
Lakshman Annadoraiaf6486c2020-10-09 12:41:45 -0700102 "tests/IoOveruseConfigsTest.cpp",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -0800103 "tests/IoPerfCollectionTest.cpp",
Lakshman Annadoraif2855b22020-03-03 14:13:10 -0800104 "tests/LooperStub.cpp",
Lakshman Annadorai37975c92021-01-06 11:03:13 -0800105 "tests/PackageInfoResolverTest.cpp",
Lakshman Annadorai325e9652020-02-20 17:27:11 -0800106 "tests/ProcPidDir.cpp",
Lakshman Annadorai2fce0012020-02-18 14:05:22 -0800107 "tests/ProcPidStatTest.cpp",
Lakshman Annadoraif9b47c22020-02-10 16:45:18 -0800108 "tests/ProcStatTest.cpp",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700109 "tests/UidIoStatsTest.cpp",
110 "tests/WatchdogBinderMediatorTest.cpp",
Lakshman Annadorai967b21e2020-10-30 09:35:29 -0700111 "tests/WatchdogInternalHandlerTest.cpp",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700112 "tests/WatchdogPerfServiceTest.cpp",
Eric Jeong951f2aa2020-03-31 12:18:00 -0700113 "tests/WatchdogProcessServiceTest.cpp",
Lakshman Annadoraie4054622020-11-10 14:09:42 -0800114 "tests/WatchdogServiceHelperTest.cpp",
Lakshman Annadoraiab4d3fd2020-02-06 11:24:56 -0800115 ],
116 static_libs: [
117 "libgmock",
118 "libgtest",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700119 "libwatchdog_binder_mediator",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700120 "libwatchdog_perf_service",
Lakshman Annadorai8dfeeaf2020-12-15 14:10:53 -0800121 "libwatchdog_process_service",
Lakshman Annadorai37975c92021-01-06 11:03:13 -0800122 "libwatchdog_package_info_resolver",
Lakshman Annadorai6094e9a2020-01-31 10:03:33 -0800123 ],
Eric Jeong34edd982019-12-17 17:26:35 -0800124}
125
126cc_defaults {
127 name: "libwatchdog_process_service_defaults",
128 shared_libs: [
Eric Jeong3a4b6352020-08-18 18:06:53 -0700129 "libhidlbase",
Eric Jeong34edd982019-12-17 17:26:35 -0800130 ],
131}
132
133cc_library {
134 name: "libwatchdog_process_service",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700135 srcs: [
136 "src/WatchdogProcessService.cpp",
137 ],
Eric Jeong34edd982019-12-17 17:26:35 -0800138 defaults: [
139 "carwatchdogd_defaults",
140 "libwatchdog_process_service_defaults"
141 ],
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700142}
143
144cc_library {
145 name: "libwatchdog_binder_mediator",
146 defaults: [
147 "carwatchdogd_defaults",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700148 "libwatchdog_perf_service_defaults",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700149 "libwatchdog_process_service_defaults",
150 ],
Eric Jeong34edd982019-12-17 17:26:35 -0800151 srcs: [
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700152 "src/WatchdogBinderMediator.cpp",
Lakshman Annadorai967b21e2020-10-30 09:35:29 -0700153 "src/WatchdogInternalHandler.cpp",
Lakshman Annadoraie4054622020-11-10 14:09:42 -0800154 "src/WatchdogServiceHelper.cpp",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700155 ],
156 shared_libs: [
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700157 "libwatchdog_perf_service",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700158 "libwatchdog_process_service",
159 ],
160 export_include_dirs: [
161 "src",
Eric Jeong34edd982019-12-17 17:26:35 -0800162 ],
163}
164
165cc_binary {
166 name: "carwatchdogd",
167 defaults: [
168 "carwatchdogd_defaults",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700169 "libwatchdog_perf_service_defaults",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700170 "libwatchdog_process_service_defaults",
Eric Jeong34edd982019-12-17 17:26:35 -0800171 ],
172 srcs: [
173 "src/main.cpp",
Eric Jeong69e99782020-02-12 17:41:00 -0800174 "src/ServiceManager.cpp",
Eric Jeong34edd982019-12-17 17:26:35 -0800175 ],
176 init_rc: ["carwatchdogd.rc"],
177 shared_libs: [
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700178 "libwatchdog_binder_mediator",
Lakshman Annadoraid9a2c6e2020-09-03 11:52:06 -0700179 "libwatchdog_perf_service",
Lakshman Annadorai0dfeeeb2020-03-13 16:57:12 -0700180 "libwatchdog_process_service",
Lakshman Annadorai37975c92021-01-06 11:03:13 -0800181 "libwatchdog_package_info_resolver",
Eric Jeong34edd982019-12-17 17:26:35 -0800182 ],
Eric Jeongae2c04c2020-02-21 09:18:31 -0800183 vintf_fragments: ["carwatchdogd.xml"],
Eric Jeong34edd982019-12-17 17:26:35 -0800184}