1//
2// Copyright (C) 2017 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
17package {
18    // See: http://go/android-license-faq
19    // A large-scale-change added 'default_applicable_licenses' to import
20    // all of the 'license_kinds' from "art_license"
21    // to get the below license kinds:
22    //   SPDX-license-identifier-Apache-2.0
23    default_applicable_licenses: ["art_license"],
24}
25
26cc_defaults {
27    name: "hiddenapi-defaults",
28    host_supported: true,
29    device_supported: false,
30    defaults: ["art_defaults"],
31    srcs: [
32        "hiddenapi.cc",
33    ],
34
35    target: {
36        darwin: {
37            enabled: true,
38        },
39    },
40
41    stl: "c++_static",
42    static_libs: [
43        "libbase",
44        "libcrypto_for_art",
45    ],
46}
47
48art_cc_binary {
49    name: "hiddenapi",
50    defaults: [
51        "hiddenapi-defaults",
52        "libartbase_static_defaults",
53        "libdexfile_static_defaults",
54    ],
55    target: {
56        host: {
57            // Override the prefer32 added by art_cc_binary when
58            // HOST_PREFER_32_BIT is in use. Note that this override cannot be
59            // in cc_defaults because it'd get overridden by the load hook even
60            // when it uses PrependProperties.
61            compile_multilib: "64",
62        },
63    },
64}
65
66art_cc_binary {
67    name: "hiddenapid",
68    defaults: [
69        "art_debug_defaults",
70        "hiddenapi-defaults",
71        "libartbased_static_defaults",
72        "libdexfiled_static_defaults",
73    ],
74}
75
76art_cc_test {
77    name: "art_hiddenapi_tests",
78    host_supported: true,
79    device_supported: false,
80    defaults: [
81        "art_gtest_defaults",
82    ],
83    data: [
84        ":art-gtest-jars-HiddenApi",
85        ":art-gtest-jars-HiddenApiStubs",
86    ],
87    tidy_timeout_srcs: ["hiddenapi_test.cc"],
88    srcs: ["hiddenapi_test.cc"],
89    required: ["hiddenapid"],
90}
91