• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
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
44cc_library {
45    name: "libzstd",
46    min_sdk_version: "apex_inherit",
47    apex_available: [
48        "//apex_available:platform",
49        "com.android.adbd",
50        "com.android.art",
51        "com.android.art.debug",
52        "com.android.runtime",
53        "com.android.tethering",
54    ],
55    visibility: [
56        "//art:__subpackages__",
57        "//bootable/recovery:__subpackages__",
58        "//cts/tests/tests/simpleperf:__subpackages__",
59        "//device/google/contexthub/util/nanoapp_postprocess:__subpackages__",
60        "//external/bcc/libbpf-tools:__subpackages__",
61        "//external/bpftool:__subpackages__",
62        "//external/dwarves:__subpackages__",
63        "//external/elfutils:__subpackages__",
64        "//external/libbpf:__subpackages__",
65        "//external/mesa3d:__subpackages__",
66        "//external/squashfs-tools/squashfs-tools:__subpackages__",
67        "//external/stg:__subpackages__",
68        "//frameworks/libs/binary_translation/tools:__subpackages__",
69        "//packages/modules/adb:__subpackages__",
70        "//system/logging/logd:__subpackages__",
71        "//system/update_engine:__subpackages__",
72        "//system/core/fs_mgr/libsnapshot:__subpackages__",
73        "//system/core/init:__subpackages__",
74        "//system/core/fastboot:__subpackages__",
75        "//system/extras/partition_tools:__subpackages__",
76        "//system/extras/simpleperf:__subpackages__",
77        "//system/unwinding/libunwindstack:__subpackages__",
78    ],
79    product_available: true,
80    recovery_available: true,
81    vendor_available: true,
82    host_supported: true,
83    native_bridge_supported: true,
84    ramdisk_available: true,
85    vendor_ramdisk_available: true,
86    target: {
87        windows: {
88            enabled: true,
89        },
90    },
91    srcs: ["lib/*/*.c"],
92    arch: {
93        x86_64: {
94            cflags: ["-DZSTD_DISABLE_ASM"],
95        },
96    },
97    cflags: [
98        "-DZSTD_HAVE_WEAK_SYMBOLS=0",
99        "-DZSTD_TRACE=0",
100    ],
101    local_include_dirs: ["lib/common"],
102    export_include_dirs: ["lib"],
103}
104
105cc_defaults {
106    name: "zstd_fuzz_defaults",
107    static_libs: [
108        "libzstd",
109    ],
110    srcs: [
111        "contrib/externalSequenceProducer/sequence_producer.c",
112        "tests/fuzz/fuzz_data_producer.c",
113        "tests/fuzz/fuzz_helpers.c",
114        "tests/fuzz/zstd_helpers.c",
115    ],
116    local_include_dirs: [
117        "contrib/externalSequenceProducer",
118        "lib/common",
119        "lib/compress",
120        "lib/dictBuilder",
121        "tests/fuzz",
122    ],
123    cflags: [
124        "-Wno-error",
125        "-Wno-pointer-arith",
126    ],
127    host_supported: true,
128}
129
130cc_fuzz {
131    name: "zstd_block_decompress_fuzzer",
132    defaults: [
133        "zstd_fuzz_defaults",
134    ],
135    srcs: [
136        "tests/fuzz/block_decompress.c",
137    ],
138}
139
140cc_fuzz {
141    name: "zstd_block_round_trip_fuzzer",
142    defaults: [
143        "zstd_fuzz_defaults",
144    ],
145    srcs: [
146        "tests/fuzz/block_round_trip.c",
147    ],
148}
149
150cc_fuzz {
151    name: "zstd_dict_decompress_fuzzer",
152    defaults: [
153        "zstd_fuzz_defaults",
154    ],
155    srcs: [
156        "tests/fuzz/dictionary_decompress.c",
157    ],
158}
159
160cc_fuzz {
161    name: "zstd_dict_loader_fuzzer",
162    defaults: [
163        "zstd_fuzz_defaults",
164    ],
165    srcs: [
166        "tests/fuzz/dictionary_loader.c",
167    ],
168}
169
170cc_fuzz {
171    name: "zstd_dict_round_trip_fuzzer",
172    defaults: [
173        "zstd_fuzz_defaults",
174    ],
175    srcs: [
176        "tests/fuzz/dictionary_round_trip.c",
177    ],
178}
179
180cc_fuzz {
181    name: "zstd_dict_stream_round_trip_fuzzer",
182    defaults: [
183        "zstd_fuzz_defaults",
184    ],
185    srcs: [
186        "tests/fuzz/dictionary_stream_round_trip.c",
187    ],
188}
189
190cc_fuzz {
191    name: "zstd_raw_dict_round_trip_fuzzer",
192    defaults: [
193        "zstd_fuzz_defaults",
194    ],
195    srcs: [
196        "tests/fuzz/raw_dictionary_round_trip.c",
197    ],
198}
199
200cc_fuzz {
201    name: "zstd_simple_compress_fuzzer",
202    defaults: [
203        "zstd_fuzz_defaults",
204    ],
205    srcs: [
206        "tests/fuzz/simple_compress.c",
207    ],
208}
209
210cc_fuzz {
211    name: "zstd_simple_decompress_fuzzer",
212    defaults: [
213        "zstd_fuzz_defaults",
214    ],
215    srcs: [
216        "tests/fuzz/simple_decompress.c",
217    ],
218}
219
220cc_fuzz {
221    name: "zstd_simple_round_trip_fuzzer",
222    defaults: [
223        "zstd_fuzz_defaults",
224    ],
225    srcs: [
226        "tests/fuzz/simple_round_trip.c",
227    ],
228}
229
230cc_fuzz {
231    name: "zstd_stream_decompress_fuzzer",
232    defaults: [
233        "zstd_fuzz_defaults",
234    ],
235    srcs: [
236        "tests/fuzz/stream_decompress.c",
237    ],
238}
239
240cc_fuzz {
241    name: "zstd_stream_round_trip_fuzzer",
242    defaults: [
243        "zstd_fuzz_defaults",
244    ],
245    srcs: [
246        "tests/fuzz/stream_round_trip.c",
247    ],
248}
249
250cc_fuzz {
251    name: "zstd_frame_info_fuzzer",
252    defaults: [
253        "zstd_fuzz_defaults",
254    ],
255    srcs: [
256        "tests/fuzz/zstd_frame_info.c",
257    ],
258}
259