xref: /aosp_15_r20/hardware/interfaces/security/keymint/aidl/Android.bp (revision 4d7e907c777eeecc4c5bd7cf640a754fac206ff7)
1*4d7e907cSAndroid Build Coastguard Workerpackage {
2*4d7e907cSAndroid Build Coastguard Worker    // See: http://go/android-license-faq
3*4d7e907cSAndroid Build Coastguard Worker    // A large-scale-change added 'default_applicable_licenses' to import
4*4d7e907cSAndroid Build Coastguard Worker    // all of the 'license_kinds' from "hardware_interfaces_license"
5*4d7e907cSAndroid Build Coastguard Worker    // to get the below license kinds:
6*4d7e907cSAndroid Build Coastguard Worker    //   SPDX-license-identifier-Apache-2.0
7*4d7e907cSAndroid Build Coastguard Worker    default_applicable_licenses: ["hardware_interfaces_license"],
8*4d7e907cSAndroid Build Coastguard Worker}
9*4d7e907cSAndroid Build Coastguard Worker
10*4d7e907cSAndroid Build Coastguard Workeraidl_interface {
11*4d7e907cSAndroid Build Coastguard Worker    name: "android.hardware.security.keymint",
12*4d7e907cSAndroid Build Coastguard Worker    vendor_available: true,
13*4d7e907cSAndroid Build Coastguard Worker    srcs: [
14*4d7e907cSAndroid Build Coastguard Worker        "android/hardware/security/keymint/*.aidl",
15*4d7e907cSAndroid Build Coastguard Worker    ],
16*4d7e907cSAndroid Build Coastguard Worker    imports: [
17*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.secureclock-V1",
18*4d7e907cSAndroid Build Coastguard Worker    ],
19*4d7e907cSAndroid Build Coastguard Worker    stability: "vintf",
20*4d7e907cSAndroid Build Coastguard Worker    frozen: false,
21*4d7e907cSAndroid Build Coastguard Worker    backend: {
22*4d7e907cSAndroid Build Coastguard Worker        java: {
23*4d7e907cSAndroid Build Coastguard Worker            platform_apis: true,
24*4d7e907cSAndroid Build Coastguard Worker        },
25*4d7e907cSAndroid Build Coastguard Worker        ndk: {
26*4d7e907cSAndroid Build Coastguard Worker            apps_enabled: false,
27*4d7e907cSAndroid Build Coastguard Worker        },
28*4d7e907cSAndroid Build Coastguard Worker        rust: {
29*4d7e907cSAndroid Build Coastguard Worker            enabled: true,
30*4d7e907cSAndroid Build Coastguard Worker            apex_available: [
31*4d7e907cSAndroid Build Coastguard Worker                "//apex_available:platform",
32*4d7e907cSAndroid Build Coastguard Worker                "com.android.compos",
33*4d7e907cSAndroid Build Coastguard Worker            ],
34*4d7e907cSAndroid Build Coastguard Worker        },
35*4d7e907cSAndroid Build Coastguard Worker    },
36*4d7e907cSAndroid Build Coastguard Worker    versions_with_info: [
37*4d7e907cSAndroid Build Coastguard Worker        {
38*4d7e907cSAndroid Build Coastguard Worker            version: "1",
39*4d7e907cSAndroid Build Coastguard Worker            imports: ["android.hardware.security.secureclock-V1"],
40*4d7e907cSAndroid Build Coastguard Worker        },
41*4d7e907cSAndroid Build Coastguard Worker        {
42*4d7e907cSAndroid Build Coastguard Worker            version: "2",
43*4d7e907cSAndroid Build Coastguard Worker            imports: ["android.hardware.security.secureclock-V1"],
44*4d7e907cSAndroid Build Coastguard Worker        },
45*4d7e907cSAndroid Build Coastguard Worker        {
46*4d7e907cSAndroid Build Coastguard Worker            version: "3",
47*4d7e907cSAndroid Build Coastguard Worker            imports: ["android.hardware.security.secureclock-V1"],
48*4d7e907cSAndroid Build Coastguard Worker        },
49*4d7e907cSAndroid Build Coastguard Worker
50*4d7e907cSAndroid Build Coastguard Worker    ],
51*4d7e907cSAndroid Build Coastguard Worker
52*4d7e907cSAndroid Build Coastguard Worker}
53*4d7e907cSAndroid Build Coastguard Worker
54*4d7e907cSAndroid Build Coastguard Worker// An aidl_interface_defaults that includes the latest KeyMint AIDL interface.
55*4d7e907cSAndroid Build Coastguard Worker// aidl_interface modules that depend on KeyMint directly can include this
56*4d7e907cSAndroid Build Coastguard Worker// aidl_interface_defaults to avoid managing dependency versions explicitly.
57*4d7e907cSAndroid Build Coastguard Workeraidl_interface_defaults {
58*4d7e907cSAndroid Build Coastguard Worker    name: "android.hardware.security.keymint-latest-defaults",
59*4d7e907cSAndroid Build Coastguard Worker    imports: ["android.hardware.security.keymint-V4"],
60*4d7e907cSAndroid Build Coastguard Worker}
61*4d7e907cSAndroid Build Coastguard Worker
62*4d7e907cSAndroid Build Coastguard Worker// cc_defaults that includes the latest KeyMint AIDL library.
63*4d7e907cSAndroid Build Coastguard Worker// Modules that depend on KeyMint directly can include this cc_defaults to avoid
64*4d7e907cSAndroid Build Coastguard Worker// managing dependency versions explicitly.
65*4d7e907cSAndroid Build Coastguard Workercc_defaults {
66*4d7e907cSAndroid Build Coastguard Worker    name: "keymint_use_latest_hal_aidl_ndk_static",
67*4d7e907cSAndroid Build Coastguard Worker    static_libs: [
68*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.keymint-V4-ndk",
69*4d7e907cSAndroid Build Coastguard Worker    ],
70*4d7e907cSAndroid Build Coastguard Worker}
71*4d7e907cSAndroid Build Coastguard Worker
72*4d7e907cSAndroid Build Coastguard Workercc_defaults {
73*4d7e907cSAndroid Build Coastguard Worker    name: "keymint_use_latest_hal_aidl_ndk_shared",
74*4d7e907cSAndroid Build Coastguard Worker    shared_libs: [
75*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.keymint-V4-ndk",
76*4d7e907cSAndroid Build Coastguard Worker    ],
77*4d7e907cSAndroid Build Coastguard Worker}
78*4d7e907cSAndroid Build Coastguard Worker
79*4d7e907cSAndroid Build Coastguard Workercc_defaults {
80*4d7e907cSAndroid Build Coastguard Worker    name: "keymint_use_latest_hal_aidl_cpp_static",
81*4d7e907cSAndroid Build Coastguard Worker    static_libs: [
82*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.keymint-V4-cpp",
83*4d7e907cSAndroid Build Coastguard Worker    ],
84*4d7e907cSAndroid Build Coastguard Worker}
85*4d7e907cSAndroid Build Coastguard Worker
86*4d7e907cSAndroid Build Coastguard Workercc_defaults {
87*4d7e907cSAndroid Build Coastguard Worker    name: "keymint_use_latest_hal_aidl_cpp_shared",
88*4d7e907cSAndroid Build Coastguard Worker    shared_libs: [
89*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.keymint-V4-cpp",
90*4d7e907cSAndroid Build Coastguard Worker    ],
91*4d7e907cSAndroid Build Coastguard Worker}
92*4d7e907cSAndroid Build Coastguard Worker
93*4d7e907cSAndroid Build Coastguard Worker// A rust_defaults that includes the latest KeyMint AIDL library.
94*4d7e907cSAndroid Build Coastguard Worker// Modules that depend on KeyMint directly can include this cc_defaults to avoid
95*4d7e907cSAndroid Build Coastguard Worker// managing dependency versions explicitly.
96*4d7e907cSAndroid Build Coastguard Workerrust_defaults {
97*4d7e907cSAndroid Build Coastguard Worker    name: "keymint_use_latest_hal_aidl_rust",
98*4d7e907cSAndroid Build Coastguard Worker    rustlibs: [
99*4d7e907cSAndroid Build Coastguard Worker        "android.hardware.security.keymint-V4-rust",
100*4d7e907cSAndroid Build Coastguard Worker    ],
101*4d7e907cSAndroid Build Coastguard Worker}
102