xref: /aosp_15_r20/hardware/interfaces/security/secretkeeper/aidl/Android.bp (revision 4d7e907c777eeecc4c5bd7cf640a754fac206ff7)
1// Copyright (C) 2023 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_team: "trendy_team_virtualization",
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20aidl_interface {
21    name: "android.hardware.security.secretkeeper",
22    vendor_available: true,
23    srcs: ["android/hardware/security/secretkeeper/*.aidl"],
24    imports: [
25        "android.hardware.security.authgraph-V1",
26    ],
27    stability: "vintf",
28    frozen: false,
29    backend: {
30        java: {
31            enabled: true,
32            platform_apis: true,
33        },
34        ndk: {
35            enabled: true,
36        },
37        rust: {
38            enabled: true,
39            apex_available: [
40                "//apex_available:platform",
41                "com.android.virt",
42            ],
43        },
44    },
45    versions_with_info: [
46        {
47            version: "1",
48            imports: ["android.hardware.security.authgraph-V1"],
49        },
50    ],
51
52}
53
54// cc_defaults that includes the latest Secretkeeper AIDL library.
55// Modules that depend on Secretkeeper directly can include this cc_defaults to avoid
56// managing dependency versions explicitly.
57cc_defaults {
58    name: "secretkeeper_use_latest_hal_aidl_ndk_static",
59    static_libs: [
60        "android.hardware.security.secretkeeper-V1-ndk",
61    ],
62}
63
64cc_defaults {
65    name: "secretkeeper_use_latest_hal_aidl_ndk_shared",
66    shared_libs: [
67        "android.hardware.security.secretkeeper-V1-ndk",
68    ],
69}
70
71cc_defaults {
72    name: "secretkeeper_use_latest_hal_aidl_cpp_static",
73    static_libs: [
74        "android.hardware.security.secretkeeper-V1-cpp",
75    ],
76}
77
78cc_defaults {
79    name: "secretkeeper_use_latest_hal_aidl_cpp_shared",
80    shared_libs: [
81        "android.hardware.security.secretkeeper-V1-cpp",
82    ],
83}
84
85// A rust_defaults that includes the latest Secretkeeper AIDL library.
86// Modules that depend on Secretkeeper directly can include this rust_defaults to avoid
87// managing dependency versions explicitly.
88rust_defaults {
89    name: "secretkeeper_use_latest_hal_aidl_rust",
90    rustlibs: [
91        "android.hardware.security.secretkeeper-V2-rust",
92    ],
93}
94