blob: f37c4b0b48217de304236ece8136172a1224333b [file] [log] [blame]
Yabin Cui67d3abd2015-04-16 15:26:31 -07001#
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
Yabin Cui323e9452015-04-20 18:07:17 -070019simpleperf_common_cppflags := -std=c++11 -Wall -Wextra -Werror -Wunused
20
Yabin Cui568b82a2015-05-05 19:58:07 -070021simpleperf_common_shared_libraries := \
Yabin Cuied91cd92015-04-28 15:54:13 -070022 libbase \
Yabin Cui568b82a2015-05-05 19:58:07 -070023 libLLVM \
24
25LLVM_ROOT_PATH := external/llvm
Yabin Cuied91cd92015-04-28 15:54:13 -070026
Yabin Cui323e9452015-04-20 18:07:17 -070027libsimpleperf_src_files := \
Yabin Cuied91cd92015-04-28 15:54:13 -070028 cmd_dumprecord.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070029 cmd_help.cpp \
30 cmd_list.cpp \
Yabin Cuied91cd92015-04-28 15:54:13 -070031 cmd_record.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -070032 cmd_stat.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070033 command.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -070034 environment.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070035 event_attr.cpp \
36 event_fd.cpp \
Yabin Cuied91cd92015-04-28 15:54:13 -070037 event_selection_set.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070038 event_type.cpp \
Yabin Cui568b82a2015-05-05 19:58:07 -070039 read_elf.cpp \
Yabin Cuied91cd92015-04-28 15:54:13 -070040 record.cpp \
41 record_file.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070042 utils.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -070043 workload.cpp \
Yabin Cui67d3abd2015-04-16 15:26:31 -070044
45include $(CLEAR_VARS)
46LOCAL_CLANG := true
Yabin Cui323e9452015-04-20 18:07:17 -070047LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
48LOCAL_SRC_FILES := $(libsimpleperf_src_files)
Yabin Cui568b82a2015-05-05 19:58:07 -070049LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui323e9452015-04-20 18:07:17 -070050LOCAL_MODULE := libsimpleperf
Dehao Chen7dfd2e72015-04-27 15:34:09 -070051LOCAL_MODULE_TAGS := debug
52LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
Yabin Cui323e9452015-04-20 18:07:17 -070053LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Yabin Cui568b82a2015-05-05 19:58:07 -070054include $(LLVM_ROOT_PATH)/llvm.mk
55include $(LLVM_DEVICE_BUILD_MK)
Yabin Cui323e9452015-04-20 18:07:17 -070056include $(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)
Yabin Cui568b82a2015-05-05 19:58:07 -070063LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui323e9452015-04-20 18:07:17 -070064LOCAL_LDLIBS := -lrt
65LOCAL_MODULE := libsimpleperf
66LOCAL_MODULE_TAGS := optional
67LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
Yabin Cui568b82a2015-05-05 19:58:07 -070068include $(LLVM_ROOT_PATH)/llvm.mk
69include $(LLVM_HOST_BUILD_MK)
Yabin Cui323e9452015-04-20 18:07:17 -070070include $(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
Yabin Cui568b82a2015-05-05 19:58:07 -070078LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui67d3abd2015-04-16 15:26:31 -070079LOCAL_MODULE := simpleperf
Dehao Chen7dfd2e72015-04-27 15:34:09 -070080LOCAL_MODULE_TAGS := debug
81LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
Yabin Cui67d3abd2015-04-16 15:26:31 -070082LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
83include $(BUILD_EXECUTABLE)
84
85ifeq ($(HOST_OS),linux)
86include $(CLEAR_VARS)
87LOCAL_CLANG := true
Yabin Cui323e9452015-04-20 18:07:17 -070088LOCAL_CPPFLAGS := $(simpleperf_common_cppflags)
89LOCAL_SRC_FILES := main.cpp
90LOCAL_WHOLE_STATIC_LIBRARIES := libsimpleperf
Yabin Cui568b82a2015-05-05 19:58:07 -070091LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui67d3abd2015-04-16 15:26:31 -070092LOCAL_LDLIBS := -lrt
93LOCAL_MODULE := simpleperf
94LOCAL_MODULE_TAGS := optional
95LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
96include $(BUILD_HOST_EXECUTABLE)
97endif
Yabin Cui323e9452015-04-20 18:07:17 -070098
99simpleperf_unit_test_src_files := \
Yabin Cuied91cd92015-04-28 15:54:13 -0700100 cmd_dumprecord_test.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -0700101 cmd_list_test.cpp \
Yabin Cuied91cd92015-04-28 15:54:13 -0700102 cmd_record_test.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -0700103 cmd_stat_test.cpp \
104 command_test.cpp \
105 environment_test.cpp \
106 gtest_main.cpp \
Yabin Cuied91cd92015-04-28 15:54:13 -0700107 record_file_test.cpp \
Yabin Cui5beebc82015-05-04 20:27:57 -0700108 record_test.cpp \
Yabin Cui323e9452015-04-20 18:07:17 -0700109 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
Yabin Cui568b82a2015-05-05 19:58:07 -0700116LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui323e9452015-04-20 18:07:17 -0700117LOCAL_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
Yabin Cui568b82a2015-05-05 19:58:07 -0700128LOCAL_SHARED_LIBRARIES := $(simpleperf_common_shared_libraries)
Yabin Cui323e9452015-04-20 18:07:17 -0700129LOCAL_MODULE := simpleperf_unit_test
130LOCAL_MODULE_TAGS := optional
131LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
132include $(BUILD_HOST_NATIVE_TEST)
133endif