Files
hardware_interfaces/security/keymint/aidl/default/Android.bp
David Drysdale 764199f2c9 Reinstate C++ KeyMint impl as default
This is a partial revert of aosp/2856649, changeID
Ia450e9a8f2dc530f79e8d74d7ce65f7d67ea129f, because it turns out
that there are Wear devices that are using the default implementation
(but which are not covered by TreeHugger/presubmit).

It restores the C++ implementation for KeyMint as
android.hardware.security.keymint-service, but preserves the Rust
libraries that were moved here in that CL as a subsequent CL
(aosp/2852598) means that Cuttlefish now uses the libraries here.

Test: VtsAidlKeyMintTargetTest on Cuttlefish
Bug: 328251011
Bug: 314513765
Change-Id: Id6f3491144588e418cd6e18e51262fe839bfdf39
2024-03-07 10:33:22 +00:00

120 lines
3.0 KiB
Plaintext

package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "hardware_interfaces_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
default_applicable_licenses: ["hardware_interfaces_license"],
}
cc_binary {
name: "android.hardware.security.keymint-service",
relative_install_path: "hw",
init_rc: ["android.hardware.security.keymint-service.rc"],
vintf_fragments: [
"android.hardware.security.keymint-service.xml",
"android.hardware.security.sharedsecret-service.xml",
"android.hardware.security.secureclock-service.xml",
],
vendor: true,
cflags: [
"-Wall",
"-Wextra",
],
defaults: [
"keymint_use_latest_hal_aidl_ndk_shared",
],
shared_libs: [
"android.hardware.security.rkp-V3-ndk",
"android.hardware.security.sharedsecret-V1-ndk",
"android.hardware.security.secureclock-V1-ndk",
"libbase",
"libbinder_ndk",
"libcppbor_external",
"libcrypto",
"libkeymaster_portable",
"libkeymint",
"liblog",
"libpuresoftkeymasterdevice",
"libutils",
],
srcs: [
"service.cpp",
],
required: [
"android.hardware.hardware_keystore.xml",
],
}
rust_binary {
name: "android.hardware.security.keymint-service.nonsecure",
relative_install_path: "hw",
vendor: true,
init_rc: ["android.hardware.security.keymint-service.rc"],
vintf_fragments: [
"android.hardware.security.keymint-service.xml",
"android.hardware.security.sharedsecret-service.xml",
"android.hardware.security.secureclock-service.xml",
],
defaults: [
"keymint_use_latest_hal_aidl_rust",
],
srcs: [
"main.rs",
],
rustlibs: [
"libandroid_logger",
"libbinder_rs",
"liblog_rust",
"libkmr_hal",
"libkmr_hal_nonsecure",
"libkmr_ta_nonsecure",
],
required: [
"android.hardware.hardware_keystore.xml",
],
}
prebuilt_etc {
name: "android.hardware.hardware_keystore.xml",
sub_dir: "permissions",
vendor: true,
src: "android.hardware.hardware_keystore.xml",
}
rust_library {
name: "libkmr_hal_nonsecure",
crate_name: "kmr_hal_nonsecure",
vendor_available: true,
lints: "android",
rustlibs: [
"libbinder_rs",
"libhex",
"liblibc",
"liblog_rust",
"libkmr_hal",
"libkmr_wire",
],
srcs: ["hal/lib.rs"],
}
rust_library {
name: "libkmr_ta_nonsecure",
crate_name: "kmr_ta_nonsecure",
vendor_available: true,
host_supported: true,
lints: "android",
rustlibs: [
"libhex",
"liblibc",
"liblog_rust",
"libkmr_common",
"libkmr_crypto_boring",
"libkmr_ta",
"libkmr_wire",
],
srcs: ["ta/lib.rs"],
}