blob: 550b800b5e5ae3aca3f737614e2e4188c44727b0 [file] [log] [blame]
Dan Willemsen9f022b42018-05-09 16:26:42 -07001cc_binary_host {
2 name: "generate_verity_key",
3 srcs: ["generate_verity_key.c"],
4 cflags: [
5 "-Wall",
6 "-Werror",
7 ],
8
9 shared_libs: [
10 "libcrypto_utils",
11 "libcrypto",
12 ],
13}
14
15java_library_host {
16 name: "VeritySigner",
17 srcs: [
18 "VeritySigner.java",
19 "Utils.java",
20 ],
21 manifest: "VeritySigner.mf",
22
Neil Fuller8bf1b542018-07-12 19:44:10 +010023 static_libs: ["bouncycastle-unbundled"],
Dan Willemsen9f022b42018-05-09 16:26:42 -070024}
25
26java_library_host {
27 name: "BootSignature",
28 srcs: [
29 "BootSignature.java",
30 "VeritySigner.java",
31 "Utils.java",
32 ],
33 manifest: "BootSignature.mf",
34
Neil Fuller8bf1b542018-07-12 19:44:10 +010035 static_libs: ["bouncycastle-unbundled"],
Dan Willemsen9f022b42018-05-09 16:26:42 -070036}
37
38cc_binary_host {
39 name: "verity_verifier",
40 srcs: ["verity_verifier.cpp"],
41
42 target: {
43 darwin: {
44 enabled: false,
45 },
46 },
47
48 sanitize: {
49 misc_undefined: ["integer"],
50 },
51 static_libs: [
52 "libfec",
53 "libfec_rs",
54 "libcrypto_utils",
55 "libcrypto",
56 "libext4_utils",
57 "libsparse",
58 "libsquashfs_utils",
59 "libbase",
60 "libz",
61 ],
62
63 cflags: [
64 "-Wall",
65 "-Werror",
66 ],
67}
68
Tianjie Xua30e0082018-06-26 14:29:13 -070069cc_defaults {
70 name: "verity_tree_defaults",
71 cflags: [
72 "-D_FILE_OFFSET_BITS=64",
73 "-Wall",
74 "-Werror",
75 ],
76
77 static_libs: [
78 "libsparse",
79 "libz",
80 ],
81 shared_libs: [
82 "libcrypto",
83 "libbase",
84 ],
85
86 host_supported: true,
87}
88
Tianjie Xub72fdb52018-06-25 12:41:27 -070089cc_library_static {
90 name: "libverity_tree",
Tianjie Xua30e0082018-06-26 14:29:13 -070091 defaults: [
92 "verity_tree_defaults",
93 ],
Dan Willemsencecb9412018-10-23 14:15:23 -070094 recovery_available: true,
Tianjie Xua30e0082018-06-26 14:29:13 -070095
Tianjie Xu64edcd82018-07-23 15:11:23 -070096 export_include_dirs: ["include"],
Tianjie Xu3817ebe2018-06-21 16:25:23 -070097 srcs: [
Tianjie Xub72fdb52018-06-25 12:41:27 -070098 "build_verity_tree.cpp",
99 "build_verity_tree_utils.cpp",
Tianjie Xu3817ebe2018-06-21 16:25:23 -0700100 "hash_tree_builder.cpp",
Tianjie Xu3817ebe2018-06-21 16:25:23 -0700101 ],
Tianjie Xub72fdb52018-06-25 12:41:27 -0700102}
103
104cc_binary_host {
105 name: "build_verity_tree",
Tianjie Xua30e0082018-06-26 14:29:13 -0700106 defaults: [
107 "verity_tree_defaults",
108 ],
109
Tianjie Xub72fdb52018-06-25 12:41:27 -0700110 srcs: [
Tianjie Xua30e0082018-06-26 14:29:13 -0700111 "build_verity_tree_main.cpp",
Tianjie Xub72fdb52018-06-25 12:41:27 -0700112 ],
113
114 static_libs: [
115 "libverity_tree",
Tianjie Xub72fdb52018-06-25 12:41:27 -0700116 ],
Tianjie Xua30e0082018-06-26 14:29:13 -0700117}
118
119cc_test {
120 name: "build_verity_tree_test",
121 defaults: [
122 "verity_tree_defaults",
Tianjie Xub72fdb52018-06-25 12:41:27 -0700123 ],
Tianjie Xua30e0082018-06-26 14:29:13 -0700124
125 srcs: [
126 "build_verity_tree_test.cpp",
127 ],
128
129 static_libs: [
130 "libverity_tree",
Dan Willemsen9f022b42018-05-09 16:26:42 -0700131 ],
132}
Dan Willemsenebab9372019-03-23 13:53:03 -0700133
134// VeritySigner should probably just be a java_binary
135sh_binary_host {
136 name: "verity_signer",
137 src: "verity_signer",
138 required: ["VeritySigner"],
139}
140
141// BootSignature should probably just be a java_binary
142sh_binary_host {
143 name: "boot_signer",
144 src: "boot_signer",
145 required: ["BootSignature"],
146}
147
148// This should probably be a python_binary_host
149sh_binary_host {
150 name: "build_verity_metadata.py",
151 src: "build_verity_metadata.py",
152}