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
15package {
16    default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19cc_library_shared {
20    name: "libctsjvmtiagent",
21
22    srcs: [
23        "cts_agent.cpp",
24        "cts_logging.cpp",
25        "tagging.cpp",
26        "tracking.cpp",
27        "redefine.cpp",
28    ],
29
30    header_libs: [
31        "jni_headers",
32        "libopenjdkjvmti_headers",
33    ],
34
35    shared_libs: [
36        "liblog",
37        "libdl",
38        "libz",
39    ],
40
41    // The test implementation. We get this provided by ART.
42    // Note: Needs to be "whole" as this exposes JNI functions.
43    whole_static_libs: ["libctstiagent"],
44
45    // Platform libraries  that may not be available to apps. Link in statically.
46    static_libs: ["libbase_ndk"],
47
48    strip: {
49        keep_symbols: true,
50    },
51
52    cflags: [
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    ],
70
71    sdk_version: "current",
72    stl: "c++_static",
73}
74