xref: /aosp_15_r20/system/keymint/common/Android.bp (revision 9860b7637a5f185913c70aa0caabe3ecb78441e4)
1*9860b763SAndroid Build Coastguard Worker// Copyright 2022, The Android Open Source Project
2*9860b763SAndroid Build Coastguard Worker//
3*9860b763SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*9860b763SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*9860b763SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*9860b763SAndroid Build Coastguard Worker//
7*9860b763SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*9860b763SAndroid Build Coastguard Worker//
9*9860b763SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*9860b763SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*9860b763SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*9860b763SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*9860b763SAndroid Build Coastguard Worker// limitations under the License.
14*9860b763SAndroid Build Coastguard Worker
15*9860b763SAndroid Build Coastguard Workerpackage {
16*9860b763SAndroid Build Coastguard Worker    default_applicable_licenses: ["system_keymint_license"],
17*9860b763SAndroid Build Coastguard Worker}
18*9860b763SAndroid Build Coastguard Worker
19*9860b763SAndroid Build Coastguard Workerrust_defaults {
20*9860b763SAndroid Build Coastguard Worker    name: "kmr_common_defaults",
21*9860b763SAndroid Build Coastguard Worker    edition: "2021",
22*9860b763SAndroid Build Coastguard Worker    lints: "android",
23*9860b763SAndroid Build Coastguard Worker    rustlibs: [
24*9860b763SAndroid Build Coastguard Worker        "libciborium",
25*9860b763SAndroid Build Coastguard Worker        "libciborium_io",
26*9860b763SAndroid Build Coastguard Worker        "libcoset",
27*9860b763SAndroid Build Coastguard Worker        "libder",
28*9860b763SAndroid Build Coastguard Worker        "libkmr_wire",
29*9860b763SAndroid Build Coastguard Worker        "liblog_rust",
30*9860b763SAndroid Build Coastguard Worker        "libpkcs1",
31*9860b763SAndroid Build Coastguard Worker        "libpkcs8",
32*9860b763SAndroid Build Coastguard Worker        "libsec1",
33*9860b763SAndroid Build Coastguard Worker        "libspki",
34*9860b763SAndroid Build Coastguard Worker        "libzeroize",
35*9860b763SAndroid Build Coastguard Worker    ],
36*9860b763SAndroid Build Coastguard Worker    proc_macros: [
37*9860b763SAndroid Build Coastguard Worker        "libenumn",
38*9860b763SAndroid Build Coastguard Worker        "libkmr_derive",
39*9860b763SAndroid Build Coastguard Worker    ],
40*9860b763SAndroid Build Coastguard Worker}
41*9860b763SAndroid Build Coastguard Worker
42*9860b763SAndroid Build Coastguard Workerrust_library {
43*9860b763SAndroid Build Coastguard Worker    name: "libkmr_common",
44*9860b763SAndroid Build Coastguard Worker    crate_name: "kmr_common",
45*9860b763SAndroid Build Coastguard Worker    srcs: ["src/lib.rs"],
46*9860b763SAndroid Build Coastguard Worker    host_supported: true,
47*9860b763SAndroid Build Coastguard Worker    vendor_available: true,
48*9860b763SAndroid Build Coastguard Worker    defaults: [
49*9860b763SAndroid Build Coastguard Worker        "kmr_common_defaults",
50*9860b763SAndroid Build Coastguard Worker    ],
51*9860b763SAndroid Build Coastguard Worker}
52*9860b763SAndroid Build Coastguard Worker
53*9860b763SAndroid Build Coastguard Workerrust_library_rlib {
54*9860b763SAndroid Build Coastguard Worker    name: "libkmr_common_nostd",
55*9860b763SAndroid Build Coastguard Worker    crate_name: "kmr_common",
56*9860b763SAndroid Build Coastguard Worker    srcs: ["src/lib.rs"],
57*9860b763SAndroid Build Coastguard Worker    edition: "2021",
58*9860b763SAndroid Build Coastguard Worker    lints: "android",
59*9860b763SAndroid Build Coastguard Worker    vendor_available: true,
60*9860b763SAndroid Build Coastguard Worker    prefer_rlib: true,
61*9860b763SAndroid Build Coastguard Worker    no_stdlibs: true,
62*9860b763SAndroid Build Coastguard Worker    rustlibs: [
63*9860b763SAndroid Build Coastguard Worker        "libciborium_nostd",
64*9860b763SAndroid Build Coastguard Worker        "libciborium_io_nostd",
65*9860b763SAndroid Build Coastguard Worker        "libcoset_nostd",
66*9860b763SAndroid Build Coastguard Worker        "libder_nostd",
67*9860b763SAndroid Build Coastguard Worker        "libkmr_wire_nostd",
68*9860b763SAndroid Build Coastguard Worker        "liblog_rust_nostd",
69*9860b763SAndroid Build Coastguard Worker        "libpkcs1_nostd",
70*9860b763SAndroid Build Coastguard Worker        "libpkcs8_nostd",
71*9860b763SAndroid Build Coastguard Worker        "libsec1_nostd",
72*9860b763SAndroid Build Coastguard Worker        "libspki_nostd",
73*9860b763SAndroid Build Coastguard Worker        "libzeroize_nostd",
74*9860b763SAndroid Build Coastguard Worker    ],
75*9860b763SAndroid Build Coastguard Worker    proc_macros: [
76*9860b763SAndroid Build Coastguard Worker        "libenumn",
77*9860b763SAndroid Build Coastguard Worker        "libkmr_derive",
78*9860b763SAndroid Build Coastguard Worker    ],
79*9860b763SAndroid Build Coastguard Worker    stdlibs: [
80*9860b763SAndroid Build Coastguard Worker        "liballoc.rust_sysroot",
81*9860b763SAndroid Build Coastguard Worker        "libcompiler_builtins.rust_sysroot",
82*9860b763SAndroid Build Coastguard Worker        "libcore.rust_sysroot",
83*9860b763SAndroid Build Coastguard Worker    ],
84*9860b763SAndroid Build Coastguard Worker}
85*9860b763SAndroid Build Coastguard Worker
86*9860b763SAndroid Build Coastguard Workerrust_test_host {
87*9860b763SAndroid Build Coastguard Worker    name: "libkmr_common_test",
88*9860b763SAndroid Build Coastguard Worker    crate_name: "kmr_common_test",
89*9860b763SAndroid Build Coastguard Worker    srcs: ["src/lib.rs"],
90*9860b763SAndroid Build Coastguard Worker    defaults: [
91*9860b763SAndroid Build Coastguard Worker        "kmr_common_defaults",
92*9860b763SAndroid Build Coastguard Worker    ],
93*9860b763SAndroid Build Coastguard Worker    rustlibs: [
94*9860b763SAndroid Build Coastguard Worker        "libhex",
95*9860b763SAndroid Build Coastguard Worker    ],
96*9860b763SAndroid Build Coastguard Worker    test_suites: ["general-tests"],
97*9860b763SAndroid Build Coastguard Worker}
98*9860b763SAndroid Build Coastguard Worker
99*9860b763SAndroid Build Coastguard Workerrust_binary_host {
100*9860b763SAndroid Build Coastguard Worker    name: "kmr_cddl_dump",
101*9860b763SAndroid Build Coastguard Worker    crate_name: "kmr_cddl_dump",
102*9860b763SAndroid Build Coastguard Worker    srcs: ["src/bin/cddl-dump.rs"],
103*9860b763SAndroid Build Coastguard Worker    rustlibs: [
104*9860b763SAndroid Build Coastguard Worker        "libkmr_common",
105*9860b763SAndroid Build Coastguard Worker        "libkmr_wire",
106*9860b763SAndroid Build Coastguard Worker    ],
107*9860b763SAndroid Build Coastguard Worker}
108*9860b763SAndroid Build Coastguard Worker
109*9860b763SAndroid Build Coastguard Workerrust_fuzz {
110*9860b763SAndroid Build Coastguard Worker    name: "libkmr_common_fuzz_keyblob",
111*9860b763SAndroid Build Coastguard Worker    srcs: ["fuzz/fuzz_targets/keyblob.rs"],
112*9860b763SAndroid Build Coastguard Worker    rustlibs: ["libkmr_common"],
113*9860b763SAndroid Build Coastguard Worker    host_supported: true,
114*9860b763SAndroid Build Coastguard Worker    fuzz_config: {
115*9860b763SAndroid Build Coastguard Worker        cc: [
116*9860b763SAndroid Build Coastguard Worker            "[email protected]",
117*9860b763SAndroid Build Coastguard Worker            "[email protected]",
118*9860b763SAndroid Build Coastguard Worker        ],
119*9860b763SAndroid Build Coastguard Worker        componentid: 1084733,
120*9860b763SAndroid Build Coastguard Worker        hotlists: ["4271696"],
121*9860b763SAndroid Build Coastguard Worker        fuzz_on_haiku_device: true,
122*9860b763SAndroid Build Coastguard Worker        fuzz_on_haiku_host: true,
123*9860b763SAndroid Build Coastguard Worker    },
124*9860b763SAndroid Build Coastguard Worker}
125