Index: third_party/zlib/zlib.gyp |
diff --git a/third_party/zlib/zlib.gyp b/third_party/zlib/zlib.gyp |
index aef41ac2bd969dedff9e8f44ec821e8dddc357fb..8c5ae44b9b99501f01003318bc74229b1e07b1df 100644 |
--- a/third_party/zlib/zlib.gyp |
+++ b/third_party/zlib/zlib.gyp |
@@ -5,6 +5,22 @@ |
{ |
'targets': [ |
{ |
+ 'target_name' : 'zlib_x86_simd', |
+ 'type': 'static_library', |
+ 'conditions': [ |
+ # See http://crbug.com/420616 gyp on mac & ios doesn't apply cflags |
+ ['OS!="ios" and OS!="mac" and (target_arch=="ia32" or target_arch=="x64")', { |
+ 'cflags' : ["-msse2", "-msse4.2", "-mpclmul"], |
+ 'sources' : [ 'crc_folding.c', |
+ 'fill_window_sse.c'] |
+ }, { |
+ 'sources' : [ 'simd_stub.c' ], |
+ }], ['OS=="android"', { |
+ 'toolsets': ['target', 'host'], |
+ }], |
+ ], |
+ }, |
+ { |
'target_name': 'zlib', |
'type': 'static_library', |
'sources': [ |
@@ -31,11 +47,15 @@ |
'trees.c', |
'trees.h', |
'uncompr.c', |
+ 'x86.h', |
'zconf.h', |
'zlib.h', |
'zutil.c', |
'zutil.h', |
], |
+ 'dependencies' : [ |
+ 'zlib_x86_simd' |
+ ], |
'include_dirs': [ |
'.', |
], |
@@ -45,6 +65,9 @@ |
], |
}, |
'conditions': [ |
+ ['OS!="ios" and OS!="mac" and (target_arch=="ia32" or target_arch=="x64")', { |
+ 'sources' : [ 'x86.c', ], |
+ }], |
['OS!="win"', { |
'product_name': 'chrome_zlib', |
}], ['OS=="android"', { |