blob: 1c88a249f75af620c4d2c36cb68970e87a4e5658 [file] [log] [blame]
Joe Onorato5dcbc6c2017-08-29 15:13:58 -07001# Copyright (C) 2017 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
15LOCAL_PATH:= $(call my-dir)
16
Yao Chend54f9dd2017-10-17 17:37:48 +000017statsd_common_src := \
yro31eb67b2017-10-24 13:33:21 -070018 ../../core/java/android/os/IStatsCallbacks.aidl \
Yao Chend54f9dd2017-10-17 17:37:48 +000019 ../../core/java/android/os/IStatsCompanionService.aidl \
20 ../../core/java/android/os/IStatsManager.aidl \
21 src/stats_log.proto \
22 src/statsd_config.proto \
Yao Chen70b98632017-10-17 10:41:14 -070023 src/stats_events_copy.proto \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070024 src/anomaly/AnomalyMonitor.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000025 src/condition/CombinationConditionTracker.cpp \
26 src/condition/condition_util.cpp \
27 src/condition/SimpleConditionTracker.cpp \
Yao Chen729093d2017-10-16 10:33:26 -070028 src/condition/ConditionWizard.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070029 src/config/ConfigKey.cpp \
30 src/config/ConfigListener.cpp \
31 src/config/ConfigManager.cpp \
32 src/external/KernelWakelockPuller.cpp \
33 src/external/StatsPullerManager.cpp \
Joe Onoratoc4dfae52017-10-17 23:38:21 -070034 src/logd/LogEvent.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070035 src/logd/LogListener.cpp \
36 src/logd/LogReader.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000037 src/matchers/CombinationLogMatchingTracker.cpp \
38 src/matchers/matcher_util.cpp \
39 src/matchers/SimpleLogMatchingTracker.cpp \
40 src/metrics/CountAnomalyTracker.cpp \
Yao Chenb7041772017-10-20 16:59:25 -070041 src/metrics/MetricProducer.cpp \
Yao Chen5110bed2017-10-23 12:50:02 -070042 src/metrics/EventMetricProducer.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000043 src/metrics/CountMetricProducer.cpp \
Yao Chen729093d2017-10-16 10:33:26 -070044 src/metrics/DurationMetricProducer.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000045 src/metrics/MetricsManager.cpp \
46 src/metrics/metrics_manager_util.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070047 src/packages/UidMap.cpp \
48 src/storage/DropboxReader.cpp \
49 src/storage/DropboxWriter.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000050 src/StatsLogProcessor.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000051 src/StatsService.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070052 src/stats_util.cpp
Yao Chenab273e22017-09-06 12:53:50 -070053
Yao Chend54f9dd2017-10-17 17:37:48 +000054statsd_common_c_includes := \
David Chen1481fe12017-10-16 13:16:34 -070055 $(LOCAL_PATH)/src \
56 $(LOCAL_PATH)/../../libs/services/include
Yao Chenab273e22017-09-06 12:53:50 -070057
Yao Chend54f9dd2017-10-17 17:37:48 +000058statsd_common_aidl_includes := \
59 $(LOCAL_PATH)/../../core/java
Yao Chenab273e22017-09-06 12:53:50 -070060
Yao Chend54f9dd2017-10-17 17:37:48 +000061statsd_common_shared_libraries := \
62 libbase \
63 libbinder \
64 libcutils \
65 libincident \
66 liblog \
67 libselinux \
68 libutils \
69 libservices \
Yao Chen5110bed2017-10-23 12:50:02 -070070 libandroidfw \
71 libprotoutil
Yao Chenab273e22017-09-06 12:53:50 -070072
Joe Onorato5dcbc6c2017-08-29 15:13:58 -070073# =========
74# statsd
75# =========
76
77include $(CLEAR_VARS)
78
79LOCAL_MODULE := statsd
80
81LOCAL_SRC_FILES := \
Yao Chend54f9dd2017-10-17 17:37:48 +000082 $(statsd_common_src) \
83 src/main.cpp
Joe Onorato5dcbc6c2017-08-29 15:13:58 -070084
85LOCAL_CFLAGS += \
86 -Wall \
87 -Werror \
88 -Wno-missing-field-initializers \
89 -Wno-unused-variable \
90 -Wno-unused-function \
91 -Wno-unused-parameter
92
93ifeq (debug,)
94 LOCAL_CFLAGS += \
95 -g -O0
96else
97 # optimize for size (protobuf glop can get big)
98 LOCAL_CFLAGS += \
99 -Os
100endif
Yao Chend54f9dd2017-10-17 17:37:48 +0000101LOCAL_PROTOC_OPTIMIZE_TYPE := lite-static
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700102
David Chen1481fe12017-10-16 13:16:34 -0700103LOCAL_AIDL_INCLUDES := $(statsd_common_aidl_includes)
Yao Chend54f9dd2017-10-17 17:37:48 +0000104LOCAL_C_INCLUDES += $(statsd_common_c_includes)
Yao Chenab273e22017-09-06 12:53:50 -0700105
David Chend6896892017-10-25 11:49:03 -0700106LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries) \
107 libgtest_prod
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700108
109LOCAL_MODULE_CLASS := EXECUTABLES
110
111#LOCAL_INIT_RC := statsd.rc
112
113include $(BUILD_EXECUTABLE)
114
Yao Chend54f9dd2017-10-17 17:37:48 +0000115
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700116# ==============
117# statsd_test
118# ==============
119
120include $(CLEAR_VARS)
121
122LOCAL_MODULE := statsd_test
123LOCAL_COMPATIBILITY_SUITE := device-tests
124LOCAL_MODULE_TAGS := tests
125
David Chen1481fe12017-10-16 13:16:34 -0700126LOCAL_AIDL_INCLUDES := $(statsd_common_aidl_includes)
Yao Chend54f9dd2017-10-17 17:37:48 +0000127LOCAL_C_INCLUDES += $(statsd_common_c_includes)
David Chendd896942017-09-26 11:44:40 -0700128
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700129LOCAL_CFLAGS += \
130 -Wall \
131 -Werror \
132 -Wno-missing-field-initializers \
133 -Wno-unused-variable \
134 -Wno-unused-function \
135 -Wno-unused-parameter
136
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700137LOCAL_SRC_FILES := \
Yao Chend54f9dd2017-10-17 17:37:48 +0000138 $(statsd_common_src) \
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700139 tests/AnomalyMonitor_test.cpp \
140 tests/ConditionTracker_test.cpp \
141 tests/ConfigManager_test.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +0000142 tests/indexed_priority_queue_test.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700143 tests/LogEntryMatcher_test.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +0000144 tests/LogReader_test.cpp \
145 tests/MetricsManager_test.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700146 tests/UidMap_test.cpp
147
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700148
149LOCAL_STATIC_LIBRARIES := \
Yao Chend54f9dd2017-10-17 17:37:48 +0000150 libgmock
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700151
Yao Chend54f9dd2017-10-17 17:37:48 +0000152LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries)
153
154LOCAL_PROTOC_OPTIMIZE_TYPE := lite
155
156statsd_common_src:=
157statsd_common_aidl_includes:=
158statsd_common_c_includes:=
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700159
160include $(BUILD_NATIVE_TEST)
Yao Chend54f9dd2017-10-17 17:37:48 +0000161