blob: d64cb38bcdab4fbf9449f259d4dd62d39edcbfe1 [file] [log] [blame]
brettw@chromium.org069e2b82014-04-30 16:47:24 +00001# Copyright (c) 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Tomasz Śniatowskiabd51832019-06-24 17:52:19 +00005import("//build/config/compiler/compiler.gni")
Lei Zhang40c3a762020-04-22 04:07:41 +00006
7if (build_with_chromium) {
8 import("//testing/test.gni")
9}
Tomasz Śniatowskiabd51832019-06-24 17:52:19 +000010
Adenilson Cavalcanti3060dcb2017-09-29 03:24:52 +000011if (current_cpu == "arm" || current_cpu == "arm64") {
12 import("//build/config/arm.gni")
13}
14
brettw@chromium.org069e2b82014-04-30 16:47:24 +000015config("zlib_config") {
16 include_dirs = [ "." ]
17}
18
Tom Anderson20c7ae12019-04-08 20:51:48 +000019config("zlib_internal_config") {
20 defines = [ "ZLIB_IMPLEMENTATION" ]
Adenilson Cavalcanti9444fdb2020-05-21 21:44:13 +000021
22 if (!is_debug) {
23 # Build code using -O3, see: crbug.com/1084371.
24 configs = [ "//build/config/compiler:optimize_speed" ]
25 }
Hans Wennborg493d4292020-08-04 11:38:55 +000026 if (is_debug || use_libfuzzer) {
27 # Enable zlib's asserts in debug and fuzzer builds.
28 defines += [ "ZLIB_DEBUG" ]
29 }
Tom Anderson20c7ae12019-04-08 20:51:48 +000030}
31
Jamie Madill59187e12020-09-01 23:40:10 +000032source_set("zlib_common_headers") {
33 sources = [
34 "chromeconf.h",
35 "deflate.h",
36 "inffast.h",
37 "inffixed.h",
38 "inflate.h",
39 "inftrees.h",
40 "zconf.h",
41 "zlib.h",
42 "zutil.h",
43 ]
44}
45
Daniel Bratelldde5ce52018-10-31 11:39:12 +000046use_arm_neon_optimizations = false
Richard Townsendc2eb8a72020-02-14 01:15:01 +000047if ((current_cpu == "arm" || current_cpu == "arm64") &&
48 !(is_win && !is_clang)) {
49 # TODO(richard.townsend@arm.com): Optimizations temporarily disabled for
50 # Windows on Arm MSVC builds, see http://crbug.com/v8/10012.
Daniel Bratelldde5ce52018-10-31 11:39:12 +000051 if (arm_use_neon) {
52 use_arm_neon_optimizations = true
53 }
54}
55
Hans Wennborg2a6432e2020-01-24 22:31:29 +000056use_x86_x64_optimizations =
57 (current_cpu == "x86" || current_cpu == "x64") && !is_ios
Daniel Bratelldde5ce52018-10-31 11:39:12 +000058
Noel Gordon17bbb3d2017-09-29 19:44:25 +000059config("zlib_adler32_simd_config") {
Daniel Bratelldde5ce52018-10-31 11:39:12 +000060 if (use_x86_x64_optimizations) {
Noel Gordon17bbb3d2017-09-29 19:44:25 +000061 defines = [ "ADLER32_SIMD_SSSE3" ]
Hans Wennborg2a6432e2020-01-24 22:31:29 +000062 if (is_win) {
63 defines += [ "X86_WINDOWS" ]
64 } else {
65 defines += [ "X86_NOT_WINDOWS" ]
66 }
Noel Gordona0ea34a2020-04-20 20:32:01 +000067 }
68
69 if (use_arm_neon_optimizations) {
Daniel Bratelldde5ce52018-10-31 11:39:12 +000070 defines = [ "ADLER32_SIMD_NEON" ]
Noel Gordon17bbb3d2017-09-29 19:44:25 +000071 }
72}
73
74source_set("zlib_adler32_simd") {
75 visibility = [ ":*" ]
76
Daniel Bratelldde5ce52018-10-31 11:39:12 +000077 if (use_x86_x64_optimizations) {
Noel Gordon17bbb3d2017-09-29 19:44:25 +000078 sources = [
79 "adler32_simd.c",
80 "adler32_simd.h",
81 ]
82
83 if (!is_win || is_clang) {
84 cflags = [ "-mssse3" ]
85 }
86 }
87
Daniel Bratelldde5ce52018-10-31 11:39:12 +000088 if (use_arm_neon_optimizations) {
89 sources = [
90 "adler32_simd.c",
91 "adler32_simd.h",
92 ]
Noel Gordon17bbb3d2017-09-29 19:44:25 +000093 }
94
Tom Anderson20c7ae12019-04-08 20:51:48 +000095 configs += [ ":zlib_internal_config" ]
96
Noel Gordon17bbb3d2017-09-29 19:44:25 +000097 public_configs = [ ":zlib_adler32_simd_config" ]
Jamie Madill59187e12020-09-01 23:40:10 +000098
99 public_deps = [ ":zlib_common_headers" ]
Noel Gordon17bbb3d2017-09-29 19:44:25 +0000100}
101
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000102if (use_arm_neon_optimizations) {
103 config("zlib_arm_crc32_config") {
Noel Gordon4bda75a2019-04-15 06:52:31 +0000104 # Disabled for iPhone, as described in DDI0487C_a_armv8_arm:
105 # "All implementations of the ARMv8.1 architecture are required to
106 # implement the CRC32* instructions. These are optional in ARMv8.0."
107 if (!is_ios) {
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000108 defines = [ "CRC32_ARMV8_CRC32" ]
109 if (is_android) {
110 defines += [ "ARMV8_OS_ANDROID" ]
111 } else if (is_linux || is_chromeos) {
112 defines += [ "ARMV8_OS_LINUX" ]
Nico Weber93be8462020-06-24 22:50:54 +0000113 } else if (is_mac) {
114 defines += [ "ARMV8_OS_MACOS" ]
Noel Gordon4bda75a2019-04-15 06:52:31 +0000115 } else if (is_fuchsia) {
116 defines += [ "ARMV8_OS_FUCHSIA" ]
Richard Townsend8f2b9d42019-04-18 16:45:43 +0000117 } else if (is_win) {
118 defines += [ "ARMV8_OS_WINDOWS" ]
119 } else {
Noel Gordon4bda75a2019-04-15 06:52:31 +0000120 assert(false, "Unsupported ARM OS")
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000121 }
122 }
123 }
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000124
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000125 source_set("zlib_arm_crc32") {
126 visibility = [ ":*" ]
127
Jose Dapena Pazbbacb132019-06-10 09:16:22 +0000128 if (!is_ios) {
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000129 include_dirs = [ "." ]
130
Adenilson Cavalcanti5de00af2020-01-08 22:12:31 +0000131 if (!is_win && !is_clang) {
Tomasz Śniatowskiabd51832019-06-24 17:52:19 +0000132 assert(!use_thin_lto,
Jose Dapena Pazbbacb132019-06-10 09:16:22 +0000133 "ThinLTO fails mixing different module-level targets")
134 cflags_c = [ "-march=armv8-a+crc" ]
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000135 }
136
137 sources = [
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000138 "crc32_simd.c",
139 "crc32_simd.h",
140 ]
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000141 }
142
Tom Anderson20c7ae12019-04-08 20:51:48 +0000143 configs += [ ":zlib_internal_config" ]
144
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000145 public_configs = [ ":zlib_arm_crc32_config" ]
Jamie Madill59187e12020-09-01 23:40:10 +0000146
147 public_deps = [ ":zlib_common_headers" ]
Adenilson Cavalcanti72356722018-02-16 03:41:14 +0000148 }
149}
150
Noel Gordon64ffef02017-12-08 11:39:34 +0000151config("zlib_inflate_chunk_simd_config") {
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000152 if (use_x86_x64_optimizations) {
Noel Gordonbedc29e2018-02-12 01:46:01 +0000153 defines = [ "INFLATE_CHUNK_SIMD_SSE2" ]
154
155 if (current_cpu == "x64") {
156 defines += [ "INFLATE_CHUNK_READ_64LE" ]
157 }
Noel Gordon64ffef02017-12-08 11:39:34 +0000158 }
159
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000160 if (use_arm_neon_optimizations) {
161 defines = [ "INFLATE_CHUNK_SIMD_NEON" ]
Noel Gordona0ea34a2020-04-20 20:32:01 +0000162
Adenilson Cavalcanti9972c362019-01-31 21:39:02 +0000163 if (current_cpu == "arm64") {
164 defines += [ "INFLATE_CHUNK_READ_64LE" ]
165 }
Noel Gordon64ffef02017-12-08 11:39:34 +0000166 }
167}
168
169source_set("zlib_inflate_chunk_simd") {
170 visibility = [ ":*" ]
171
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000172 if (use_x86_x64_optimizations || use_arm_neon_optimizations) {
Noel Gordon64ffef02017-12-08 11:39:34 +0000173 include_dirs = [ "." ]
174
175 sources = [
176 "contrib/optimizations/chunkcopy.h",
177 "contrib/optimizations/inffast_chunk.c",
178 "contrib/optimizations/inffast_chunk.h",
179 "contrib/optimizations/inflate.c",
180 ]
Noel Gordon64ffef02017-12-08 11:39:34 +0000181 }
182
Noel Gordona0ea34a2020-04-20 20:32:01 +0000183 configs += [ ":zlib_internal_config" ]
Noel Gordon64ffef02017-12-08 11:39:34 +0000184
K. Moon1b274912020-04-22 21:15:09 +0000185 # Needed for MSVC, which is still supported by V8 and PDFium. zlib uses K&R C
186 # style function declarations, which triggers warning C4131.
187 configs -= [ "//build/config/compiler:chromium_code" ]
188 configs += [ "//build/config/compiler:no_chromium_code" ]
189
Noel Gordon64ffef02017-12-08 11:39:34 +0000190 public_configs = [ ":zlib_inflate_chunk_simd_config" ]
Jamie Madill59187e12020-09-01 23:40:10 +0000191
192 public_deps = [ ":zlib_common_headers" ]
Noel Gordon64ffef02017-12-08 11:39:34 +0000193}
194
Noel Gordon8e904b32018-01-04 12:10:08 +1100195config("zlib_crc32_simd_config") {
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000196 if (use_x86_x64_optimizations) {
Noel Gordon8e904b32018-01-04 12:10:08 +1100197 defines = [ "CRC32_SIMD_SSE42_PCLMUL" ]
198 }
199}
200
201source_set("zlib_crc32_simd") {
202 visibility = [ ":*" ]
203
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000204 if (use_x86_x64_optimizations) {
Noel Gordon8e904b32018-01-04 12:10:08 +1100205 sources = [
206 "crc32_simd.c",
207 "crc32_simd.h",
208 ]
209
210 if (!is_win || is_clang) {
211 cflags = [
212 "-msse4.2",
213 "-mpclmul",
214 ]
215 }
216 }
217
Tom Anderson20c7ae12019-04-08 20:51:48 +0000218 configs += [ ":zlib_internal_config" ]
219
Noel Gordon8e904b32018-01-04 12:10:08 +1100220 public_configs = [ ":zlib_crc32_simd_config" ]
Jamie Madill59187e12020-09-01 23:40:10 +0000221 public_deps = [ ":zlib_common_headers" ]
Noel Gordon8e904b32018-01-04 12:10:08 +1100222}
223
Noel Gordon2ed8ded2020-04-21 12:11:09 +0000224config("zlib_x86_simd_config") {
225 if (use_x86_x64_optimizations) {
Noel Gordonf36fe822020-04-22 02:50:27 +0000226 defines = [
227 "CRC32_SIMD_SSE42_PCLMUL",
228 "DEFLATE_FILL_WINDOW_SSE2",
229 ]
Noel Gordon2ed8ded2020-04-21 12:11:09 +0000230 }
231}
232
Tom Anderson20c7ae12019-04-08 20:51:48 +0000233source_set("zlib_x86_simd") {
Noel Gordon8e904b32018-01-04 12:10:08 +1100234 visibility = [ ":*" ]
235
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000236 if (use_x86_x64_optimizations) {
scottmgb8135bf2014-12-02 23:28:00 -0800237 sources = [
238 "crc_folding.c",
239 "fill_window_sse.c",
240 ]
Noel Gordon8e904b32018-01-04 12:10:08 +1100241
Nico Weber0f60cc52014-11-18 15:21:17 -0800242 if (!is_win || is_clang) {
scottmgb8135bf2014-12-02 23:28:00 -0800243 cflags = [
244 "-msse4.2",
245 "-mpclmul",
246 ]
Nico Weber0f60cc52014-11-18 15:21:17 -0800247 }
robert.bradford10dd6862014-11-05 06:59:34 -0800248 }
dpranke73636152014-11-17 17:54:55 -0800249
Noel Gordona0ea34a2020-04-20 20:32:01 +0000250 configs += [ ":zlib_internal_config" ]
Noel Gordon2ed8ded2020-04-21 12:11:09 +0000251
252 public_configs = [ ":zlib_x86_simd_config" ]
Jamie Madill59187e12020-09-01 23:40:10 +0000253
254 public_deps = [ ":zlib_common_headers" ]
robert.bradford10dd6862014-11-05 06:59:34 -0800255}
256
brettw3f3d1262015-09-02 10:57:05 -0700257config("zlib_warnings") {
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000258 if (is_clang && use_x86_x64_optimizations) {
brettw3f3d1262015-09-02 10:57:05 -0700259 cflags = [ "-Wno-incompatible-pointer-types" ]
260 }
261}
262
Tom Anderson20c7ae12019-04-08 20:51:48 +0000263component("zlib") {
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000264 if (!is_win) {
265 # Don't stomp on "libzlib" on other platforms.
266 output_name = "chrome_zlib"
267 }
268
269 sources = [
270 "adler32.c",
Tom Anderson20c7ae12019-04-08 20:51:48 +0000271 "chromeconf.h",
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000272 "compress.c",
Adenilson Cavalcantid7f3ca92019-12-12 20:49:49 +0000273 "contrib/optimizations/insert_string.h",
Adenilson Cavalcanti5de00af2020-01-08 22:12:31 +0000274 "cpu_features.c",
275 "cpu_features.h",
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000276 "crc32.c",
277 "crc32.h",
278 "deflate.c",
279 "deflate.h",
280 "gzclose.c",
281 "gzguts.h",
282 "gzlib.c",
283 "gzread.c",
284 "gzwrite.c",
285 "infback.c",
286 "inffast.c",
287 "inffast.h",
288 "inffixed.h",
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000289 "inflate.h",
290 "inftrees.c",
291 "inftrees.h",
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000292 "trees.c",
293 "trees.h",
294 "uncompr.c",
295 "zconf.h",
296 "zlib.h",
297 "zutil.c",
298 "zutil.h",
299 ]
300
Boris Sazonov0f473a12017-11-30 10:01:30 +0000301 defines = []
302 deps = []
Noel Gordona0ea34a2020-04-20 20:32:01 +0000303
Adenilson Cavalcanti5de00af2020-01-08 22:12:31 +0000304 if (!use_x86_x64_optimizations && !use_arm_neon_optimizations) {
305 # Apparently android_cronet bot builds with NEON disabled and
306 # we also should disable optimizations for iOS@x86 (a.k.a. simulator).
307 defines += [ "CPU_NO_SIMD" ]
308 }
309
310 if (is_ios) {
311 # iOS@ARM is a special case where we always have NEON but don't check
312 # for crypto extensions.
Noel Gordona0ea34a2020-04-20 20:32:01 +0000313 # TODO(cavalcantii): verify what is the current state of CPU features
314 # shipped on latest iOS devices.
Adenilson Cavalcanti5de00af2020-01-08 22:12:31 +0000315 defines += [ "ARM_OS_IOS" ]
316 }
Boris Sazonov0f473a12017-11-30 10:01:30 +0000317
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000318 if (use_x86_x64_optimizations || use_arm_neon_optimizations) {
319 deps += [
320 ":zlib_adler32_simd",
321 ":zlib_inflate_chunk_simd",
322 ]
Noel Gordon8e904b32018-01-04 12:10:08 +1100323
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000324 if (use_x86_x64_optimizations) {
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000325 deps += [ ":zlib_crc32_simd" ]
326 } else if (use_arm_neon_optimizations) {
Adenilson Cavalcantid6d19612018-08-07 16:08:59 +0000327 sources += [ "contrib/optimizations/slide_hash_neon.h" ]
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000328 deps += [ ":zlib_arm_crc32" ]
Noel Gordon17bbb3d2017-09-29 19:44:25 +0000329 }
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000330 } else {
331 sources += [ "inflate.c" ]
robert.bradford10dd6862014-11-05 06:59:34 -0800332 }
333
Noel Gordona0ea34a2020-04-20 20:32:01 +0000334 deps += [ ":zlib_x86_simd" ]
335
Adenilson Cavalcanti5de00af2020-01-08 22:12:31 +0000336 if (is_android) {
337 import("//build/config/android/config.gni")
338 if (defined(android_ndk_root) && android_ndk_root != "") {
339 deps += [ "//third_party/android_ndk:cpu_features" ]
340 } else {
341 assert(false, "CPU detection requires the Android NDK")
342 }
343 }
344
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000345 configs -= [ "//build/config/compiler:chromium_code" ]
Noel Gordona0ea34a2020-04-20 20:32:01 +0000346 configs += [ "//build/config/compiler:no_chromium_code" ]
347
348 public_configs = [ ":zlib_config" ]
349
brettw3f3d1262015-09-02 10:57:05 -0700350 configs += [
Tom Anderson20c7ae12019-04-08 20:51:48 +0000351 ":zlib_internal_config",
Lei Zhang40c3a762020-04-22 04:07:41 +0000352
brettw3f3d1262015-09-02 10:57:05 -0700353 # Must be after no_chromium_code for warning flags to be ordered correctly.
354 ":zlib_warnings",
355 ]
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000356
Daniel Bratelldde5ce52018-10-31 11:39:12 +0000357 allow_circular_includes_from = deps
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000358}
359
brettw3f3d1262015-09-02 10:57:05 -0700360config("minizip_warnings") {
361 visibility = [ ":*" ]
Noel Gordon71eb81f2018-02-12 08:15:47 +0000362
brettw3f3d1262015-09-02 10:57:05 -0700363 if (is_clang) {
364 # zlib uses `if ((a == b))` for some reason.
365 cflags = [ "-Wno-parentheses-equality" ]
366 }
367}
368
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000369static_library("minizip") {
370 sources = [
371 "contrib/minizip/ioapi.c",
372 "contrib/minizip/ioapi.h",
373 "contrib/minizip/iowin32.c",
374 "contrib/minizip/iowin32.h",
375 "contrib/minizip/unzip.c",
376 "contrib/minizip/unzip.h",
377 "contrib/minizip/zip.c",
378 "contrib/minizip/zip.h",
379 ]
380
381 if (!is_win) {
382 sources -= [
383 "contrib/minizip/iowin32.c",
384 "contrib/minizip/iowin32.h",
385 ]
386 }
Noel Gordon71eb81f2018-02-12 08:15:47 +0000387
Sylvain Defresne103247f2020-07-27 14:16:50 +0000388 if (is_apple || is_android || is_nacl) {
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000389 # Mac, Android and the BSDs don't have fopen64, ftello64, or fseeko64. We
390 # use fopen, ftell, and fseek instead on these systems.
Hans Wennborg814da1f2019-12-21 11:13:14 +0000391 defines = [ "USE_FILE32API" ]
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000392 }
393
Nico Weberb9b9a5a2020-01-28 18:17:22 +0000394 deps = [ ":zlib" ]
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000395
396 configs -= [ "//build/config/compiler:chromium_code" ]
Noel Gordona0ea34a2020-04-20 20:32:01 +0000397 configs += [ "//build/config/compiler:no_chromium_code" ]
brettw3f3d1262015-09-02 10:57:05 -0700398
Noel Gordona0ea34a2020-04-20 20:32:01 +0000399 public_configs = [ ":zlib_config" ]
400
401 configs += [
brettw3f3d1262015-09-02 10:57:05 -0700402 # Must be after no_chromium_code for warning flags to be ordered correctly.
403 ":minizip_warnings",
404 ]
brettw@chromium.org069e2b82014-04-30 16:47:24 +0000405}
Noel Gordonc83e2162018-01-21 11:19:12 +0000406
407executable("zlib_bench") {
408 include_dirs = [ "." ]
409
Nico Weberb9b9a5a2020-01-28 18:17:22 +0000410 sources = [ "contrib/bench/zlib_bench.cc" ]
Noel Gordonc83e2162018-01-21 11:19:12 +0000411 if (!is_debug) {
412 configs -= [ "//build/config/compiler:default_optimization" ]
413 configs += [ "//build/config/compiler:optimize_speed" ]
414 }
415
Noel Gordona0ea34a2020-04-20 20:32:01 +0000416 deps = [ ":zlib" ]
417
Noel Gordonc83e2162018-01-21 11:19:12 +0000418 configs -= [ "//build/config/compiler:chromium_code" ]
419 configs += [ "//build/config/compiler:no_chromium_code" ]
Noel Gordonc83e2162018-01-21 11:19:12 +0000420}
Adenilson Cavalcanti61bddcc2020-04-08 23:34:58 +0000421
Lei Zhang40c3a762020-04-22 04:07:41 +0000422if (build_with_chromium) {
423 test("zlib_unittests") {
Adenilson Cavalcanti699e86d2020-04-29 03:44:04 +0000424 testonly = true
425
Lei Zhang40c3a762020-04-22 04:07:41 +0000426 sources = [
Adenilson Cavalcanti699e86d2020-04-29 03:44:04 +0000427 "contrib/tests/infcover.cc",
428 "contrib/tests/infcover.h",
Hans Wennborgaec16ef2020-09-04 18:04:45 +0000429 "contrib/tests/run_all_unittests.cc",
Lei Zhang40c3a762020-04-22 04:07:41 +0000430 "contrib/tests/utils_unittest.cc",
Hans Wennborg92d41eb2020-11-12 18:10:14 +0000431 "google/compression_utils_unittest.cc",
432 "google/zip_reader_unittest.cc",
433 "google/zip_unittest.cc",
Lei Zhang40c3a762020-04-22 04:07:41 +0000434 ]
Adenilson Cavalcanti61bddcc2020-04-08 23:34:58 +0000435
Hans Wennborg92d41eb2020-11-12 18:10:14 +0000436 data = [ "google/test/data/" ]
437
Lei Zhang40c3a762020-04-22 04:07:41 +0000438 deps = [
439 ":zlib",
Hans Wennborg92d41eb2020-11-12 18:10:14 +0000440 "google:compression_utils",
441 "google:zip",
Hans Wennborgaec16ef2020-09-04 18:04:45 +0000442 "//base/test:test_support",
Lei Zhang40c3a762020-04-22 04:07:41 +0000443 "//testing/gtest",
Lei Zhang40c3a762020-04-22 04:07:41 +0000444 ]
Adenilson Cavalcantif5eca0d2020-05-26 20:39:26 +0000445
446 include_dirs = [
447 "//third_party/googletest/src/googletest/include/gtest",
448 ".",
449 "google",
450 ]
Lei Zhang40c3a762020-04-22 04:07:41 +0000451 }
Adenilson Cavalcanti61bddcc2020-04-08 23:34:58 +0000452}