Android.mk revision b81d1a7b9a38dcb4d356ae3435a82fb52ba7d585
1# 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
17
18statsd_common_src := \
19    ../../core/java/android/os/IStatsCompanionService.aidl \
20    ../../core/java/android/os/IStatsManager.aidl \
21    src/stats_log.proto \
22    src/statsd_config.proto \
23    src/stats_events.proto \
24    src/condition/CombinationConditionTracker.cpp \
25    src/condition/condition_util.cpp \
26    src/condition/SimpleConditionTracker.cpp \
27    src/matchers/CombinationLogMatchingTracker.cpp \
28    src/matchers/matcher_util.cpp \
29    src/matchers/SimpleLogMatchingTracker.cpp \
30    src/metrics/CountAnomalyTracker.cpp \
31    src/metrics/CountMetricProducer.cpp \
32    src/metrics/MetricsManager.cpp \
33    src/metrics/metrics_manager_util.cpp \
34    src/AnomalyMonitor.cpp \
35    src/DropboxReader.cpp \
36    src/DropboxWriter.cpp \
37    src/KernelWakelockPuller.cpp \
38    src/LogEntryPrinter.cpp \
39    src/LogReader.cpp \
40    src/StatsLogProcessor.cpp \
41    src/StatsPullerManager.cpp \
42    src/StatsService.cpp \
43    src/stats_util.cpp \
44    src/UidMap.cpp
45
46statsd_common_c_includes := \
47    $(LOCAL_PATH)/src
48
49statsd_common_aidl_includes := \
50    $(LOCAL_PATH)/../../core/java
51
52statsd_common_shared_libraries := \
53    libbase \
54    libbinder \
55    libcutils \
56    libincident \
57    liblog \
58    libselinux \
59    libutils \
60    libservices \
61    libandroidfw
62
63# =========
64# statsd
65# =========
66
67include $(CLEAR_VARS)
68
69LOCAL_MODULE := statsd
70
71LOCAL_SRC_FILES := \
72    $(statsd_common_src) \
73    src/main.cpp
74
75LOCAL_CFLAGS += \
76    -Wall \
77    -Werror \
78    -Wno-missing-field-initializers \
79    -Wno-unused-variable \
80    -Wno-unused-function \
81    -Wno-unused-parameter
82
83ifeq (debug,)
84    LOCAL_CFLAGS += \
85            -g -O0
86else
87    # optimize for size (protobuf glop can get big)
88    LOCAL_CFLAGS += \
89            -Os
90endif
91LOCAL_PROTOC_OPTIMIZE_TYPE := lite-static
92
93LOCAL_AIDL_INCLUDES := $(statsd_common_c_includes)
94LOCAL_C_INCLUDES += $(statsd_common_c_includes)
95
96LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries)
97
98LOCAL_MODULE_CLASS := EXECUTABLES
99
100#LOCAL_INIT_RC := statsd.rc
101
102include $(BUILD_EXECUTABLE)
103
104
105# ==============
106# statsd_test
107# ==============
108
109include $(CLEAR_VARS)
110
111LOCAL_MODULE := statsd_test
112LOCAL_COMPATIBILITY_SUITE := device-tests
113LOCAL_MODULE_TAGS := tests
114
115LOCAL_AIDL_INCLUDES := $(statsd_common_c_includes)
116LOCAL_C_INCLUDES += $(statsd_common_c_includes)
117
118LOCAL_CFLAGS += \
119    -Wall \
120    -Werror \
121    -Wno-missing-field-initializers \
122    -Wno-unused-variable \
123    -Wno-unused-function \
124    -Wno-unused-parameter
125
126LOCAL_SRC_FILES := \
127    $(statsd_common_src) \
128    tests/indexed_priority_queue_test.cpp \
129    tests/LogReader_test.cpp \
130    tests/MetricsManager_test.cpp \
131    tests/UidMap_test.cpp \
132    tests/LogEntryMatcher_test.cpp \
133    tests/AnomalyMonitor_test.cpp \
134    tests/ConditionTracker_test.cpp
135
136LOCAL_STATIC_LIBRARIES := \
137    libgmock
138
139LOCAL_SHARED_LIBRARIES := $(statsd_common_shared_libraries)
140
141LOCAL_PROTOC_OPTIMIZE_TYPE := lite
142
143statsd_common_src:=
144statsd_common_aidl_includes:=
145statsd_common_c_includes:=
146
147include $(BUILD_NATIVE_TEST)
148
149