1//
2// Copyright (C) 2020 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 "system_extras_profcollectd_license"
21    // to get the below license kinds:
22    //   SPDX-license-identifier-Apache-2.0
23    default_applicable_licenses: ["system_extras_profcollectd_license"],
24}
25
26aidl_interface {
27    name: "profcollectd_aidl_interface",
28    unstable: true,
29    srcs: [":profcollectd_aidl"],
30    backend: {
31        rust: {
32            enabled: true,
33        },
34    },
35}
36
37rust_library {
38    name: "libprofcollectd",
39    stem: "liblibprofcollectd",
40    crate_name: "libprofcollectd",
41    srcs: ["lib.rs"],
42    rustlibs: [
43        "profcollectd_aidl_interface-rust", // Move to rlib once b/179041242 is fixed.
44        "libandroid_logger",
45        "libanyhow",
46        "libbinder_rs", // Remove once b/179041241 is fixed.
47        "libchrono",
48        "liblazy_static",
49        "liblog_rust",
50        "libmacaddr",
51        "librand",
52        "libserde", // Remove once b/179041241 is fixed.
53        "libserde_json",
54        "libuuid",
55        "libzip",
56    ],
57    rlibs: [
58        "libprofcollect_libflags_rust",
59        "libprofcollect_libbase_rust",
60        "libsimpleperf_profcollect_rust",
61    ],
62    shared_libs: ["libsimpleperf_profcollect"],
63
64    // Enable 'test' feature for more verbose logging and the logging trace provider.
65    // features: ["test"],
66}
67