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
17include $(CLEAR_VARS)
18
19LOCAL_MODULE := libctsjvmtiagent
20
21# Don't include this package in any configuration by default.
22LOCAL_MODULE_TAGS := optional
23
24LOCAL_SRC_FILES := cts_agent.cpp
25
26# Tagging.
27LOCAL_SRC_FILES += tagging.cpp
28
29# Tracking.
30LOCAL_SRC_FILES += tracking.cpp
31
32# redefinition.
33LOCAL_SRC_FILES += redefine.cpp
34
35LOCAL_C_INCLUDES := $(JNI_H_INCLUDE)
36LOCAL_HEADER_LIBRARIES := libopenjdkjvmti_headers
37
38LOCAL_SHARED_LIBRARIES := liblog \
39                          libdl
40
41# The test implementation. We get this provided by ART.
42# Note: Needs to be "whole" as this exposes JNI functions.
43LOCAL_WHOLE_STATIC_LIBRARIES := libctstiagent
44
45# Platform libraries that are not available to apps. Link in statically.
46LOCAL_STATIC_LIBRARIES += libbase
47
48LOCAL_STRIP_MODULE := keep_symbols
49
50# Turn on all warnings.
51LOCAL_CFLAGS :=  -fno-rtti \
52                 -ggdb3 \
53                 -Wall \
54                 -Wextra \
55                 -Werror \
56                 -Wunreachable-code \
57                 -Wredundant-decls \
58                 -Wshadow \
59                 -Wunused \
60                 -Wimplicit-fallthrough \
61                 -Wfloat-equal \
62                 -Wint-to-void-pointer-cast \
63                 -Wused-but-marked-unused \
64                 -Wdeprecated \
65                 -Wunreachable-code-break \
66                 -Wunreachable-code-return \
67                 -g \
68                 -O0 \
69
70LOCAL_CXX_STL := libc++_static
71
72include $(BUILD_SHARED_LIBRARY)
73