1// Copyright (C) 2015 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    // See: http://go/android-license-faq
17    // A large-scale-change added 'default_applicable_licenses' to import
18    // all of the 'license_kinds' from "art_license"
19    // to get the below license kinds:
20    //   SPDX-license-identifier-Apache-2.0
21    default_applicable_licenses: ["art_license"],
22    default_team: "trendy_team_art_performance",
23}
24
25cc_defaults {
26    name: "dexdump_defaults",
27    defaults: ["art_defaults"],
28    srcs: [
29        "dexdump_cfg.cc",
30        "dexdump_main.cc",
31        "dexdump.cc",
32    ],
33}
34
35art_cc_binary {
36    name: "dexdump",
37    defaults: ["dexdump_defaults"],
38    visibility: [
39        "//development/build",
40        "//vendor:__subpackages__",
41    ],
42    host_supported: true,
43    target: {
44        android: {
45            shared_libs: [
46                "libdexfile",
47                "libartbase",
48                "libbase",
49            ],
50        },
51        // Use static libs on host: required for Windows build and
52        // static_sdk_tools build.
53        host: {
54            stl: "libc++_static",
55            static_libs: [
56                "libdexfile",
57                "libartbase",
58                "libbase",
59                "libartpalette",
60                "liblog",
61                "libz",
62                "libziparchive",
63            ],
64        },
65        darwin: {
66            enabled: true,
67        },
68        windows: {
69            // dexdump is provided in the Windows SDK.
70            enabled: true,
71        },
72    },
73    apex_available: [
74        "com.android.art",
75        "com.android.art.debug",
76        "test_broken_com.android.art",
77    ],
78}
79
80art_cc_defaults {
81    name: "art_dexdump_tests_defaults",
82    srcs: ["dexdump_test.cc"],
83    target: {
84        host: {
85            required: ["dexdump"],
86        },
87    },
88}
89
90// Version of ART gtest `art_dexdump_tests` bundled with the ART APEX on target.
91// TODO(b/192274705): Remove this module when the migration to standalone ART gtests is complete.
92art_cc_test {
93    name: "art_dexdump_tests",
94    defaults: [
95        "art_gtest_defaults",
96        "art_dexdump_tests_defaults",
97    ],
98}
99
100// Standalone version of ART gtest `art_dexdump_tests`, not bundled with the ART APEX on target.
101art_cc_test {
102    name: "art_standalone_dexdump_tests",
103    defaults: [
104        "art_standalone_gtest_defaults",
105        "art_dexdump_tests_defaults",
106    ],
107    data: [":generate-boot-image"],
108    test_config_template: ":art-gtests-target-standalone-with-boot-image-template",
109}
110