Index: third_party/libwebp/libwebp.gyp |
diff --git a/third_party/libwebp/libwebp.gyp b/third_party/libwebp/libwebp.gyp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9962d0a167b49b350317fdb8dc5a2b14ab00a354 |
--- /dev/null |
+++ b/third_party/libwebp/libwebp.gyp |
@@ -0,0 +1,183 @@ |
+# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+{ |
+ 'targets': [ |
+ { |
+ 'target_name': 'libwebp_dec', |
+ 'type': 'static_library', |
+ 'dependencies' : [ |
+ 'libwebp_dsp', |
+ 'libwebp_dsp_neon', |
+ 'libwebp_utils', |
+ ], |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'dec/alpha.c', |
+ 'dec/buffer.c', |
+ 'dec/frame.c', |
+ 'dec/idec.c', |
+ 'dec/io.c', |
+ 'dec/quant.c', |
+ 'dec/tree.c', |
+ 'dec/vp8.c', |
+ 'dec/vp8l.c', |
+ 'dec/webp.c', |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp_demux', |
+ 'type': 'static_library', |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'demux/demux.c', |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp_dsp', |
+ 'type': 'static_library', |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'dsp/alpha_processing.c', |
+ 'dsp/alpha_processing_sse2.c', |
+ 'dsp/cpu.c', |
+ 'dsp/dec.c', |
+ 'dsp/dec_clip_tables.c', |
+ 'dsp/dec_mips32.c', |
+ 'dsp/dec_sse2.c', |
+ 'dsp/enc.c', |
+ 'dsp/enc_avx2.c', |
+ 'dsp/enc_mips32.c', |
+ 'dsp/enc_sse2.c', |
+ 'dsp/lossless.c', |
+ 'dsp/lossless_mips32.c', |
+ 'dsp/lossless_sse2.c', |
+ 'dsp/upsampling.c', |
+ 'dsp/upsampling_sse2.c', |
+ 'dsp/yuv.c', |
+ 'dsp/yuv_mips32.c', |
+ 'dsp/yuv_sse2.c', |
+ ], |
+ 'conditions': [ |
+ ['OS == "android"', { |
+ 'includes': [ '../../build/android/cpufeatures.gypi' ], |
+ }], |
+ ['order_profiling != 0', { |
+ 'target_conditions' : [ |
+ ['_toolset=="target"', { |
+ 'cflags!': [ '-finstrument-functions' ], |
+ }], |
+ ], |
+ }], |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp_dsp_neon', |
+ 'includes' : [ |
+ # Disable LTO due to Neon issues. |
+ # crbug.com/408997 |
+ '../../build/android/disable_lto.gypi', |
+ ], |
+ 'conditions': [ |
+ # iOS uses the same project to generate build project for both device |
+ # and simulator and do not use "target_arch" variable. Other platform |
+ # set it correctly. |
+ ['OS == "ios" or (target_arch == "arm" and arm_version >= 7 and (arm_neon == 1 or arm_neon_optional == 1)) or (target_arch == "arm64")', { |
+ 'type': 'static_library', |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'dsp/dec_neon.c', |
+ 'dsp/enc_neon.c', |
+ 'dsp/lossless_neon.c', |
+ 'dsp/upsampling_neon.c', |
+ ], |
+ 'conditions': [ |
+ ['target_arch == "arm" and arm_version >= 7 and (arm_neon == 1 or arm_neon_optional == 1)', { |
+ # behavior similar to *.c.neon in an Android.mk |
+ 'cflags!': [ '-mfpu=vfpv3-d16' ], |
+ 'cflags': [ '-mfpu=neon' ], |
+ }], |
+ ['target_arch == "arm64"', { |
+ # avoid an ICE with gcc-4.9: b/15574841 |
+ 'cflags': [ '-frename-registers' ], |
+ }], |
+ ] |
+ }, { |
+ 'type': 'none', |
+ }], |
+ ['order_profiling != 0', { |
+ 'target_conditions' : [ |
+ ['_toolset=="target"', { |
+ 'cflags!': [ '-finstrument-functions' ], |
+ }], |
+ ], |
+ }], |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp_enc', |
+ 'type': 'static_library', |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'enc/alpha.c', |
+ 'enc/analysis.c', |
+ 'enc/backward_references.c', |
+ 'enc/config.c', |
+ 'enc/cost.c', |
+ 'enc/filter.c', |
+ 'enc/frame.c', |
+ 'enc/histogram.c', |
+ 'enc/iterator.c', |
+ 'enc/picture.c', |
+ 'enc/picture_csp.c', |
+ 'enc/picture_psnr.c', |
+ 'enc/picture_rescale.c', |
+ 'enc/picture_tools.c', |
+ 'enc/quant.c', |
+ 'enc/syntax.c', |
+ 'enc/token.c', |
+ 'enc/tree.c', |
+ 'enc/vp8l.c', |
+ 'enc/webpenc.c', |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp_utils', |
+ 'type': 'static_library', |
+ 'include_dirs': ['.'], |
+ 'sources': [ |
+ 'utils/bit_reader.c', |
+ 'utils/bit_writer.c', |
+ 'utils/color_cache.c', |
+ 'utils/filters.c', |
+ 'utils/huffman.c', |
+ 'utils/huffman_encode.c', |
+ 'utils/quant_levels.c', |
+ 'utils/quant_levels_dec.c', |
+ 'utils/random.c', |
+ 'utils/rescaler.c', |
+ 'utils/thread.c', |
+ 'utils/utils.c', |
+ ], |
+ }, |
+ { |
+ 'target_name': 'libwebp', |
+ 'type': 'none', |
+ 'dependencies' : [ |
+ 'libwebp_dec', |
+ 'libwebp_demux', |
+ 'libwebp_dsp', |
+ 'libwebp_dsp_neon', |
+ 'libwebp_enc', |
+ 'libwebp_utils', |
+ ], |
+ 'direct_dependent_settings': { |
+ 'include_dirs': ['.'], |
+ }, |
+ 'conditions': [ |
+ ['OS!="win"', {'product_name': 'webp'}], |
+ ], |
+ }, |
+ ], |
+} |