blob: 54ade35638517444ca75c9af8982f2cb5d5fff68 [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 Chen5154a372017-10-30 22:57:06 -070045 src/metrics/duration_helper/OringDurationTracker.cpp \
46 src/metrics/duration_helper/MaxDurationTracker.cpp \
Chenjie Yub3dda412017-10-24 13:41:59 -070047 src/metrics/ValueMetricProducer.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000048 src/metrics/MetricsManager.cpp \
49 src/metrics/metrics_manager_util.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070050 src/packages/UidMap.cpp \
51 src/storage/DropboxReader.cpp \
52 src/storage/DropboxWriter.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000053 src/StatsLogProcessor.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +000054 src/StatsService.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -070055 src/stats_util.cpp
Yao Chenab273e22017-09-06 12:53:50 -070056
Yao Chend54f9dd2017-10-17 17:37:48 +000057statsd_common_c_includes := \
David Chen1481fe12017-10-16 13:16:34 -070058 $(LOCAL_PATH)/src \
59 $(LOCAL_PATH)/../../libs/services/include
Yao Chenab273e22017-09-06 12:53:50 -070060
Yao Chend54f9dd2017-10-17 17:37:48 +000061statsd_common_aidl_includes := \
62 $(LOCAL_PATH)/../../core/java
Yao Chenab273e22017-09-06 12:53:50 -070063
Yao Chend54f9dd2017-10-17 17:37:48 +000064statsd_common_shared_libraries := \
65 libbase \
66 libbinder \
67 libcutils \
68 libincident \
69 liblog \
70 libselinux \
71 libutils \
72 libservices \
Yao Chen5110bed2017-10-23 12:50:02 -070073 libandroidfw \
74 libprotoutil
Yao Chenab273e22017-09-06 12:53:50 -070075
Joe Onorato5dcbc6c2017-08-29 15:13:58 -070076# =========
77# statsd
78# =========
79
80include $(CLEAR_VARS)
81
82LOCAL_MODULE := statsd
83
84LOCAL_SRC_FILES := \
Yao Chend54f9dd2017-10-17 17:37:48 +000085 $(statsd_common_src) \
86 src/main.cpp
Joe Onorato5dcbc6c2017-08-29 15:13:58 -070087
88LOCAL_CFLAGS += \
89 -Wall \
90 -Werror \
91 -Wno-missing-field-initializers \
92 -Wno-unused-variable \
93 -Wno-unused-function \
94 -Wno-unused-parameter
95
96ifeq (debug,)
97 LOCAL_CFLAGS += \
98 -g -O0
99else
100 # optimize for size (protobuf glop can get big)
101 LOCAL_CFLAGS += \
102 -Os
103endif
Yao Chend54f9dd2017-10-17 17:37:48 +0000104LOCAL_PROTOC_OPTIMIZE_TYPE := lite-static
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700105
David Chen1481fe12017-10-16 13:16:34 -0700106LOCAL_AIDL_INCLUDES := $(statsd_common_aidl_includes)
Yao Chend54f9dd2017-10-17 17:37:48 +0000107LOCAL_C_INCLUDES += $(statsd_common_c_includes)
Yao Chenab273e22017-09-06 12:53:50 -0700108
David Chend6896892017-10-25 11:49:03 -0700109LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries) \
110 libgtest_prod
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700111
112LOCAL_MODULE_CLASS := EXECUTABLES
113
114#LOCAL_INIT_RC := statsd.rc
115
116include $(BUILD_EXECUTABLE)
117
Yao Chend54f9dd2017-10-17 17:37:48 +0000118
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700119# ==============
120# statsd_test
121# ==============
122
123include $(CLEAR_VARS)
124
125LOCAL_MODULE := statsd_test
126LOCAL_COMPATIBILITY_SUITE := device-tests
127LOCAL_MODULE_TAGS := tests
128
David Chen1481fe12017-10-16 13:16:34 -0700129LOCAL_AIDL_INCLUDES := $(statsd_common_aidl_includes)
Yao Chend54f9dd2017-10-17 17:37:48 +0000130LOCAL_C_INCLUDES += $(statsd_common_c_includes)
David Chendd896942017-09-26 11:44:40 -0700131
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700132LOCAL_CFLAGS += \
133 -Wall \
134 -Werror \
135 -Wno-missing-field-initializers \
136 -Wno-unused-variable \
137 -Wno-unused-function \
138 -Wno-unused-parameter
139
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700140LOCAL_SRC_FILES := \
Yao Chend54f9dd2017-10-17 17:37:48 +0000141 $(statsd_common_src) \
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700142 tests/AnomalyMonitor_test.cpp \
143 tests/ConditionTracker_test.cpp \
144 tests/ConfigManager_test.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +0000145 tests/indexed_priority_queue_test.cpp \
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700146 tests/LogEntryMatcher_test.cpp \
Yao Chend54f9dd2017-10-17 17:37:48 +0000147 tests/LogReader_test.cpp \
148 tests/MetricsManager_test.cpp \
Yao Chen5154a372017-10-30 22:57:06 -0700149 tests/UidMap_test.cpp \
150 tests/OringDurationTracker_test.cpp \
151 tests/MaxDurationTracker_test.cpp
Joe Onorato9fc9edf2017-10-15 20:08:52 -0700152
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700153
154LOCAL_STATIC_LIBRARIES := \
Yao Chend54f9dd2017-10-17 17:37:48 +0000155 libgmock
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700156
Yao Chend54f9dd2017-10-17 17:37:48 +0000157LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries)
158
159LOCAL_PROTOC_OPTIMIZE_TYPE := lite
160
161statsd_common_src:=
162statsd_common_aidl_includes:=
163statsd_common_c_includes:=
Joe Onorato5dcbc6c2017-08-29 15:13:58 -0700164
165include $(BUILD_NATIVE_TEST)
Yao Chend54f9dd2017-10-17 17:37:48 +0000166