1package { 2 // See: http://go/android-license-faq 3 // A large-scale-change added 'default_applicable_licenses' to import 4 // all of the 'license_kinds' from "hardware_interfaces_license" 5 // to get the below license kinds: 6 // SPDX-license-identifier-Apache-2.0 7 default_applicable_licenses: ["hardware_interfaces_license"], 8} 9 10cc_library_static { 11 name: "android.hardware.identity-libeic-hal-common", 12 vendor_available: true, 13 defaults: [ 14 "identity_use_latest_hal_aidl_ndk_static", 15 "keymint_use_latest_hal_aidl_ndk_static", 16 ], 17 srcs: [ 18 "common/IdentityCredential.cpp", 19 "common/IdentityCredentialStore.cpp", 20 "common/PresentationSession.cpp", 21 "common/WritableIdentityCredential.cpp", 22 ], 23 export_include_dirs: [ 24 "common", 25 ], 26 cflags: [ 27 "-Wall", 28 "-Wextra", 29 "-Wno-deprecated-declarations", 30 ], 31 shared_libs: [ 32 "liblog", 33 "libcrypto", 34 "libbinder_ndk", 35 "libkeymaster_messages", 36 ], 37 static_libs: [ 38 "libbase", 39 "libcppbor", 40 "libcppcose_rkp", 41 "libutils", 42 "libsoft_attestation_cert", 43 "libkeymaster_portable", 44 "libsoft_attestation_cert", 45 "libpuresoftkeymasterdevice", 46 "android.hardware.identity-support-lib", 47 "android.hardware.keymaster-V3-ndk", 48 "android.hardware.security.rkp-V3-ndk", 49 ], 50} 51 52cc_library_static { 53 name: "android.hardware.identity-libeic-library", 54 vendor_available: true, 55 srcs: [ 56 "libeic/EicCbor.c", 57 "libeic/EicSession.c", 58 "libeic/EicPresentation.c", 59 "libeic/EicProvisioning.c", 60 "EicOpsImpl.cc", 61 ], 62 export_include_dirs: [ 63 "libeic", 64 ], 65 cflags: [ 66 "-DEIC_COMPILATION", 67 "-Wall", 68 "-Wextra", 69 "-DEIC_DEBUG", 70 // Allow using C2x extensions such as omitting parameter names 71 "-Wno-c2x-extensions", 72 ], 73 shared_libs: [ 74 "libbase", 75 "libcrypto", 76 ], 77 static_libs: [ 78 "android.hardware.identity-support-lib", 79 ], 80} 81 82cc_binary { 83 name: "android.hardware.identity-service.example", 84 relative_install_path: "hw", 85 init_rc: ["identity-default.rc"], 86 vintf_fragments: ["identity-default.xml"], 87 vendor: true, 88 defaults: [ 89 "identity_use_latest_hal_aidl_ndk_static", 90 "keymint_use_latest_hal_aidl_ndk_static", 91 ], 92 cflags: [ 93 "-Wall", 94 "-Wextra", 95 "-g", 96 ], 97 shared_libs: [ 98 "liblog", 99 "libcrypto", 100 "libbinder_ndk", 101 "libkeymaster_messages", 102 ], 103 static_libs: [ 104 "libbase", 105 "libcppbor", 106 "libcppcose_rkp", 107 "libutils", 108 "libsoft_attestation_cert", 109 "libkeymaster_portable", 110 "libsoft_attestation_cert", 111 "libpuresoftkeymasterdevice", 112 "android.hardware.identity-support-lib", 113 "android.hardware.keymaster-V3-ndk", 114 "android.hardware.identity-libeic-hal-common", 115 "android.hardware.identity-libeic-library", 116 "android.hardware.security.rkp-V3-ndk", 117 ], 118 srcs: [ 119 "service.cpp", 120 "FakeSecureHardwareProxy.cpp", 121 ], 122 required: [ 123 "android.hardware.identity_credential.xml", 124 ], 125} 126 127cc_test { 128 name: "libeic_test", 129 srcs: [ 130 "EicTests.cpp", 131 "FakeSecureHardwareProxy.cpp", 132 ], 133 cflags: [ 134 "-Wall", 135 "-Wextra", 136 "-g", 137 "-DEIC_DEBUG", 138 ], 139 local_include_dirs: [ 140 "common", 141 ], 142 shared_libs: [ 143 "liblog", 144 "libcrypto", 145 "libkeymaster_messages", 146 ], 147 static_libs: [ 148 "libbase", 149 "libcppbor", 150 "libcppcose_rkp", 151 "libutils", 152 "libsoft_attestation_cert", 153 "libkeymaster_portable", 154 "libsoft_attestation_cert", 155 "libpuresoftkeymasterdevice", 156 "android.hardware.identity-support-lib", 157 "android.hardware.identity-libeic-library", 158 ], 159 test_suites: [ 160 "general-tests", 161 ], 162} 163 164prebuilt_etc { 165 name: "android.hardware.identity_credential.xml", 166 sub_dir: "permissions", 167 vendor: true, 168 src: "android.hardware.identity_credential.xml", 169} 170