diff options
Diffstat (limited to 'third_party/zlib')
-rw-r--r-- | third_party/zlib/BUILD.gn | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/third_party/zlib/BUILD.gn b/third_party/zlib/BUILD.gn index 00eb327590..3f9bc5c7c8 100644 --- a/third_party/zlib/BUILD.gn +++ b/third_party/zlib/BUILD.gn @@ -17,6 +17,9 @@ if (skia_use_system_zlib) { third_party("zlib") { public_include_dirs = [ "../externals/zlib" ] + deps = [ + ":zlib_x86", + ] sources = [ "../externals/zlib/adler32.c", "../externals/zlib/compress.c", @@ -30,10 +33,30 @@ if (skia_use_system_zlib) { "../externals/zlib/inffast.c", "../externals/zlib/inflate.c", "../externals/zlib/inftrees.c", - "../externals/zlib/simd_stub.c", "../externals/zlib/trees.c", "../externals/zlib/uncompr.c", "../externals/zlib/zutil.c", ] } } + +third_party("zlib_x86") { + public_include_dirs = [] + if (target_cpu == "x86" || target_cpu == "x64") { + sources = [ + "../externals/zlib/crc_folding.c", + "../externals/zlib/fill_window_sse.c", + "../externals/zlib/x86.c", + ] + if (!is_win) { + cflags_c = [ + "-msse4.2", + "-mpclmul", + ] + } + } else { + sources = [ + "../externals/zlib/simd_stub.c", + ] + } +} |