blob: 0a5fb298e67e37a977cf9167dfe7ce00f244dd3c [file] [log] [blame]
Janis Danisevskis43c89712020-08-03 23:42:42 +00001// Copyright 2020, 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
15rust_library {
16 name: "libkeystore2",
17 crate_name: "keystore2",
18 srcs: ["src/lib.rs"],
Janis Danisevskis7d77a762020-07-20 13:03:31 -070019
20 rustlibs: [
Jeongik Cha9f632c62021-01-23 09:33:35 +090021 "android.hardware.security.keymint-V1-rust",
22 "android.hardware.security.secureclock-V1-rust",
Janis Danisevskis7a1cf382020-11-20 11:22:14 -080023 "android.security.apc-rust",
Janis Danisevskis9f10a6a2021-01-18 16:45:21 +000024 "android.security.authorization-rust",
Joel Galensonde386b42020-09-30 10:53:05 -070025 "android.security.compat-rust",
Max Bires148c08e2020-10-13 13:41:41 -070026 "android.security.remoteprovisioning-rust",
Jeongik Cha9f632c62021-01-23 09:33:35 +090027 "android.system.keystore2-V1-rust",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070028 "libanyhow",
Janis Danisevskise24f3472020-08-12 17:58:49 -070029 "libbinder_rs",
Janis Danisevskis212c68b2021-01-14 22:29:28 -080030 "libkeystore2_aaid-rust",
Janis Danisevskis7a1cf382020-11-20 11:22:14 -080031 "libkeystore2_apc_compat-rust",
Janis Danisevskisb42fc182020-12-15 08:41:27 -080032 "libkeystore2_crypto_rust",
Joel Galensonde386b42020-09-30 10:53:05 -070033 "libkeystore2_km_compat",
Janis Danisevskisce995432020-07-21 12:22:34 -070034 "libkeystore2_selinux",
Janis Danisevskis4ad056f2020-08-05 19:46:46 +000035 "liblazy_static",
Hasini Gunasinghe557b1032020-11-10 01:35:30 +000036 "liblibc",
Joel Galenson0891bc12020-07-20 10:37:03 -070037 "liblibsqlite3_sys",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070038 "liblog_rust",
Joel Galenson0891bc12020-07-20 10:37:03 -070039 "librand",
Joel Galenson26f4d012020-07-17 14:57:21 -070040 "librusqlite",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070041 "libthiserror",
42 ],
Janis Danisevskis43c89712020-08-03 23:42:42 +000043}
44
Janis Danisevskis2a8330a2021-01-20 15:34:26 -080045rust_library {
46 name: "libkeystore2_test_utils",
47 crate_name: "keystore2_test_utils",
48 srcs: ["test_utils/lib.rs"],
49 rustlibs: [
50 "liblog_rust",
51 "librand",
52 ]
53}
54
Janis Danisevskis43c89712020-08-03 23:42:42 +000055rust_test {
56 name: "keystore2_test",
Joel Galenson26f4d012020-07-17 14:57:21 -070057 crate_name: "keystore2",
Janis Danisevskis43c89712020-08-03 23:42:42 +000058 srcs: ["src/lib.rs"],
Joel Galenson3f78dd82021-01-20 16:21:30 -080059 test_suites: ["general-tests"],
60 auto_gen_config: true,
Janis Danisevskis66784c42021-01-27 08:40:25 -080061 compile_multilib: "first",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070062 rustlibs: [
Jeongik Cha9f632c62021-01-23 09:33:35 +090063 "android.hardware.security.keymint-V1-rust",
64 "android.hardware.security.secureclock-V1-rust",
Janis Danisevskis7a1cf382020-11-20 11:22:14 -080065 "android.security.apc-rust",
Janis Danisevskis9f10a6a2021-01-18 16:45:21 +000066 "android.security.authorization-rust",
Joel Galensonde386b42020-09-30 10:53:05 -070067 "android.security.compat-rust",
Max Bires148c08e2020-10-13 13:41:41 -070068 "android.security.remoteprovisioning-rust",
Jeongik Cha9f632c62021-01-23 09:33:35 +090069 "android.system.keystore2-V1-rust",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070070 "libandroid_logger",
71 "libanyhow",
Janis Danisevskise24f3472020-08-12 17:58:49 -070072 "libbinder_rs",
Janis Danisevskis212c68b2021-01-14 22:29:28 -080073 "libkeystore2_aaid-rust",
Janis Danisevskis7a1cf382020-11-20 11:22:14 -080074 "libkeystore2_apc_compat-rust",
Janis Danisevskisb42fc182020-12-15 08:41:27 -080075 "libkeystore2_crypto_rust",
Joel Galensonde386b42020-09-30 10:53:05 -070076 "libkeystore2_km_compat",
Janis Danisevskisce995432020-07-21 12:22:34 -070077 "libkeystore2_selinux",
Janis Danisevskis2a8330a2021-01-20 15:34:26 -080078 "libkeystore2_test_utils",
Janis Danisevskis4ad056f2020-08-05 19:46:46 +000079 "liblazy_static",
Hasini Gunasinghe557b1032020-11-10 01:35:30 +000080 "liblibc",
Joel Galenson0891bc12020-07-20 10:37:03 -070081 "liblibsqlite3_sys",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070082 "liblog_rust",
Janis Danisevskisbf15d732020-12-08 10:35:26 -080083 "librand",
Joel Galenson26f4d012020-07-17 14:57:21 -070084 "librusqlite",
Janis Danisevskis7d77a762020-07-20 13:03:31 -070085 "libthiserror",
86 ],
Janis Danisevskis43c89712020-08-03 23:42:42 +000087}
Janis Danisevskis652f3812020-08-04 00:01:12 +000088
Janis Danisevskis1af91262020-08-10 14:58:08 -070089rust_binary {
90 name: "keystore2",
91 srcs: ["src/keystore2_main.rs"],
92 rustlibs: [
93 "libandroid_logger",
94 "libbinder_rs",
95 "libkeystore2",
96 "liblog_rust",
97 ],
98 init_rc: ["keystore2.rc"],
99}