• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2015 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17LOCAL_PATH := $(call my-dir)
18
19simpleperf_common_cppflags := -std=c++11 -Wall -Wextra -Werror -Wunused
20
21simpleperf_common_shared_libraries := \
22  libbase \
23  libLLVM \
24
25LLVM_ROOT_PATH := external/llvm
26
27libsimpleperf_src_files := \
28  cmd_dumprecord.cpp \
29  cmd_help.cpp \
30  cmd_list.cpp \
31  cmd_record.cpp \
32  cmd_stat.cpp \
33  command.cpp \
34  environment.cpp \
35  event_attr.cpp \
36  event_fd.cpp \
37  event_selection_set.cpp \
38  event_type.cpp \
39  read_elf.cpp \
40  record.cpp \
41  record_file.cpp \
42  utils.cpp \
43  workload.cpp \
44
45include $(CLEAR_VARS)
46LOCAL_CLANG := true
47LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
48LOCAL_SRC_FILES := $(libsimpleperf_src_files)
49LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
50LOCAL_MODULE := libsimpleperf
51LOCAL_MODULE_TAGS := debug
52LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
53LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
54include $(LLVM_ROOT_PATH)/llvm.mk
55include $(LLVM_DEVICE_BUILD_MK)
56include $(BUILD_STATIC_LIBRARY)
57
58ifeq ($(HOST_OS),linux)
59include $(CLEAR_VARS)
60LOCAL_CLANG := true
61LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
62LOCAL_SRC_FILES := $(libsimpleperf_src_files)
63LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
64LOCAL_LDLIBS := -lrt
65LOCAL_MODULE := libsimpleperf
66LOCAL_MODULE_TAGS := optional
67LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
68include $(LLVM_ROOT_PATH)/llvm.mk
69include $(LLVM_HOST_BUILD_MK)
70include $(BUILD_HOST_STATIC_LIBRARY)
71endif
72
73include $(CLEAR_VARS)
74LOCAL_CLANG := true
75LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
76LOCAL_SRC_FILES := main.cpp
77LOCAL_WHOLE_STATIC_LIBRARIES := libsimpleperf
78LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
79LOCAL_MODULE := simpleperf
80LOCAL_MODULE_TAGS := debug
81LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
82LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
83include $(BUILD_EXECUTABLE)
84
85ifeq ($(HOST_OS),linux)
86include $(CLEAR_VARS)
87LOCAL_CLANG := true
88LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
89LOCAL_SRC_FILES := main.cpp
90LOCAL_WHOLE_STATIC_LIBRARIES := libsimpleperf
91LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
92LOCAL_LDLIBS := -lrt
93LOCAL_MODULE := simpleperf
94LOCAL_MODULE_TAGS := optional
95LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
96include $(BUILD_HOST_EXECUTABLE)
97endif
98
99simpleperf_unit_test_src_files := \
100  cmd_dumprecord_test.cpp \
101  cmd_list_test.cpp \
102  cmd_record_test.cpp \
103  cmd_stat_test.cpp \
104  command_test.cpp \
105  environment_test.cpp \
106  gtest_main.cpp \
107  record_file_test.cpp \
108  record_test.cpp \
109  workload_test.cpp \
110
111include $(CLEAR_VARS)
112LOCAL_CLANG := true
113LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
114LOCAL_SRC_FILES := $(simpleperf_unit_test_src_files)
115LOCAL_WHOLE_STATIC_LIBRARIES := libsimpleperf
116LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
117LOCAL_MODULE := simpleperf_unit_test
118LOCAL_MODULE_TAGS := optional
119LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
120include $(BUILD_NATIVE_TEST)
121
122ifeq ($(HOST_OS),linux)
123include $(CLEAR_VARS)
124LOCAL_CLANG := true
125LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
126LOCAL_SRC_FILES := $(simpleperf_unit_test_src_files)
127LOCAL_WHOLE_STATIC_LIBRARIES := libsimpleperf
128LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
129LOCAL_MODULE := simpleperf_unit_test
130LOCAL_MODULE_TAGS := optional
131LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
132include $(BUILD_HOST_NATIVE_TEST)
133endif
134