blob: 40d00e916f23ed45035b231931d2330561dc8d9a [file] [log] [blame]
abarth6fc8ff02016-07-15 15:15:15 -07001# Copyright 2016 Google Inc.
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
mtkleinf037d482016-07-19 08:25:00 -07006declare_args() {
Mike Kleine459afd2017-03-03 09:21:30 -05007 skia_use_system_zlib = is_official_build
mtkleinf037d482016-07-19 08:25:00 -07008}
9
abarth6fc8ff02016-07-15 15:15:15 -070010import("../third_party.gni")
11
Mike Klein10d665d2016-11-01 11:46:10 -040012if (skia_use_system_zlib) {
13 system("zlib") {
14 libs = [ "z" ]
15 }
16} else {
17 third_party("zlib") {
18 public_include_dirs = [ "../externals/zlib" ]
abarth6fc8ff02016-07-15 15:15:15 -070019
Mike Kleina01c6b02020-04-01 13:47:34 -050020 deps = [ ":zlib_x86" ]
Mike Klein10d665d2016-11-01 11:46:10 -040021 sources = [
22 "../externals/zlib/adler32.c",
23 "../externals/zlib/compress.c",
24 "../externals/zlib/crc32.c",
25 "../externals/zlib/deflate.c",
26 "../externals/zlib/gzclose.c",
27 "../externals/zlib/gzlib.c",
28 "../externals/zlib/gzread.c",
29 "../externals/zlib/gzwrite.c",
30 "../externals/zlib/infback.c",
31 "../externals/zlib/inffast.c",
32 "../externals/zlib/inflate.c",
33 "../externals/zlib/inftrees.c",
Mike Klein10d665d2016-11-01 11:46:10 -040034 "../externals/zlib/trees.c",
35 "../externals/zlib/uncompr.c",
36 "../externals/zlib/zutil.c",
37 ]
38 }
abarth6fc8ff02016-07-15 15:15:15 -070039}
Mike Kleinec3bdbb2017-03-22 22:50:02 -040040
41third_party("zlib_x86") {
42 public_include_dirs = []
43 if (target_cpu == "x86" || target_cpu == "x64") {
44 sources = [
45 "../externals/zlib/crc_folding.c",
46 "../externals/zlib/fill_window_sse.c",
47 "../externals/zlib/x86.c",
48 ]
Mike Kleinc722f792017-07-31 11:57:21 -040049 if (!is_win || is_clang) {
Mike Kleinec3bdbb2017-03-22 22:50:02 -040050 cflags_c = [
51 "-msse4.2",
52 "-mpclmul",
53 ]
54 }
55 } else {
Mike Kleina01c6b02020-04-01 13:47:34 -050056 sources = [ "../externals/zlib/simd_stub.c" ]
Mike Kleinec3bdbb2017-03-22 22:50:02 -040057 }
58}