blob: d784c3a5b77eff0b4133979c4ac517124d2294ed [file] [log] [blame]
Bob Badouref0ee4f2021-02-12 15:35:55 -08001package {
2 default_applicable_licenses: ["external_zstd_license"],
3}
4
5// Added automatically by a large-scale-change that took the approach of
6// 'apply every license found to every target'. While this makes sure we respect
7// every license restriction, it may not be entirely correct.
8//
9// e.g. GPL in an MIT project might only apply to the contrib/ directory.
10//
11// Please consider splitting the single license below into multiple licenses,
12// taking care not to lose any license_kind information, and overriding the
13// default license using the 'licenses: [...]' property on targets as needed.
14//
15// For unused files, consider creating a 'fileGroup' with "//visibility:private"
16// to attach the license to, and including a comment whether the files may be
17// used in the current project.
18//
19// large-scale-change included anything that looked like it might be a license
20// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
21//
22// Please consider removing redundant or irrelevant files from 'license_text:'.
23// See: http://go/android-license-faq
24license {
25 name: "external_zstd_license",
26 visibility: [":__subpackages__"],
27 license_kinds: [
28 "SPDX-license-identifier-BSD",
29 "SPDX-license-identifier-CC0-1.0",
30 "SPDX-license-identifier-GPL",
31 "SPDX-license-identifier-GPL-2.0",
32 "SPDX-license-identifier-GPL-3.0",
33 "SPDX-license-identifier-LGPL",
34 "SPDX-license-identifier-MIT",
35 "SPDX-license-identifier-Zlib",
36 "legacy_unencumbered",
37 ],
38 license_text: [
39 "COPYING",
40 "LICENSE",
41 ],
42}
43
DroidFreak328d56f542023-05-06 11:09:08 +053044cc_binary {
45 name: "zstd",
46
47 cflags: [
48 "-DZSTD_GZCOMPRESS",
49 "-DZSTD_GZDECOMPRESS",
50 "-DZSTD_LZ4COMPRESS",
51 "-DZSTD_LZ4DECOMPRESS",
52 "-DZSTD_MULTITHREAD",
53 "-Wall",
54 "-Werror",
55 ],
56
57 shared_libs: [
58 "liblz4",
59 "libz",
60 "libzstd",
61 ],
62
63 srcs: ["programs/*.c"],
64 system_ext_specific: true,
65
66 required: ["zstdgrep", "zstdless"],
67
68 symlinks: [
69 "zstdcat",
70 "zstdmt",
71 "unzstd",
72 ],
73}
74
75sh_binary {
76 name: "zstdgrep",
77 src: "programs/zstdgrep",
78 system_ext_specific: true,
79}
80
81sh_binary {
82 name: "zstdless",
83 src: "programs/zstdless",
84 system_ext_specific: true,
85}
86
Josh Gao739d6612020-05-27 18:51:50 -070087cc_library {
88 name: "libzstd",
Jooyung Hanfde68c72022-06-24 14:56:22 +090089 min_sdk_version: "apex_inherit",
Josh Gao739d6612020-05-27 18:51:50 -070090 apex_available: [
91 "//apex_available:platform",
92 "com.android.adbd",
Christopher Ferris73ddd2a2023-11-30 17:02:50 -080093 "com.android.art",
94 "com.android.art.debug",
95 "com.android.runtime",
Motomu Utsumicfe6dbe2025-02-05 17:38:24 +090096 "com.android.tethering",
Josh Gao739d6612020-05-27 18:51:50 -070097 ],
98 visibility: [
Martin Stjernholm272b77a2024-04-08 23:30:34 +010099 "//art:__subpackages__",
Josh Gao739d6612020-05-27 18:51:50 -0700100 "//bootable/recovery:__subpackages__",
Yabin Cui1ae0b702024-07-10 16:06:26 -0700101 "//cts/tests/tests/simpleperf:__subpackages__",
Aleksei Vetrov1970bec2023-11-10 13:23:11 +0000102 "//device/google/contexthub/util/nanoapp_postprocess:__subpackages__",
103 "//external/bcc/libbpf-tools:__subpackages__",
104 "//external/bpftool:__subpackages__",
105 "//external/dwarves:__subpackages__",
106 "//external/elfutils:__subpackages__",
107 "//external/libbpf:__subpackages__",
Gurchetan Singh8305ed02025-02-27 18:38:01 -0800108 "//external/mesa3d:__subpackages__",
DroidFreak3291956772022-12-18 18:49:57 +0530109 "//external/rsync:__subpackages__",
Satoshi Niwae14df3d2021-08-05 12:18:43 +0900110 "//external/squashfs-tools/squashfs-tools:__subpackages__",
Aleksei Vetrov1970bec2023-11-10 13:23:11 +0000111 "//external/stg:__subpackages__",
dimitry77211fc2024-01-30 20:56:15 +0100112 "//frameworks/libs/binary_translation/tools:__subpackages__",
Baligh Uddin625bf952020-10-18 15:01:42 +0000113 "//packages/modules/adb:__subpackages__",
Baligh Uddin5d8ab802020-10-08 12:26:04 +0000114 "//system/logging/logd:__subpackages__",
Kelvin Zhangfa7a2082023-02-15 16:59:59 -0800115 "//system/update_engine:__subpackages__",
116 "//system/core/fs_mgr/libsnapshot:__subpackages__",
117 "//system/core/init:__subpackages__",
118 "//system/core/fastboot:__subpackages__",
David Andersonbfe4aad2023-07-14 09:13:39 -0700119 "//system/extras/partition_tools:__subpackages__",
Yabin Cui1ae0b702024-07-10 16:06:26 -0700120 "//system/extras/simpleperf:__subpackages__",
Christopher Ferris73ddd2a2023-11-30 17:02:50 -0800121 "//system/unwinding/libunwindstack:__subpackages__",
Josh Gao739d6612020-05-27 18:51:50 -0700122 ],
Christopher Ferris73ddd2a2023-11-30 17:02:50 -0800123 product_available: true,
Josh Gao739d6612020-05-27 18:51:50 -0700124 recovery_available: true,
125 vendor_available: true,
DroidFreak3291956772022-12-18 18:49:57 +0530126 system_ext_specific: true,
Josh Gao739d6612020-05-27 18:51:50 -0700127 host_supported: true,
Aleksei Vetrov1970bec2023-11-10 13:23:11 +0000128 native_bridge_supported: true,
Kelvin Zhangfa7a2082023-02-15 16:59:59 -0800129 ramdisk_available: true,
130 vendor_ramdisk_available: true,
Josh Gao739d6612020-05-27 18:51:50 -0700131 target: {
132 windows: {
133 enabled: true,
134 },
135 },
136 srcs: ["lib/*/*.c"],
Elliott Hughes9f102282022-01-13 12:53:04 -0800137 arch: {
138 x86_64: {
Elliott Hughesf19a5ce2023-09-12 17:42:48 +0000139 cflags: ["-DZSTD_DISABLE_ASM"],
Elliott Hughes9f102282022-01-13 12:53:04 -0800140 },
141 },
Elliott Hughes0cc41142024-03-27 22:01:04 +0000142 cflags: [
143 "-DZSTD_HAVE_WEAK_SYMBOLS=0",
144 "-DZSTD_TRACE=0",
145 ],
Josh Gao739d6612020-05-27 18:51:50 -0700146 local_include_dirs: ["lib/common"],
147 export_include_dirs: ["lib"],
148}
Kris Alder8b21ab82020-10-12 19:56:38 +0000149
150cc_defaults {
151 name: "zstd_fuzz_defaults",
152 static_libs: [
153 "libzstd",
154 ],
155 srcs: [
Elliott Hughes44aba642023-09-12 20:18:59 +0000156 "contrib/externalSequenceProducer/sequence_producer.c",
Kris Alder8b21ab82020-10-12 19:56:38 +0000157 "tests/fuzz/fuzz_data_producer.c",
158 "tests/fuzz/fuzz_helpers.c",
159 "tests/fuzz/zstd_helpers.c",
160 ],
161 local_include_dirs: [
Elliott Hughes44aba642023-09-12 20:18:59 +0000162 "contrib/externalSequenceProducer",
Kris Alder8b21ab82020-10-12 19:56:38 +0000163 "lib/common",
Elliott Hughes44aba642023-09-12 20:18:59 +0000164 "lib/compress",
Kris Alder8b21ab82020-10-12 19:56:38 +0000165 "lib/dictBuilder",
166 "tests/fuzz",
167 ],
DroidFreak328d56f542023-05-06 11:09:08 +0530168 system_ext_specific: true,
Kris Alder8b21ab82020-10-12 19:56:38 +0000169 cflags: [
170 "-Wno-error",
171 "-Wno-pointer-arith",
172 ],
173 host_supported: true,
174}
175
176cc_fuzz {
177 name: "zstd_block_decompress_fuzzer",
178 defaults: [
179 "zstd_fuzz_defaults",
180 ],
181 srcs: [
182 "tests/fuzz/block_decompress.c",
183 ],
184}
185
186cc_fuzz {
187 name: "zstd_block_round_trip_fuzzer",
188 defaults: [
189 "zstd_fuzz_defaults",
190 ],
191 srcs: [
192 "tests/fuzz/block_round_trip.c",
193 ],
194}
195
196cc_fuzz {
197 name: "zstd_dict_decompress_fuzzer",
198 defaults: [
199 "zstd_fuzz_defaults",
200 ],
201 srcs: [
202 "tests/fuzz/dictionary_decompress.c",
203 ],
204}
205
206cc_fuzz {
207 name: "zstd_dict_loader_fuzzer",
208 defaults: [
209 "zstd_fuzz_defaults",
210 ],
211 srcs: [
212 "tests/fuzz/dictionary_loader.c",
213 ],
214}
215
216cc_fuzz {
217 name: "zstd_dict_round_trip_fuzzer",
218 defaults: [
219 "zstd_fuzz_defaults",
220 ],
221 srcs: [
222 "tests/fuzz/dictionary_round_trip.c",
223 ],
224}
225
226cc_fuzz {
227 name: "zstd_dict_stream_round_trip_fuzzer",
228 defaults: [
229 "zstd_fuzz_defaults",
230 ],
231 srcs: [
232 "tests/fuzz/dictionary_stream_round_trip.c",
233 ],
234}
235
236cc_fuzz {
237 name: "zstd_raw_dict_round_trip_fuzzer",
238 defaults: [
239 "zstd_fuzz_defaults",
240 ],
241 srcs: [
242 "tests/fuzz/raw_dictionary_round_trip.c",
243 ],
244}
245
246cc_fuzz {
247 name: "zstd_simple_compress_fuzzer",
248 defaults: [
249 "zstd_fuzz_defaults",
250 ],
251 srcs: [
252 "tests/fuzz/simple_compress.c",
253 ],
254}
255
256cc_fuzz {
257 name: "zstd_simple_decompress_fuzzer",
258 defaults: [
259 "zstd_fuzz_defaults",
260 ],
261 srcs: [
262 "tests/fuzz/simple_decompress.c",
263 ],
264}
265
266cc_fuzz {
267 name: "zstd_simple_round_trip_fuzzer",
268 defaults: [
269 "zstd_fuzz_defaults",
270 ],
271 srcs: [
272 "tests/fuzz/simple_round_trip.c",
273 ],
274}
275
276cc_fuzz {
277 name: "zstd_stream_decompress_fuzzer",
278 defaults: [
279 "zstd_fuzz_defaults",
280 ],
281 srcs: [
282 "tests/fuzz/stream_decompress.c",
283 ],
284}
285
286cc_fuzz {
287 name: "zstd_stream_round_trip_fuzzer",
288 defaults: [
289 "zstd_fuzz_defaults",
290 ],
291 srcs: [
292 "tests/fuzz/stream_round_trip.c",
293 ],
294}
295
296cc_fuzz {
297 name: "zstd_frame_info_fuzzer",
298 defaults: [
299 "zstd_fuzz_defaults",
300 ],
301 srcs: [
302 "tests/fuzz/zstd_frame_info.c",
303 ],
304}