1//
2// Copyright (C) 2014 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
17// Build variants {target,host} x {debug,ndebug} x {32,64}
18
19cc_defaults {
20    name: "imgdiag-defaults",
21    host_supported: true,
22    srcs: ["imgdiag.cc"],
23    defaults: ["art_defaults"],
24
25    // Note that this tool needs to be built for both 32-bit and 64-bit since it requires
26    // that the image it's analyzing be the same ISA as the runtime ISA.
27    compile_multilib: "both",
28
29    shared_libs: [
30        "libbacktrace",
31        "libbase",
32    ],
33    target: {
34        host: {
35            shared_libs: ["libziparchive"],
36        },
37    },
38    header_libs: [
39        "art_cmdlineparser_headers",
40    ],
41    multilib: {
42        lib32: {
43            suffix: "32",
44        },
45        lib64: {
46            suffix: "64",
47        },
48    },
49    symlink_preferred_arch: true,
50}
51
52art_cc_binary {
53    name: "imgdiag",
54    defaults: ["imgdiag-defaults"],
55    shared_libs: [
56        "libart",
57        "libartbase",
58        "libart-compiler",
59    ],
60    apex_available: [
61        "com.android.art.release",
62        "com.android.art.debug",
63    ],
64}
65
66art_cc_binary {
67    name: "imgdiagd",
68    defaults: [
69        "art_debug_defaults",
70        "imgdiag-defaults",
71    ],
72    shared_libs: [
73        "libartd",
74        "libartbased",
75        "libartd-compiler",
76    ],
77    apex_available: [
78        "com.android.art.debug",
79    ],
80}
81
82art_cc_test {
83    name: "art_imgdiag_tests",
84    defaults: [
85        "art_gtest_defaults",
86    ],
87    srcs: ["imgdiag_test.cc"],
88    required: ["imgdiagd"],
89}
90