Migrate to using the same gyp files and gypi generator script as Chromium.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/268009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1012 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/third_party/libvpx/generate_gypi.sh b/third_party/libvpx/generate_gypi.sh
new file mode 100755
index 0000000..b626581
--- /dev/null
+++ b/third_party/libvpx/generate_gypi.sh
@@ -0,0 +1,90 @@
+#!/bin/bash -e
+#
+# Copyright (c) 2011 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.
+
+# This script is used to generate .gypi files needed to build libvpx.
+# Every time libvpx source code is updated just run this script.
+#
+# For example:
+# $ ./generate_gypi.sh
+#
+# And this will update all the .gypi files needed.
+# However changes to asm_*_offsets.asm, vpx_config.asm and
+# vpx_config.h are not updated and needs to modified manually
+# for all platforms.
+
+# This file is based upon the generate_gypi.sh file in Chromium,
+# but with the following additional features enabled:
+# CONFIG_ERROR_CONCEALMENT, CONFIG_POSTPROC
+# http://src.chromium.org/svn/trunk/deps/third_party/libvpx/generate_gypi.sh
+
+LIBVPX_SRC_DIR="source/libvpx"
+COMMON_CONFIG="CONFIG_REALTIME_ONLY=yes CONFIG_GCC=yes CONFIG_ERROR_CONCEALMENT=yes CONFIG_POSTPROC=yes"
+X86_CONFIG="ARCH_X86=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSSE3=yes HAVE_SSE4_1=yes CONFIG_RUNTIME_CPU_DETECT=yes"
+X86_64_CONFIG="ARCH_X86_64=yes HAVE_MMX=yes HAVE_SSE2=yes HAVE_SSE3=yes HAVE_SSSE3=yes HAVE_SSE4_1=yes CONFIG_PIC=yes CONFIG_RUNTIME_CPU_DETECT=yes"
+ARM_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes"
+ARM_NEON_CONFIG="ARCH_ARM=yes HAVE_ARMV5TE=yes HAVE_ARMV6=yes HAVE_ARMV7=yes"
+
+function convert_srcs_to_gypi {
+  # Do the following here:
+  # 1. Filter .c, .h, .s, .S and .asm files.
+  # 2. Exclude *_offsets.c.
+  # 3. Exclude vpx_config.c.
+  # 4. Repelace .asm.s to .asm because gyp will do the conversion.
+  source_list=`grep -E '(\.c|\.h|\.S|\.s|\.asm)$' $1 | grep -v '_offsets\.c' | grep -v 'vpx_config\.c' | sed s/\.asm\.s$/.asm/`
+
+  # Build the gypi file.
+  echo "# This file is generated. Do not edit." > $2
+  echo "# Copyright (c) 2011 The Chromium Authors. All rights reserved." >> $2
+  echo "# Use of this source code is governed by a BSD-style license that can be" >> $2
+  echo "# found in the LICENSE file." >> $2
+  echo "" >> $2
+  echo "{" >> $2
+  echo "  'sources': [" >> $2
+  for f in $source_list
+  do
+    echo "    '$LIBVPX_SRC_DIR/$f'," >> $2
+  done
+  echo "  ]," >> $2
+  echo "}" >> $2
+}
+
+echo "Create temporary directory."
+BASE_DIR=`pwd`
+TEMP_DIR="$LIBVPX_SRC_DIR.temp"
+cp -R $LIBVPX_SRC_DIR $TEMP_DIR
+cd $TEMP_DIR
+
+echo "Prepare Makefile."
+./configure --target=generic-gnu > /dev/null
+make clean > /dev/null
+
+echo "Generate X86 source list."
+make clean > /dev/null
+rm -f libvpx_srcs.txt
+make libvpx_srcs.txt target=libs $COMMON_CONFIG $X86_CONFIG > /dev/null
+convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_x86.gypi
+
+echo "Generate X86_64 source list."
+make clean > /dev/null
+rm -f libvpx_srcs.txt
+make libvpx_srcs.txt target=libs $COMMON_CONFIG $X86_64_CONFIG > /dev/null
+convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_x86_64.gypi
+
+echo "Generate ARM source list."
+make clean > /dev/null
+rm -f libvpx_srcs.txt
+make libvpx_srcs.txt target=libs $COMMON_CONFIG $ARM_CONFIG > /dev/null
+convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_arm.gypi
+
+echo "Generate ARM NEON source list."
+make clean > /dev/null
+rm -f libvpx_srcs.txt
+make libvpx_srcs.txt target=libs $COMMON_CONFIG $ARM_NEON_CONFIG > /dev/null
+convert_srcs_to_gypi libvpx_srcs.txt ../../libvpx_srcs_arm_neon.gypi
+
+echo "Remove temporary directory."
+cd $BASE_DIR
+rm -rf $TEMP_DIR
diff --git a/third_party/libvpx/input_files_linux.gypi b/third_party/libvpx/input_files_linux.gypi
deleted file mode 100644
index 6642b68..0000000
--- a/third_party/libvpx/input_files_linux.gypi
+++ /dev/null
@@ -1,359 +0,0 @@
-{
-  'conditions': [
-    ['target_arch=="ia32"', {
-      'sources': [
-        # generated input files
-        'source/config/linux/ia32/asm_enc_offsets.asm',
-        'source/config/linux/ia32/vpx_config.asm',
-        'source/config/linux/ia32/vpx_config.c',
-        'source/config/linux/ia32/vpx_config.h',
-        'source/config/linux/ia32/vpx_version.h',
-        'source/config/linux/ia32/obj_int_extract.c',
-
-        # source input files
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-
-        # yasm input
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-      ], # sources
-    },], # target_arch=="ia32"
-    ['target_arch=="x64"', {
-      'sources': [
-        # generated input files
-        'source/config/linux/x64/asm_enc_offsets.asm',
-        'source/config/linux/x64/vpx_config.asm',
-        'source/config/linux/x64/vpx_config.c',
-        'source/config/linux/x64/vpx_config.h',
-        'source/config/linux/x64/vpx_version.h',
-        'source/config/linux/x64/obj_int_extract.c',
-
-        # source input files
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-
-        # yasm input
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_block_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-      ], # sources
-    },], # target_arch=="x64"
-  ], # conditions
-}
diff --git a/third_party/libvpx/input_files_mac.gypi b/third_party/libvpx/input_files_mac.gypi
deleted file mode 100644
index fbf569f..0000000
--- a/third_party/libvpx/input_files_mac.gypi
+++ /dev/null
@@ -1,359 +0,0 @@
-{
-  'conditions': [
-    ['target_arch=="ia32"', {
-      'sources': [
-        # generated input files
-        'source/config/mac/ia32/asm_enc_offsets.asm',
-        'source/config/mac/ia32/vpx_config.asm',
-        'source/config/mac/ia32/vpx_config.c',
-        'source/config/mac/ia32/vpx_config.h',
-        'source/config/mac/ia32/vpx_version.h',
-        'source/config/mac/ia32/obj_int_extract.c',
-
-        # source input files
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-
-        # yasm input
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-      ], # sources
-    },], # target_arch=="ia32"
-    ['target_arch=="x64"', {
-      'sources': [
-        # generated input files
-        'source/config/mac/x64/asm_enc_offsets.asm',
-        'source/config/mac/x64/vpx_config.asm',
-        'source/config/mac/x64/vpx_config.c',
-        'source/config/mac/x64/vpx_config.h',
-        'source/config/mac/x64/vpx_version.h',
-        'source/config/mac/x64/obj_int_extract.c',
-
-        # source input files
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-
-        # yasm input
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_block_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-      ], # sources
-    },], # target_arch=="x64"
-  ], # conditions
-}
diff --git a/third_party/libvpx/input_files_win.gypi b/third_party/libvpx/input_files_win.gypi
deleted file mode 100644
index d961f14..0000000
--- a/third_party/libvpx/input_files_win.gypi
+++ /dev/null
@@ -1,288 +0,0 @@
-{
-  'conditions': [
-    ['target_arch=="ia32"', {
-      'sources': [
-        # generated input files
-        'source/config/win/ia32/asm_com_offsets.asm',
-        'source/config/win/ia32/asm_enc_offsets.asm',
-        'source/config/win/ia32/asm_dec_offsets.asm',
-        'source/config/win/ia32/vpx_config.asm',
-        'source/config/win/ia32/vpx_config.c',
-        'source/config/win/ia32/vpx_config.h',
-        'source/config/win/ia32/vpx_version.h',
-
-        # source input files
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-        
-        # yasm input
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-      ], # sources
-    },], # target_arch=="ia32"
-    ['target_arch=="x64"', {
-      'sources': [
-        # generated input files
-        'source/config/win/x64/asm_com_offsets.asm',
-        'source/config/win/x64/asm_dec_offsets.asm',
-        'source/config/win/x64/asm_enc_offsets.asm',
-        'source/config/win/x64/vpx_config.asm',
-        'source/config/win/x64/vpx_config.c',
-        'source/config/win/x64/vpx_config.h',
-        'source/config/win/x64/vpx_version.h',
-
-        # source input files
-        'source/libvpx/vpx/src/vpx_decoder.c',
-        'source/libvpx/vpx/src/vpx_decoder_compat.c',
-        'source/libvpx/vpx/src/vpx_encoder.c',
-        'source/libvpx/vpx/src/vpx_codec.c',
-        'source/libvpx/vpx/src/vpx_image.c',
-        'source/libvpx/vpx_mem/vpx_mem.c',
-        'source/libvpx/vpx_scale/generic/vpxscale.c',
-        'source/libvpx/vpx_scale/generic/yv12config.c',
-        'source/libvpx/vpx_scale/generic/yv12extend.c',
-        'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
-        'source/libvpx/vpx_scale/generic/gen_scalers.c',
-        'source/libvpx/vp8/common/alloccommon.c',
-        'source/libvpx/vp8/common/asm_com_offsets.c',
-        'source/libvpx/vp8/common/blockd.c',
-        'source/libvpx/vp8/common/debugmodes.c',
-        'source/libvpx/vp8/common/entropy.c',
-        'source/libvpx/vp8/common/entropymode.c',
-        'source/libvpx/vp8/common/entropymv.c',
-        'source/libvpx/vp8/common/extend.c',
-        'source/libvpx/vp8/common/filter.c',
-        'source/libvpx/vp8/common/findnearmv.c',
-        'source/libvpx/vp8/common/generic/systemdependent.c',
-        'source/libvpx/vp8/common/idctllm.c',
-        'source/libvpx/vp8/common/invtrans.c',
-        'source/libvpx/vp8/common/loopfilter.c',
-        'source/libvpx/vp8/common/loopfilter_filters.c',
-        'source/libvpx/vp8/common/mbpitch.c',
-        'source/libvpx/vp8/common/modecont.c',
-        'source/libvpx/vp8/common/modecontext.c',
-        'source/libvpx/vp8/common/quant_common.c',
-        'source/libvpx/vp8/common/reconinter.c',
-        'source/libvpx/vp8/common/reconintra.c',
-        'source/libvpx/vp8/common/reconintra4x4.c',
-        'source/libvpx/vp8/common/setupintrarecon.c',
-        'source/libvpx/vp8/common/swapyv12buffer.c',
-        'source/libvpx/vp8/common/treecoder.c',
-        'source/libvpx/vp8/common/x86/x86_systemdependent.c',
-        'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
-        'source/libvpx/vp8/common/x86/loopfilter_x86.c',
-        'source/libvpx/vp8/common/postproc.c',
-        'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
-        'source/libvpx/vp8/vp8_cx_iface.c',
-        'source/libvpx/vp8/encoder/asm_enc_offsets.c',
-        'source/libvpx/vp8/encoder/bitstream.c',
-        'source/libvpx/vp8/encoder/boolhuff.c',
-        'source/libvpx/vp8/encoder/dct.c',
-        'source/libvpx/vp8/encoder/encodeframe.c',
-        'source/libvpx/vp8/encoder/encodeintra.c',
-        'source/libvpx/vp8/encoder/encodemb.c',
-        'source/libvpx/vp8/encoder/encodemv.c',
-        'source/libvpx/vp8/encoder/ethreading.c',
-        'source/libvpx/vp8/encoder/firstpass.c',
-        'source/libvpx/vp8/encoder/generic/csystemdependent.c',
-        'source/libvpx/vp8/encoder/lookahead.c',
-        'source/libvpx/vp8/encoder/mcomp.c',
-        'source/libvpx/vp8/encoder/modecosts.c',
-        'source/libvpx/vp8/encoder/onyx_if.c',
-        'source/libvpx/vp8/encoder/pickinter.c',
-        'source/libvpx/vp8/encoder/picklpf.c',
-        'source/libvpx/vp8/encoder/psnr.c',
-        'source/libvpx/vp8/encoder/quantize.c',
-        'source/libvpx/vp8/encoder/ratectrl.c',
-        'source/libvpx/vp8/encoder/rdopt.c',
-        'source/libvpx/vp8/encoder/sad_c.c',
-        'source/libvpx/vp8/encoder/segmentation.c',
-        'source/libvpx/vp8/encoder/tokenize.c',
-        'source/libvpx/vp8/encoder/treewriter.c',
-        'source/libvpx/vp8/encoder/variance_c.c',
-        'source/libvpx/vp8/encoder/temporal_filter.c',
-        'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
-        'source/libvpx/vp8/encoder/x86/variance_mmx.c',
-        'source/libvpx/vp8/encoder/x86/variance_sse2.c',
-        'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
-        'source/libvpx/vp8/vp8_dx_iface.c',
-        'source/libvpx/vp8/decoder/asm_dec_offsets.c',
-        'source/libvpx/vp8/decoder/dboolhuff.c',
-        'source/libvpx/vp8/decoder/decodemv.c',
-        'source/libvpx/vp8/decoder/decodframe.c',
-        'source/libvpx/vp8/decoder/dequantize.c',
-        'source/libvpx/vp8/decoder/detokenize.c',
-        'source/libvpx/vp8/decoder/error_concealment.c',
-        'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
-        'source/libvpx/vp8/decoder/onyxd_if.c',
-        'source/libvpx/vp8/decoder/threading.c',
-        'source/libvpx/vp8/decoder/idct_blk.c',
-        'source/libvpx/vp8/decoder/reconintra_mt.c',
-        'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
-        'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
-        'source/libvpx/vpx_ports/x86_cpuid.c',
-
-        # yasm input
-        'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
-        'source/libvpx/vp8/common/x86/recon_mmx.asm',
-        'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
-        'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
-        'source/libvpx/vp8/common/x86/recon_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
-        'source/libvpx/vp8/common/x86/loopfilter_block_sse2.asm',
-        'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
-        'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
-        'source/libvpx/vp8/common/x86/postproc_mmx.asm',
-        'source/libvpx/vp8/common/x86/postproc_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/temporal_filter_apply_sse2.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
-        'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
-        'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
-        'source/libvpx/vp8/encoder/x86/encodeopt.asm',
-        'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
-        'source/libvpx/vpx_ports/emms.asm',
-        'source/libvpx/vpx_ports/x86_abi_support.asm',
-        'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
-      ], # sources
-    },], # target_arch=="x64"
-  ], # conditions
-}
diff --git a/third_party/libvpx/libvpx.gyp b/third_party/libvpx/libvpx.gyp
index 087b88f..6bb46c2 100644
--- a/third_party/libvpx/libvpx.gyp
+++ b/third_party/libvpx/libvpx.gyp
@@ -1,135 +1,160 @@
-# Copyright (c) 2010 The Chromium Authors. All rights reserved.
+# Copyright (c) 2011 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.
+
+# This file is based upon the libvpx.gyp file in the Chromium source code,
+# but with the following targets removed: simple_encoder, simple_decoder,
+# libvpx_include, libvpx_lib.
+# http://src.chromium.org/svn/trunk/deps/third_party/libvpx/libvpx.gyp
 {
-  'targets': [
-    {
-      'target_name': 'libvpx',
-      'type': 'static_library',
-      'variables': {
-        'shared_generated_dir':
-          '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
-        'yasm_path': '<(PRODUCT_DIR)/yasm',
-        'yasm_flags': [
-          '-I', 'source/config/<(OS)/<(target_arch)',
-          '-I', 'source/libvpx'
-        ],
-      },
-      'conditions': [
-        ['OS=="linux"', {
-          'variables': {
-            'asm_obj_dir':
-              '<(shared_generated_dir)',
-            'obj_file_ending':
-              'o',
-            'conditions': [
-              ['target_arch=="ia32"', {
-                'yasm_flags': [
-                  '-felf32',
-                  '-m', 'x86',
-                ],
-              },],
-              ['target_arch=="x64"', {
-                'yasm_flags': [
-                  '-felf64',
-                  '-m', 'amd64',
-                ],
-              },],
-            ],
-          },
-          'dependencies': [
-            '../yasm/yasm.gyp:yasm#host',
-          ],
-          'includes': [
-            'input_files_linux.gypi',
-          ],
-        },],
-        ['OS=="mac"', {
-          'variables': {
-            'asm_obj_dir':
-              '<(shared_generated_dir)',
-            'obj_file_ending':
-              'o',
-            'conditions': [
-              ['target_arch=="ia32"', {
-                'yasm_flags': [
-                  '-fmacho32',
-                  '-m', 'x86',
-                ],
-              },],
-              ['target_arch=="x64"', {
-                'yasm_flags': [
-                  '-fmacho64',
-                  '-m', 'amd64',
-                ],
-              },],
-            ],
-          },
-          'dependencies': [
-            '../yasm/yasm.gyp:yasm#host',
-          ],
-          'includes': [
-            'input_files_mac.gypi',
-          ],
-        },],
-        ['OS=="win"', {
-          # Don't build yasm from source on Windows
-          'variables': {
-            'asm_obj_dir':
-              'asm',
-            'obj_file_ending':
-              'obj',
-            'yasm_path': '../yasm/binaries/win/yasm.exe',
-            'conditions': [
-              ['target_arch=="ia32"', {
-                'yasm_flags': [
-                  '-fwin32',
-                  '-m', 'x86',
-                ],
-              },],
-              ['target_arch=="x64"', {
-                'yasm_flags': [
-                  '-fwin64',
-                  '-m', 'amd64',
-                ],
-              },],
-            ],
-          },
-          'includes': [
-            'input_files_win.gypi',
-          ],
-        },],
-      ],
-      
-      'include_dirs': [
-        'source/config/<(OS)/<(target_arch)',
-        'source/libvpx/build',
-        'source/libvpx/',
-        'source/libvpx/vp8/common',
-        'source/libvpx/vp8/decoder',
-        'source/libvpx/vp8/encoder',
-      ],
-      
-      'rules': [
+  'variables': {
+    'conditions': [
+      ['os_posix==1', {
+        'asm_obj_extension': 'o',
+      }],
+      ['OS=="win"', {
+        'asm_obj_extension': 'obj',
+      }],
+    ],
+  },
+  'conditions': [
+    [ '(OS=="linux" or OS=="mac" or OS=="win") and target_arch!="arm"', {
+      'targets': [
         {
-          'rule_name': 'assemble',
-          'extension': 'asm',
-          'inputs': [ '<(yasm_path)', ],
-          'outputs': [
-            '<(asm_obj_dir)/<(RULE_INPUT_ROOT).<(obj_file_ending)',
+          # This libvpx target contains both encoder and decoder.
+          # Encoder is configured to be realtime only.
+          'target_name': 'libvpx',
+          'type': 'static_library',
+          'variables': {
+            'yasm_output_path': '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+            'yasm_flags': [
+              '-I', 'source/config/<(OS)/<(target_arch)',
+              '-I', 'source/libvpx',
+            ],
+          },
+          'includes': [
+            '../yasm/yasm_compile.gypi'
           ],
-          'action': [
-            '<(yasm_path)',
-            '<@(yasm_flags)',
-            '-o', '<(asm_obj_dir)/<(RULE_INPUT_ROOT).<(obj_file_ending)',
-            '<(RULE_INPUT_PATH)',
+          'include_dirs': [
+            'source/config/<(OS)/<(target_arch)',
+            'source/libvpx',
+            'source/libvpx/vp8/common',
+            'source/libvpx/vp8/decoder',
+            'source/libvpx/vp8/encoder',
           ],
-          'process_outputs_as_sources': 1,
-          'message': 'Build libvpx yasm build <(RULE_INPUT_PATH).',
+          'direct_dependent_settings': {
+            'include_dirs': [
+              'source/libvpx',
+            ],
+          },
+          'conditions': [
+            [ 'target_arch=="ia32"', {
+              'includes': [
+                'libvpx_srcs_x86.gypi',
+              ],
+            }],
+            [ 'target_arch=="x64"', {
+              'includes': [
+                'libvpx_srcs_x86_64.gypi',
+              ],
+            }],
+          ],
         },
       ],
-    }
-  ]
+    },
+    ],
+    # 'libvpx' target for Chrome OS ARM builds.
+    [ 'target_arch=="arm" ', {
+      'targets': [
+        {
+          # This libvpx target contains both encoder and decoder.
+          # Encoder is configured to be realtime only.
+          'target_name': 'libvpx',
+          'type': 'static_library',
+
+          # Copy the script to the output folder so that we can use it with
+          # absolute path.
+          'copies': [{
+            'destination': '<(shared_generated_dir)',
+            'files': [
+              '<(ads2gas_script_path)',
+            ],
+          }],
+
+          # Rule to convert .asm files to .S files.
+          'rules': [
+            {
+              'rule_name': 'convert_asm',
+              'extension': 'asm',
+              'inputs': [ '<(shared_generated_dir)/<(ads2gas_script)', ],
+              'outputs': [
+                '<(shared_generated_dir)/<(RULE_INPUT_ROOT).S',
+              ],
+              'action': [
+                'bash',
+                '-c',
+                'cat <(RULE_INPUT_PATH) | perl <(shared_generated_dir)/<(ads2gas_script) > <(shared_generated_dir)/<(RULE_INPUT_ROOT).S',
+              ],
+              'process_outputs_as_sources': 1,
+              'message': 'Convert libvpx asm file for ARM <(RULE_INPUT_PATH).',
+            },
+          ],
+
+          'variables': {
+            # Location of the assembly conversion script.
+            'ads2gas_script': 'ads2gas.pl',
+            'ads2gas_script_path': 'source/libvpx/build/make/<(ads2gas_script)',
+
+            # Location of the intermediate output.
+            'shared_generated_dir': '<(SHARED_INTERMEDIATE_DIR)/third_party/libvpx',
+
+            # Conditions to generate arm-neon as an target.
+            'conditions': [
+              ['target_arch=="arm" and arm_neon==1', {
+                'target_arch_full': 'arm-neon',
+              }, {
+                'target_arch_full': '<(target_arch)',
+              }],
+              ['OS=="android"', {
+                '_OS': 'linux',
+              }, {
+                '_OS': '<(OS)',
+              }],
+            ],
+          },
+          'cflags': [
+            # We need to explicitly tell the GCC assembler to look for
+            # .include directive files from the place where they're
+            # generated to.
+            '-Wa,-I,third_party/libvpx/source/config/<(_OS)/<(target_arch_full)',
+          ],
+          'include_dirs': [
+            'source/config/<(_OS)/<(target_arch_full)',
+            'source/libvpx',
+          ],
+          'direct_dependent_settings': {
+            'include_dirs': [
+              'source/libvpx',
+            ],
+          },
+          'conditions': [
+            # Libvpx optimizations for ARMv6 or ARMv7 without NEON.
+            ['arm_neon==0', {
+              'includes': [
+                'libvpx_srcs_arm.gypi',
+              ],
+            }],
+            # Libvpx optimizations for ARMv7 with NEON.
+            ['arm_neon==1', {
+              'includes': [
+                'libvpx_srcs_arm_neon.gypi',
+              ],
+            }],
+          ],
+        },
+      ],
+    }],
+  ],
 }
 
 # Local Variables:
diff --git a/third_party/libvpx/libvpx_srcs_arm.gypi b/third_party/libvpx/libvpx_srcs_arm.gypi
new file mode 100644
index 0000000..633aa68
--- /dev/null
+++ b/third_party/libvpx/libvpx_srcs_arm.gypi
@@ -0,0 +1,230 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2011 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.
+
+{
+  'sources': [
+    'source/libvpx/vp8/common/alloccommon.c',
+    'source/libvpx/vp8/common/alloccommon.h',
+    'source/libvpx/vp8/common/arm/arm_systemdependent.c',
+    'source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/filter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/idct_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm',
+    'source/libvpx/vp8/common/arm/bilinearfilter_arm.c',
+    'source/libvpx/vp8/common/arm/bilinearfilter_arm.h',
+    'source/libvpx/vp8/common/arm/filter_arm.c',
+    'source/libvpx/vp8/common/arm/idct_arm.h',
+    'source/libvpx/vp8/common/arm/loopfilter_arm.c',
+    'source/libvpx/vp8/common/arm/loopfilter_arm.h',
+    'source/libvpx/vp8/common/arm/recon_arm.h',
+    'source/libvpx/vp8/common/arm/reconintra_arm.c',
+    'source/libvpx/vp8/common/arm/subpixel_arm.h',
+    'source/libvpx/vp8/common/blockd.c',
+    'source/libvpx/vp8/common/blockd.h',
+    'source/libvpx/vp8/common/coefupdateprobs.h',
+    'source/libvpx/vp8/common/common.h',
+    'source/libvpx/vp8/common/common_types.h',
+    'source/libvpx/vp8/common/debugmodes.c',
+    'source/libvpx/vp8/common/default_coef_probs.h',
+    'source/libvpx/vp8/common/entropy.c',
+    'source/libvpx/vp8/common/entropy.h',
+    'source/libvpx/vp8/common/entropymode.c',
+    'source/libvpx/vp8/common/entropymode.h',
+    'source/libvpx/vp8/common/entropymv.c',
+    'source/libvpx/vp8/common/entropymv.h',
+    'source/libvpx/vp8/common/extend.c',
+    'source/libvpx/vp8/common/extend.h',
+    'source/libvpx/vp8/common/filter.c',
+    'source/libvpx/vp8/common/filter.h',
+    'source/libvpx/vp8/common/findnearmv.c',
+    'source/libvpx/vp8/common/findnearmv.h',
+    'source/libvpx/vp8/common/g_common.h',
+    'source/libvpx/vp8/common/generic/systemdependent.c',
+    'source/libvpx/vp8/common/header.h',
+    'source/libvpx/vp8/common/idct.h',
+    'source/libvpx/vp8/common/idctllm.c',
+    'source/libvpx/vp8/common/invtrans.c',
+    'source/libvpx/vp8/common/invtrans.h',
+    'source/libvpx/vp8/common/loopfilter.c',
+    'source/libvpx/vp8/common/loopfilter_filters.c',
+    'source/libvpx/vp8/common/loopfilter.h',
+    'source/libvpx/vp8/common/mbpitch.c',
+    'source/libvpx/vp8/common/modecont.c',
+    'source/libvpx/vp8/common/modecontext.c',
+    'source/libvpx/vp8/common/modecont.h',
+    'source/libvpx/vp8/common/mv.h',
+    'source/libvpx/vp8/common/onyxc_int.h',
+    'source/libvpx/vp8/common/onyxd.h',
+    'source/libvpx/vp8/common/onyx.h',
+    'source/libvpx/vp8/common/postproc.c',
+    'source/libvpx/vp8/common/postproc.h',
+    'source/libvpx/vp8/common/ppflags.h',
+    'source/libvpx/vp8/common/pragmas.h',
+    'source/libvpx/vp8/common/quant_common.c',
+    'source/libvpx/vp8/common/quant_common.h',
+    'source/libvpx/vp8/common/recon.h',
+    'source/libvpx/vp8/common/reconinter.c',
+    'source/libvpx/vp8/common/reconinter.h',
+    'source/libvpx/vp8/common/reconintra4x4.c',
+    'source/libvpx/vp8/common/reconintra4x4.h',
+    'source/libvpx/vp8/common/reconintra.c',
+    'source/libvpx/vp8/common/reconintra.h',
+    'source/libvpx/vp8/common/setupintrarecon.c',
+    'source/libvpx/vp8/common/setupintrarecon.h',
+    'source/libvpx/vp8/common/subpixel.h',
+    'source/libvpx/vp8/common/swapyv12buffer.c',
+    'source/libvpx/vp8/common/swapyv12buffer.h',
+    'source/libvpx/vp8/common/systemdependent.h',
+    'source/libvpx/vp8/common/threading.h',
+    'source/libvpx/vp8/common/treecoder.c',
+    'source/libvpx/vp8/common/treecoder.h',
+    'source/libvpx/vp8/common/type_aliases.h',
+    'source/libvpx/vp8/decoder/arm/arm_dsystemdependent.c',
+    'source/libvpx/vp8/decoder/arm/armv6/dequant_dc_idct_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/dequant_idct_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/dequantize_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/idct_blk_v6.c',
+    'source/libvpx/vp8/decoder/arm/dequantize_arm.c',
+    'source/libvpx/vp8/decoder/arm/dequantize_arm.h',
+    'source/libvpx/vp8/decoder/dboolhuff.c',
+    'source/libvpx/vp8/decoder/dboolhuff.h',
+    'source/libvpx/vp8/decoder/decodemv.c',
+    'source/libvpx/vp8/decoder/decodemv.h',
+    'source/libvpx/vp8/decoder/decoderthreading.h',
+    'source/libvpx/vp8/decoder/decodframe.c',
+    'source/libvpx/vp8/decoder/dequantize.c',
+    'source/libvpx/vp8/decoder/dequantize.h',
+    'source/libvpx/vp8/decoder/detokenize.c',
+    'source/libvpx/vp8/decoder/detokenize.h',
+    'source/libvpx/vp8/decoder/ec_types.h',
+    'source/libvpx/vp8/decoder/error_concealment.c',
+    'source/libvpx/vp8/decoder/error_concealment.h',
+    'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
+    'source/libvpx/vp8/decoder/idct_blk.c',
+    'source/libvpx/vp8/decoder/onyxd_if.c',
+    'source/libvpx/vp8/decoder/onyxd_int.h',
+    'source/libvpx/vp8/decoder/reconintra_mt.c',
+    'source/libvpx/vp8/decoder/reconintra_mt.h',
+    'source/libvpx/vp8/decoder/threading.c',
+    'source/libvpx/vp8/decoder/treereader.h',
+    'source/libvpx/vp8/encoder/arm/arm_csystemdependent.c',
+    'source/libvpx/vp8/encoder/arm/armv5te/boolhuff_armv5te.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_mbrow_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_partitions_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_sad16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance8x8_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm',
+    'source/libvpx/vp8/encoder/arm/boolhuff_arm.c',
+    'source/libvpx/vp8/encoder/arm/dct_arm.c',
+    'source/libvpx/vp8/encoder/arm/dct_arm.h',
+    'source/libvpx/vp8/encoder/arm/encodemb_arm.h',
+    'source/libvpx/vp8/encoder/arm/quantize_arm.c',
+    'source/libvpx/vp8/encoder/arm/quantize_arm.h',
+    'source/libvpx/vp8/encoder/arm/variance_arm.c',
+    'source/libvpx/vp8/encoder/arm/variance_arm.h',
+    'source/libvpx/vp8/encoder/bitstream.c',
+    'source/libvpx/vp8/encoder/bitstream.h',
+    'source/libvpx/vp8/encoder/block.h',
+    'source/libvpx/vp8/encoder/boolhuff.h',
+    'source/libvpx/vp8/encoder/dct.c',
+    'source/libvpx/vp8/encoder/dct.h',
+    'source/libvpx/vp8/encoder/defaultcoefcounts.h',
+    'source/libvpx/vp8/encoder/encodeframe.c',
+    'source/libvpx/vp8/encoder/encodeintra.c',
+    'source/libvpx/vp8/encoder/encodeintra.h',
+    'source/libvpx/vp8/encoder/encodemb.c',
+    'source/libvpx/vp8/encoder/encodemb.h',
+    'source/libvpx/vp8/encoder/encodemv.c',
+    'source/libvpx/vp8/encoder/encodemv.h',
+    'source/libvpx/vp8/encoder/ethreading.c',
+    'source/libvpx/vp8/encoder/firstpass.h',
+    'source/libvpx/vp8/encoder/generic/csystemdependent.c',
+    'source/libvpx/vp8/encoder/lookahead.c',
+    'source/libvpx/vp8/encoder/lookahead.h',
+    'source/libvpx/vp8/encoder/mcomp.c',
+    'source/libvpx/vp8/encoder/mcomp.h',
+    'source/libvpx/vp8/encoder/modecosts.c',
+    'source/libvpx/vp8/encoder/modecosts.h',
+    'source/libvpx/vp8/encoder/onyx_if.c',
+    'source/libvpx/vp8/encoder/onyx_int.h',
+    'source/libvpx/vp8/encoder/pickinter.c',
+    'source/libvpx/vp8/encoder/pickinter.h',
+    'source/libvpx/vp8/encoder/picklpf.c',
+    'source/libvpx/vp8/encoder/psnr.c',
+    'source/libvpx/vp8/encoder/psnr.h',
+    'source/libvpx/vp8/encoder/quantize.c',
+    'source/libvpx/vp8/encoder/quantize.h',
+    'source/libvpx/vp8/encoder/ratectrl.c',
+    'source/libvpx/vp8/encoder/ratectrl.h',
+    'source/libvpx/vp8/encoder/rdopt.c',
+    'source/libvpx/vp8/encoder/rdopt.h',
+    'source/libvpx/vp8/encoder/sad_c.c',
+    'source/libvpx/vp8/encoder/segmentation.c',
+    'source/libvpx/vp8/encoder/segmentation.h',
+    'source/libvpx/vp8/encoder/temporal_filter.h',
+    'source/libvpx/vp8/encoder/tokenize.c',
+    'source/libvpx/vp8/encoder/tokenize.h',
+    'source/libvpx/vp8/encoder/treewriter.c',
+    'source/libvpx/vp8/encoder/treewriter.h',
+    'source/libvpx/vp8/encoder/variance_c.c',
+    'source/libvpx/vp8/encoder/variance.h',
+    'source/libvpx/vp8/vp8_cx_iface.c',
+    'source/libvpx/vp8/vp8_dx_iface.c',
+    'source/libvpx/vpx/internal/vpx_codec_internal.h',
+    'source/libvpx/vpx_mem/include/vpx_mem_intrnl.h',
+    'source/libvpx/vpx_mem/vpx_mem.c',
+    'source/libvpx/vpx_mem/vpx_mem.h',
+    'source/libvpx/vpx_ports/arm_cpudetect.c',
+    'source/libvpx/vpx_ports/arm.h',
+    'source/libvpx/vpx_ports/asm_offsets.h',
+    'source/libvpx/vpx_ports/mem.h',
+    'source/libvpx/vpx_ports/vpx_timer.h',
+    'source/libvpx/vpx_scale/arm/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/arm/yv12extend_arm.h',
+    'source/libvpx/vpx_scale/generic/gen_scalers.c',
+    'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/generic/vpxscale.c',
+    'source/libvpx/vpx_scale/generic/yv12config.c',
+    'source/libvpx/vpx_scale/generic/yv12extend.c',
+    'source/libvpx/vpx_scale/generic/yv12extend_generic.h',
+    'source/libvpx/vpx_scale/scale_mode.h',
+    'source/libvpx/vpx_scale/vpxscale.h',
+    'source/libvpx/vpx_scale/yv12config.h',
+    'source/libvpx/vpx_scale/yv12extend.h',
+    'source/libvpx/vpx/src/vpx_codec.c',
+    'source/libvpx/vpx/src/vpx_decoder.c',
+    'source/libvpx/vpx/src/vpx_decoder_compat.c',
+    'source/libvpx/vpx/src/vpx_encoder.c',
+    'source/libvpx/vpx/src/vpx_image.c',
+    'source/libvpx/vpx/vp8cx.h',
+    'source/libvpx/vpx/vp8dx.h',
+    'source/libvpx/vpx/vp8e.h',
+    'source/libvpx/vpx/vp8.h',
+    'source/libvpx/vpx/vpx_codec.h',
+    'source/libvpx/vpx/vpx_codec_impl_bottom.h',
+    'source/libvpx/vpx/vpx_codec_impl_top.h',
+    'source/libvpx/vpx/vpx_decoder_compat.h',
+    'source/libvpx/vpx/vpx_decoder.h',
+    'source/libvpx/vpx/vpx_encoder.h',
+    'source/libvpx/vpx/vpx_image.h',
+    'source/libvpx/vpx/vpx_integer.h',
+  ],
+}
diff --git a/third_party/libvpx/libvpx_srcs_arm_neon.gypi b/third_party/libvpx/libvpx_srcs_arm_neon.gypi
new file mode 100644
index 0000000..6bd7f45
--- /dev/null
+++ b/third_party/libvpx/libvpx_srcs_arm_neon.gypi
@@ -0,0 +1,275 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2011 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.
+
+{
+  'sources': [
+    'source/libvpx/vp8/common/alloccommon.c',
+    'source/libvpx/vp8/common/alloccommon.h',
+    'source/libvpx/vp8/common/arm/arm_systemdependent.c',
+    'source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem8x4_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/copymem8x8_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/dc_only_idct_add_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/filter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/idct_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/iwalsh_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/loopfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/simpleloopfilter_v6.asm',
+    'source/libvpx/vp8/common/arm/armv6/sixtappredict8x4_v6.asm',
+    'source/libvpx/vp8/common/arm/bilinearfilter_arm.c',
+    'source/libvpx/vp8/common/arm/bilinearfilter_arm.h',
+    'source/libvpx/vp8/common/arm/filter_arm.c',
+    'source/libvpx/vp8/common/arm/idct_arm.h',
+    'source/libvpx/vp8/common/arm/loopfilter_arm.c',
+    'source/libvpx/vp8/common/arm/loopfilter_arm.h',
+    'source/libvpx/vp8/common/arm/neon/bilinearpredict16x16_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/bilinearpredict4x4_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/bilinearpredict8x4_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/bilinearpredict8x8_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/buildintrapredictorsmby_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/copymem16x16_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/copymem8x4_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/copymem8x8_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/dc_only_idct_add_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/iwalsh_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/loopfilter_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/mbloopfilter_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/save_neon_reg.asm',
+    'source/libvpx/vp8/common/arm/neon/shortidct4x4llm_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/sixtappredict16x16_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/sixtappredict4x4_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/sixtappredict8x4_neon.asm',
+    'source/libvpx/vp8/common/arm/neon/sixtappredict8x8_neon.asm',
+    'source/libvpx/vp8/common/arm/recon_arm.h',
+    'source/libvpx/vp8/common/arm/reconintra_arm.c',
+    'source/libvpx/vp8/common/arm/subpixel_arm.h',
+    'source/libvpx/vp8/common/blockd.c',
+    'source/libvpx/vp8/common/blockd.h',
+    'source/libvpx/vp8/common/coefupdateprobs.h',
+    'source/libvpx/vp8/common/common.h',
+    'source/libvpx/vp8/common/common_types.h',
+    'source/libvpx/vp8/common/debugmodes.c',
+    'source/libvpx/vp8/common/default_coef_probs.h',
+    'source/libvpx/vp8/common/entropy.c',
+    'source/libvpx/vp8/common/entropy.h',
+    'source/libvpx/vp8/common/entropymode.c',
+    'source/libvpx/vp8/common/entropymode.h',
+    'source/libvpx/vp8/common/entropymv.c',
+    'source/libvpx/vp8/common/entropymv.h',
+    'source/libvpx/vp8/common/extend.c',
+    'source/libvpx/vp8/common/extend.h',
+    'source/libvpx/vp8/common/filter.c',
+    'source/libvpx/vp8/common/filter.h',
+    'source/libvpx/vp8/common/findnearmv.c',
+    'source/libvpx/vp8/common/findnearmv.h',
+    'source/libvpx/vp8/common/g_common.h',
+    'source/libvpx/vp8/common/generic/systemdependent.c',
+    'source/libvpx/vp8/common/header.h',
+    'source/libvpx/vp8/common/idct.h',
+    'source/libvpx/vp8/common/idctllm.c',
+    'source/libvpx/vp8/common/invtrans.c',
+    'source/libvpx/vp8/common/invtrans.h',
+    'source/libvpx/vp8/common/loopfilter.c',
+    'source/libvpx/vp8/common/loopfilter_filters.c',
+    'source/libvpx/vp8/common/loopfilter.h',
+    'source/libvpx/vp8/common/mbpitch.c',
+    'source/libvpx/vp8/common/modecont.c',
+    'source/libvpx/vp8/common/modecontext.c',
+    'source/libvpx/vp8/common/modecont.h',
+    'source/libvpx/vp8/common/mv.h',
+    'source/libvpx/vp8/common/onyxc_int.h',
+    'source/libvpx/vp8/common/onyxd.h',
+    'source/libvpx/vp8/common/onyx.h',
+    'source/libvpx/vp8/common/postproc.c',
+    'source/libvpx/vp8/common/postproc.h',
+    'source/libvpx/vp8/common/ppflags.h',
+    'source/libvpx/vp8/common/pragmas.h',
+    'source/libvpx/vp8/common/quant_common.c',
+    'source/libvpx/vp8/common/quant_common.h',
+    'source/libvpx/vp8/common/recon.h',
+    'source/libvpx/vp8/common/reconinter.c',
+    'source/libvpx/vp8/common/reconinter.h',
+    'source/libvpx/vp8/common/reconintra4x4.c',
+    'source/libvpx/vp8/common/reconintra4x4.h',
+    'source/libvpx/vp8/common/reconintra.c',
+    'source/libvpx/vp8/common/reconintra.h',
+    'source/libvpx/vp8/common/setupintrarecon.c',
+    'source/libvpx/vp8/common/setupintrarecon.h',
+    'source/libvpx/vp8/common/subpixel.h',
+    'source/libvpx/vp8/common/swapyv12buffer.c',
+    'source/libvpx/vp8/common/swapyv12buffer.h',
+    'source/libvpx/vp8/common/systemdependent.h',
+    'source/libvpx/vp8/common/threading.h',
+    'source/libvpx/vp8/common/treecoder.c',
+    'source/libvpx/vp8/common/treecoder.h',
+    'source/libvpx/vp8/common/type_aliases.h',
+    'source/libvpx/vp8/decoder/arm/arm_dsystemdependent.c',
+    'source/libvpx/vp8/decoder/arm/armv6/dequant_dc_idct_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/dequant_idct_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/dequantize_v6.asm',
+    'source/libvpx/vp8/decoder/arm/armv6/idct_blk_v6.c',
+    'source/libvpx/vp8/decoder/arm/dequantize_arm.c',
+    'source/libvpx/vp8/decoder/arm/dequantize_arm.h',
+    'source/libvpx/vp8/decoder/arm/neon/dequant_idct_neon.asm',
+    'source/libvpx/vp8/decoder/arm/neon/dequantizeb_neon.asm',
+    'source/libvpx/vp8/decoder/arm/neon/idct_blk_neon.c',
+    'source/libvpx/vp8/decoder/arm/neon/idct_dequant_0_2x_neon.asm',
+    'source/libvpx/vp8/decoder/arm/neon/idct_dequant_dc_0_2x_neon.asm',
+    'source/libvpx/vp8/decoder/arm/neon/idct_dequant_dc_full_2x_neon.asm',
+    'source/libvpx/vp8/decoder/arm/neon/idct_dequant_full_2x_neon.asm',
+    'source/libvpx/vp8/decoder/dboolhuff.c',
+    'source/libvpx/vp8/decoder/dboolhuff.h',
+    'source/libvpx/vp8/decoder/decodemv.c',
+    'source/libvpx/vp8/decoder/decodemv.h',
+    'source/libvpx/vp8/decoder/decoderthreading.h',
+    'source/libvpx/vp8/decoder/decodframe.c',
+    'source/libvpx/vp8/decoder/dequantize.c',
+    'source/libvpx/vp8/decoder/dequantize.h',
+    'source/libvpx/vp8/decoder/detokenize.c',
+    'source/libvpx/vp8/decoder/detokenize.h',
+    'source/libvpx/vp8/decoder/ec_types.h',
+    'source/libvpx/vp8/decoder/error_concealment.c',
+    'source/libvpx/vp8/decoder/error_concealment.h',
+    'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
+    'source/libvpx/vp8/decoder/idct_blk.c',
+    'source/libvpx/vp8/decoder/onyxd_if.c',
+    'source/libvpx/vp8/decoder/onyxd_int.h',
+    'source/libvpx/vp8/decoder/reconintra_mt.c',
+    'source/libvpx/vp8/decoder/reconintra_mt.h',
+    'source/libvpx/vp8/decoder/threading.c',
+    'source/libvpx/vp8/decoder/treereader.h',
+    'source/libvpx/vp8/encoder/arm/arm_csystemdependent.c',
+    'source/libvpx/vp8/encoder/arm/armv5te/boolhuff_armv5te.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_mbrow_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv5te/vp8_packtokens_partitions_armv5.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_fast_quantize_b_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_mse16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_sad16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_short_fdct4x4_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_subtract_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance16x16_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance8x8_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_h_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_hv_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/vp8_variance_halfpixvar16x16_v_armv6.asm',
+    'source/libvpx/vp8/encoder/arm/armv6/walsh_v6.asm',
+    'source/libvpx/vp8/encoder/arm/boolhuff_arm.c',
+    'source/libvpx/vp8/encoder/arm/dct_arm.c',
+    'source/libvpx/vp8/encoder/arm/dct_arm.h',
+    'source/libvpx/vp8/encoder/arm/encodemb_arm.h',
+    'source/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/picklpf_arm.c',
+    'source/libvpx/vp8/encoder/arm/neon/sad16_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/sad8_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/shortfdct_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/subtract_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/variance_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_memcpy_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_mse16x16_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_subpixelvariance16x16_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_subpixelvariance16x16s_neon.asm',
+    'source/libvpx/vp8/encoder/arm/neon/vp8_subpixelvariance8x8_neon.asm',
+    'source/libvpx/vp8/encoder/arm/quantize_arm.c',
+    'source/libvpx/vp8/encoder/arm/quantize_arm.h',
+    'source/libvpx/vp8/encoder/arm/variance_arm.c',
+    'source/libvpx/vp8/encoder/arm/variance_arm.h',
+    'source/libvpx/vp8/encoder/bitstream.c',
+    'source/libvpx/vp8/encoder/bitstream.h',
+    'source/libvpx/vp8/encoder/block.h',
+    'source/libvpx/vp8/encoder/boolhuff.h',
+    'source/libvpx/vp8/encoder/dct.c',
+    'source/libvpx/vp8/encoder/dct.h',
+    'source/libvpx/vp8/encoder/defaultcoefcounts.h',
+    'source/libvpx/vp8/encoder/encodeframe.c',
+    'source/libvpx/vp8/encoder/encodeintra.c',
+    'source/libvpx/vp8/encoder/encodeintra.h',
+    'source/libvpx/vp8/encoder/encodemb.c',
+    'source/libvpx/vp8/encoder/encodemb.h',
+    'source/libvpx/vp8/encoder/encodemv.c',
+    'source/libvpx/vp8/encoder/encodemv.h',
+    'source/libvpx/vp8/encoder/ethreading.c',
+    'source/libvpx/vp8/encoder/firstpass.h',
+    'source/libvpx/vp8/encoder/generic/csystemdependent.c',
+    'source/libvpx/vp8/encoder/lookahead.c',
+    'source/libvpx/vp8/encoder/lookahead.h',
+    'source/libvpx/vp8/encoder/mcomp.c',
+    'source/libvpx/vp8/encoder/mcomp.h',
+    'source/libvpx/vp8/encoder/modecosts.c',
+    'source/libvpx/vp8/encoder/modecosts.h',
+    'source/libvpx/vp8/encoder/onyx_if.c',
+    'source/libvpx/vp8/encoder/onyx_int.h',
+    'source/libvpx/vp8/encoder/pickinter.c',
+    'source/libvpx/vp8/encoder/pickinter.h',
+    'source/libvpx/vp8/encoder/picklpf.c',
+    'source/libvpx/vp8/encoder/psnr.c',
+    'source/libvpx/vp8/encoder/psnr.h',
+    'source/libvpx/vp8/encoder/quantize.c',
+    'source/libvpx/vp8/encoder/quantize.h',
+    'source/libvpx/vp8/encoder/ratectrl.c',
+    'source/libvpx/vp8/encoder/ratectrl.h',
+    'source/libvpx/vp8/encoder/rdopt.c',
+    'source/libvpx/vp8/encoder/rdopt.h',
+    'source/libvpx/vp8/encoder/sad_c.c',
+    'source/libvpx/vp8/encoder/segmentation.c',
+    'source/libvpx/vp8/encoder/segmentation.h',
+    'source/libvpx/vp8/encoder/temporal_filter.h',
+    'source/libvpx/vp8/encoder/tokenize.c',
+    'source/libvpx/vp8/encoder/tokenize.h',
+    'source/libvpx/vp8/encoder/treewriter.c',
+    'source/libvpx/vp8/encoder/treewriter.h',
+    'source/libvpx/vp8/encoder/variance_c.c',
+    'source/libvpx/vp8/encoder/variance.h',
+    'source/libvpx/vp8/vp8_cx_iface.c',
+    'source/libvpx/vp8/vp8_dx_iface.c',
+    'source/libvpx/vpx/internal/vpx_codec_internal.h',
+    'source/libvpx/vpx_mem/include/vpx_mem_intrnl.h',
+    'source/libvpx/vpx_mem/vpx_mem.c',
+    'source/libvpx/vpx_mem/vpx_mem.h',
+    'source/libvpx/vpx_ports/arm_cpudetect.c',
+    'source/libvpx/vpx_ports/arm.h',
+    'source/libvpx/vpx_ports/asm_offsets.h',
+    'source/libvpx/vpx_ports/mem.h',
+    'source/libvpx/vpx_ports/vpx_timer.h',
+    'source/libvpx/vpx_scale/arm/neon/vp8_vpxyv12_copyframe_func_neon.asm',
+    'source/libvpx/vpx_scale/arm/neon/vp8_vpxyv12_copysrcframe_func_neon.asm',
+    'source/libvpx/vpx_scale/arm/neon/vp8_vpxyv12_copy_y_neon.asm',
+    'source/libvpx/vpx_scale/arm/neon/vp8_vpxyv12_extendframeborders_neon.asm',
+    'source/libvpx/vpx_scale/arm/neon/yv12extend_arm.c',
+    'source/libvpx/vpx_scale/arm/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/arm/yv12extend_arm.h',
+    'source/libvpx/vpx_scale/generic/gen_scalers.c',
+    'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/generic/vpxscale.c',
+    'source/libvpx/vpx_scale/generic/yv12config.c',
+    'source/libvpx/vpx_scale/generic/yv12extend.c',
+    'source/libvpx/vpx_scale/generic/yv12extend_generic.h',
+    'source/libvpx/vpx_scale/scale_mode.h',
+    'source/libvpx/vpx_scale/vpxscale.h',
+    'source/libvpx/vpx_scale/yv12config.h',
+    'source/libvpx/vpx_scale/yv12extend.h',
+    'source/libvpx/vpx/src/vpx_codec.c',
+    'source/libvpx/vpx/src/vpx_decoder.c',
+    'source/libvpx/vpx/src/vpx_decoder_compat.c',
+    'source/libvpx/vpx/src/vpx_encoder.c',
+    'source/libvpx/vpx/src/vpx_image.c',
+    'source/libvpx/vpx/vp8cx.h',
+    'source/libvpx/vpx/vp8dx.h',
+    'source/libvpx/vpx/vp8e.h',
+    'source/libvpx/vpx/vp8.h',
+    'source/libvpx/vpx/vpx_codec.h',
+    'source/libvpx/vpx/vpx_codec_impl_bottom.h',
+    'source/libvpx/vpx/vpx_codec_impl_top.h',
+    'source/libvpx/vpx/vpx_decoder_compat.h',
+    'source/libvpx/vpx/vpx_decoder.h',
+    'source/libvpx/vpx/vpx_encoder.h',
+    'source/libvpx/vpx/vpx_image.h',
+    'source/libvpx/vpx/vpx_integer.h',
+  ],
+}
diff --git a/third_party/libvpx/libvpx_srcs_x86.gypi b/third_party/libvpx/libvpx_srcs_x86.gypi
new file mode 100644
index 0000000..e5e401f
--- /dev/null
+++ b/third_party/libvpx/libvpx_srcs_x86.gypi
@@ -0,0 +1,234 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2011 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.
+
+{
+  'sources': [
+    'source/libvpx/vp8/common/alloccommon.c',
+    'source/libvpx/vp8/common/alloccommon.h',
+    'source/libvpx/vp8/common/blockd.c',
+    'source/libvpx/vp8/common/blockd.h',
+    'source/libvpx/vp8/common/coefupdateprobs.h',
+    'source/libvpx/vp8/common/common.h',
+    'source/libvpx/vp8/common/common_types.h',
+    'source/libvpx/vp8/common/debugmodes.c',
+    'source/libvpx/vp8/common/default_coef_probs.h',
+    'source/libvpx/vp8/common/entropy.c',
+    'source/libvpx/vp8/common/entropy.h',
+    'source/libvpx/vp8/common/entropymode.c',
+    'source/libvpx/vp8/common/entropymode.h',
+    'source/libvpx/vp8/common/entropymv.c',
+    'source/libvpx/vp8/common/entropymv.h',
+    'source/libvpx/vp8/common/extend.c',
+    'source/libvpx/vp8/common/extend.h',
+    'source/libvpx/vp8/common/filter.c',
+    'source/libvpx/vp8/common/filter.h',
+    'source/libvpx/vp8/common/findnearmv.c',
+    'source/libvpx/vp8/common/findnearmv.h',
+    'source/libvpx/vp8/common/g_common.h',
+    'source/libvpx/vp8/common/generic/systemdependent.c',
+    'source/libvpx/vp8/common/header.h',
+    'source/libvpx/vp8/common/idct.h',
+    'source/libvpx/vp8/common/idctllm.c',
+    'source/libvpx/vp8/common/invtrans.c',
+    'source/libvpx/vp8/common/invtrans.h',
+    'source/libvpx/vp8/common/loopfilter.c',
+    'source/libvpx/vp8/common/loopfilter_filters.c',
+    'source/libvpx/vp8/common/loopfilter.h',
+    'source/libvpx/vp8/common/mbpitch.c',
+    'source/libvpx/vp8/common/modecont.c',
+    'source/libvpx/vp8/common/modecontext.c',
+    'source/libvpx/vp8/common/modecont.h',
+    'source/libvpx/vp8/common/mv.h',
+    'source/libvpx/vp8/common/onyxc_int.h',
+    'source/libvpx/vp8/common/onyxd.h',
+    'source/libvpx/vp8/common/onyx.h',
+    'source/libvpx/vp8/common/postproc.c',
+    'source/libvpx/vp8/common/postproc.h',
+    'source/libvpx/vp8/common/ppflags.h',
+    'source/libvpx/vp8/common/pragmas.h',
+    'source/libvpx/vp8/common/quant_common.c',
+    'source/libvpx/vp8/common/quant_common.h',
+    'source/libvpx/vp8/common/recon.h',
+    'source/libvpx/vp8/common/reconinter.c',
+    'source/libvpx/vp8/common/reconinter.h',
+    'source/libvpx/vp8/common/reconintra4x4.c',
+    'source/libvpx/vp8/common/reconintra4x4.h',
+    'source/libvpx/vp8/common/reconintra.c',
+    'source/libvpx/vp8/common/reconintra.h',
+    'source/libvpx/vp8/common/setupintrarecon.c',
+    'source/libvpx/vp8/common/setupintrarecon.h',
+    'source/libvpx/vp8/common/subpixel.h',
+    'source/libvpx/vp8/common/swapyv12buffer.c',
+    'source/libvpx/vp8/common/swapyv12buffer.h',
+    'source/libvpx/vp8/common/systemdependent.h',
+    'source/libvpx/vp8/common/threading.h',
+    'source/libvpx/vp8/common/treecoder.c',
+    'source/libvpx/vp8/common/treecoder.h',
+    'source/libvpx/vp8/common/type_aliases.h',
+    'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
+    'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
+    'source/libvpx/vp8/common/x86/idct_x86.h',
+    'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
+    'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_x86.c',
+    'source/libvpx/vp8/common/x86/loopfilter_x86.h',
+    'source/libvpx/vp8/common/x86/postproc_mmx.asm',
+    'source/libvpx/vp8/common/x86/postproc_sse2.asm',
+    'source/libvpx/vp8/common/x86/postproc_x86.h',
+    'source/libvpx/vp8/common/x86/recon_mmx.asm',
+    'source/libvpx/vp8/common/x86/recon_sse2.asm',
+    'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
+    'source/libvpx/vp8/common/x86/recon_x86.h',
+    'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
+    'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
+    'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
+    'source/libvpx/vp8/common/x86/subpixel_x86.h',
+    'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
+    'source/libvpx/vp8/common/x86/x86_systemdependent.c',
+    'source/libvpx/vp8/decoder/dboolhuff.c',
+    'source/libvpx/vp8/decoder/dboolhuff.h',
+    'source/libvpx/vp8/decoder/decodemv.c',
+    'source/libvpx/vp8/decoder/decodemv.h',
+    'source/libvpx/vp8/decoder/decoderthreading.h',
+    'source/libvpx/vp8/decoder/decodframe.c',
+    'source/libvpx/vp8/decoder/dequantize.c',
+    'source/libvpx/vp8/decoder/dequantize.h',
+    'source/libvpx/vp8/decoder/detokenize.c',
+    'source/libvpx/vp8/decoder/detokenize.h',
+    'source/libvpx/vp8/decoder/ec_types.h',
+    'source/libvpx/vp8/decoder/error_concealment.c',
+    'source/libvpx/vp8/decoder/error_concealment.h',
+    'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
+    'source/libvpx/vp8/decoder/idct_blk.c',
+    'source/libvpx/vp8/decoder/onyxd_if.c',
+    'source/libvpx/vp8/decoder/onyxd_int.h',
+    'source/libvpx/vp8/decoder/reconintra_mt.c',
+    'source/libvpx/vp8/decoder/reconintra_mt.h',
+    'source/libvpx/vp8/decoder/threading.c',
+    'source/libvpx/vp8/decoder/treereader.h',
+    'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
+    'source/libvpx/vp8/decoder/x86/dequantize_x86.h',
+    'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
+    'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
+    'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
+    'source/libvpx/vp8/encoder/bitstream.c',
+    'source/libvpx/vp8/encoder/bitstream.h',
+    'source/libvpx/vp8/encoder/block.h',
+    'source/libvpx/vp8/encoder/boolhuff.c',
+    'source/libvpx/vp8/encoder/boolhuff.h',
+    'source/libvpx/vp8/encoder/dct.c',
+    'source/libvpx/vp8/encoder/dct.h',
+    'source/libvpx/vp8/encoder/defaultcoefcounts.h',
+    'source/libvpx/vp8/encoder/encodeframe.c',
+    'source/libvpx/vp8/encoder/encodeintra.c',
+    'source/libvpx/vp8/encoder/encodeintra.h',
+    'source/libvpx/vp8/encoder/encodemb.c',
+    'source/libvpx/vp8/encoder/encodemb.h',
+    'source/libvpx/vp8/encoder/encodemv.c',
+    'source/libvpx/vp8/encoder/encodemv.h',
+    'source/libvpx/vp8/encoder/ethreading.c',
+    'source/libvpx/vp8/encoder/firstpass.h',
+    'source/libvpx/vp8/encoder/generic/csystemdependent.c',
+    'source/libvpx/vp8/encoder/lookahead.c',
+    'source/libvpx/vp8/encoder/lookahead.h',
+    'source/libvpx/vp8/encoder/mcomp.c',
+    'source/libvpx/vp8/encoder/mcomp.h',
+    'source/libvpx/vp8/encoder/modecosts.c',
+    'source/libvpx/vp8/encoder/modecosts.h',
+    'source/libvpx/vp8/encoder/onyx_if.c',
+    'source/libvpx/vp8/encoder/onyx_int.h',
+    'source/libvpx/vp8/encoder/pickinter.c',
+    'source/libvpx/vp8/encoder/pickinter.h',
+    'source/libvpx/vp8/encoder/picklpf.c',
+    'source/libvpx/vp8/encoder/psnr.c',
+    'source/libvpx/vp8/encoder/psnr.h',
+    'source/libvpx/vp8/encoder/quantize.c',
+    'source/libvpx/vp8/encoder/quantize.h',
+    'source/libvpx/vp8/encoder/ratectrl.c',
+    'source/libvpx/vp8/encoder/ratectrl.h',
+    'source/libvpx/vp8/encoder/rdopt.c',
+    'source/libvpx/vp8/encoder/rdopt.h',
+    'source/libvpx/vp8/encoder/sad_c.c',
+    'source/libvpx/vp8/encoder/segmentation.c',
+    'source/libvpx/vp8/encoder/segmentation.h',
+    'source/libvpx/vp8/encoder/temporal_filter.h',
+    'source/libvpx/vp8/encoder/tokenize.c',
+    'source/libvpx/vp8/encoder/tokenize.h',
+    'source/libvpx/vp8/encoder/treewriter.c',
+    'source/libvpx/vp8/encoder/treewriter.h',
+    'source/libvpx/vp8/encoder/variance_c.c',
+    'source/libvpx/vp8/encoder/variance.h',
+    'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/dct_x86.h',
+    'source/libvpx/vp8/encoder/x86/encodemb_x86.h',
+    'source/libvpx/vp8/encoder/x86/encodeopt.asm',
+    'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/mcomp_x86.h',
+    'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_x86.h',
+    'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
+    'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/temporal_filter_x86.h',
+    'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/variance_mmx.c',
+    'source/libvpx/vp8/encoder/x86/variance_sse2.c',
+    'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
+    'source/libvpx/vp8/encoder/x86/variance_x86.h',
+    'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
+    'source/libvpx/vp8/vp8_cx_iface.c',
+    'source/libvpx/vp8/vp8_dx_iface.c',
+    'source/libvpx/vpx/internal/vpx_codec_internal.h',
+    'source/libvpx/vpx_mem/include/vpx_mem_intrnl.h',
+    'source/libvpx/vpx_mem/vpx_mem.c',
+    'source/libvpx/vpx_mem/vpx_mem.h',
+    'source/libvpx/vpx_ports/asm_offsets.h',
+    'source/libvpx/vpx_ports/emms.asm',
+    'source/libvpx/vpx_ports/mem.h',
+    'source/libvpx/vpx_ports/vpx_timer.h',
+    'source/libvpx/vpx_ports/x86_abi_support.asm',
+    'source/libvpx/vpx_ports/x86_cpuid.c',
+    'source/libvpx/vpx_ports/x86.h',
+    'source/libvpx/vpx_scale/generic/gen_scalers.c',
+    'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/generic/vpxscale.c',
+    'source/libvpx/vpx_scale/generic/yv12config.c',
+    'source/libvpx/vpx_scale/generic/yv12extend.c',
+    'source/libvpx/vpx_scale/generic/yv12extend_generic.h',
+    'source/libvpx/vpx_scale/scale_mode.h',
+    'source/libvpx/vpx_scale/vpxscale.h',
+    'source/libvpx/vpx_scale/yv12config.h',
+    'source/libvpx/vpx_scale/yv12extend.h',
+    'source/libvpx/vpx/src/vpx_codec.c',
+    'source/libvpx/vpx/src/vpx_decoder.c',
+    'source/libvpx/vpx/src/vpx_decoder_compat.c',
+    'source/libvpx/vpx/src/vpx_encoder.c',
+    'source/libvpx/vpx/src/vpx_image.c',
+    'source/libvpx/vpx/vp8cx.h',
+    'source/libvpx/vpx/vp8dx.h',
+    'source/libvpx/vpx/vp8e.h',
+    'source/libvpx/vpx/vp8.h',
+    'source/libvpx/vpx/vpx_codec.h',
+    'source/libvpx/vpx/vpx_codec_impl_bottom.h',
+    'source/libvpx/vpx/vpx_codec_impl_top.h',
+    'source/libvpx/vpx/vpx_decoder_compat.h',
+    'source/libvpx/vpx/vpx_decoder.h',
+    'source/libvpx/vpx/vpx_encoder.h',
+    'source/libvpx/vpx/vpx_image.h',
+    'source/libvpx/vpx/vpx_integer.h',
+  ],
+}
diff --git a/third_party/libvpx/libvpx_srcs_x86_64.gypi b/third_party/libvpx/libvpx_srcs_x86_64.gypi
new file mode 100644
index 0000000..4b24592
--- /dev/null
+++ b/third_party/libvpx/libvpx_srcs_x86_64.gypi
@@ -0,0 +1,236 @@
+# This file is generated. Do not edit.
+# Copyright (c) 2011 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.
+
+{
+  'sources': [
+    'source/libvpx/vp8/common/alloccommon.c',
+    'source/libvpx/vp8/common/alloccommon.h',
+    'source/libvpx/vp8/common/blockd.c',
+    'source/libvpx/vp8/common/blockd.h',
+    'source/libvpx/vp8/common/coefupdateprobs.h',
+    'source/libvpx/vp8/common/common.h',
+    'source/libvpx/vp8/common/common_types.h',
+    'source/libvpx/vp8/common/debugmodes.c',
+    'source/libvpx/vp8/common/default_coef_probs.h',
+    'source/libvpx/vp8/common/entropy.c',
+    'source/libvpx/vp8/common/entropy.h',
+    'source/libvpx/vp8/common/entropymode.c',
+    'source/libvpx/vp8/common/entropymode.h',
+    'source/libvpx/vp8/common/entropymv.c',
+    'source/libvpx/vp8/common/entropymv.h',
+    'source/libvpx/vp8/common/extend.c',
+    'source/libvpx/vp8/common/extend.h',
+    'source/libvpx/vp8/common/filter.c',
+    'source/libvpx/vp8/common/filter.h',
+    'source/libvpx/vp8/common/findnearmv.c',
+    'source/libvpx/vp8/common/findnearmv.h',
+    'source/libvpx/vp8/common/g_common.h',
+    'source/libvpx/vp8/common/generic/systemdependent.c',
+    'source/libvpx/vp8/common/header.h',
+    'source/libvpx/vp8/common/idct.h',
+    'source/libvpx/vp8/common/idctllm.c',
+    'source/libvpx/vp8/common/invtrans.c',
+    'source/libvpx/vp8/common/invtrans.h',
+    'source/libvpx/vp8/common/loopfilter.c',
+    'source/libvpx/vp8/common/loopfilter_filters.c',
+    'source/libvpx/vp8/common/loopfilter.h',
+    'source/libvpx/vp8/common/mbpitch.c',
+    'source/libvpx/vp8/common/modecont.c',
+    'source/libvpx/vp8/common/modecontext.c',
+    'source/libvpx/vp8/common/modecont.h',
+    'source/libvpx/vp8/common/mv.h',
+    'source/libvpx/vp8/common/onyxc_int.h',
+    'source/libvpx/vp8/common/onyxd.h',
+    'source/libvpx/vp8/common/onyx.h',
+    'source/libvpx/vp8/common/postproc.c',
+    'source/libvpx/vp8/common/postproc.h',
+    'source/libvpx/vp8/common/ppflags.h',
+    'source/libvpx/vp8/common/pragmas.h',
+    'source/libvpx/vp8/common/quant_common.c',
+    'source/libvpx/vp8/common/quant_common.h',
+    'source/libvpx/vp8/common/recon.h',
+    'source/libvpx/vp8/common/reconinter.c',
+    'source/libvpx/vp8/common/reconinter.h',
+    'source/libvpx/vp8/common/reconintra4x4.c',
+    'source/libvpx/vp8/common/reconintra4x4.h',
+    'source/libvpx/vp8/common/reconintra.c',
+    'source/libvpx/vp8/common/reconintra.h',
+    'source/libvpx/vp8/common/setupintrarecon.c',
+    'source/libvpx/vp8/common/setupintrarecon.h',
+    'source/libvpx/vp8/common/subpixel.h',
+    'source/libvpx/vp8/common/swapyv12buffer.c',
+    'source/libvpx/vp8/common/swapyv12buffer.h',
+    'source/libvpx/vp8/common/systemdependent.h',
+    'source/libvpx/vp8/common/threading.h',
+    'source/libvpx/vp8/common/treecoder.c',
+    'source/libvpx/vp8/common/treecoder.h',
+    'source/libvpx/vp8/common/type_aliases.h',
+    'source/libvpx/vp8/common/x86/idctllm_mmx.asm',
+    'source/libvpx/vp8/common/x86/idctllm_sse2.asm',
+    'source/libvpx/vp8/common/x86/idct_x86.h',
+    'source/libvpx/vp8/common/x86/iwalsh_mmx.asm',
+    'source/libvpx/vp8/common/x86/iwalsh_sse2.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_block_sse2.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_mmx.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_sse2.asm',
+    'source/libvpx/vp8/common/x86/loopfilter_x86.c',
+    'source/libvpx/vp8/common/x86/loopfilter_x86.h',
+    'source/libvpx/vp8/common/x86/postproc_mmx.asm',
+    'source/libvpx/vp8/common/x86/postproc_sse2.asm',
+    'source/libvpx/vp8/common/x86/postproc_x86.h',
+    'source/libvpx/vp8/common/x86/recon_mmx.asm',
+    'source/libvpx/vp8/common/x86/recon_sse2.asm',
+    'source/libvpx/vp8/common/x86/recon_wrapper_sse2.c',
+    'source/libvpx/vp8/common/x86/recon_x86.h',
+    'source/libvpx/vp8/common/x86/subpixel_mmx.asm',
+    'source/libvpx/vp8/common/x86/subpixel_sse2.asm',
+    'source/libvpx/vp8/common/x86/subpixel_ssse3.asm',
+    'source/libvpx/vp8/common/x86/subpixel_x86.h',
+    'source/libvpx/vp8/common/x86/vp8_asm_stubs.c',
+    'source/libvpx/vp8/common/x86/x86_systemdependent.c',
+    'source/libvpx/vp8/decoder/dboolhuff.c',
+    'source/libvpx/vp8/decoder/dboolhuff.h',
+    'source/libvpx/vp8/decoder/decodemv.c',
+    'source/libvpx/vp8/decoder/decodemv.h',
+    'source/libvpx/vp8/decoder/decoderthreading.h',
+    'source/libvpx/vp8/decoder/decodframe.c',
+    'source/libvpx/vp8/decoder/dequantize.c',
+    'source/libvpx/vp8/decoder/dequantize.h',
+    'source/libvpx/vp8/decoder/detokenize.c',
+    'source/libvpx/vp8/decoder/detokenize.h',
+    'source/libvpx/vp8/decoder/ec_types.h',
+    'source/libvpx/vp8/decoder/error_concealment.c',
+    'source/libvpx/vp8/decoder/error_concealment.h',
+    'source/libvpx/vp8/decoder/generic/dsystemdependent.c',
+    'source/libvpx/vp8/decoder/idct_blk.c',
+    'source/libvpx/vp8/decoder/onyxd_if.c',
+    'source/libvpx/vp8/decoder/onyxd_int.h',
+    'source/libvpx/vp8/decoder/reconintra_mt.c',
+    'source/libvpx/vp8/decoder/reconintra_mt.h',
+    'source/libvpx/vp8/decoder/threading.c',
+    'source/libvpx/vp8/decoder/treereader.h',
+    'source/libvpx/vp8/decoder/x86/dequantize_mmx.asm',
+    'source/libvpx/vp8/decoder/x86/dequantize_x86.h',
+    'source/libvpx/vp8/decoder/x86/idct_blk_mmx.c',
+    'source/libvpx/vp8/decoder/x86/idct_blk_sse2.c',
+    'source/libvpx/vp8/decoder/x86/x86_dsystemdependent.c',
+    'source/libvpx/vp8/encoder/bitstream.c',
+    'source/libvpx/vp8/encoder/bitstream.h',
+    'source/libvpx/vp8/encoder/block.h',
+    'source/libvpx/vp8/encoder/boolhuff.c',
+    'source/libvpx/vp8/encoder/boolhuff.h',
+    'source/libvpx/vp8/encoder/dct.c',
+    'source/libvpx/vp8/encoder/dct.h',
+    'source/libvpx/vp8/encoder/defaultcoefcounts.h',
+    'source/libvpx/vp8/encoder/encodeframe.c',
+    'source/libvpx/vp8/encoder/encodeintra.c',
+    'source/libvpx/vp8/encoder/encodeintra.h',
+    'source/libvpx/vp8/encoder/encodemb.c',
+    'source/libvpx/vp8/encoder/encodemb.h',
+    'source/libvpx/vp8/encoder/encodemv.c',
+    'source/libvpx/vp8/encoder/encodemv.h',
+    'source/libvpx/vp8/encoder/ethreading.c',
+    'source/libvpx/vp8/encoder/firstpass.h',
+    'source/libvpx/vp8/encoder/generic/csystemdependent.c',
+    'source/libvpx/vp8/encoder/lookahead.c',
+    'source/libvpx/vp8/encoder/lookahead.h',
+    'source/libvpx/vp8/encoder/mcomp.c',
+    'source/libvpx/vp8/encoder/mcomp.h',
+    'source/libvpx/vp8/encoder/modecosts.c',
+    'source/libvpx/vp8/encoder/modecosts.h',
+    'source/libvpx/vp8/encoder/onyx_if.c',
+    'source/libvpx/vp8/encoder/onyx_int.h',
+    'source/libvpx/vp8/encoder/pickinter.c',
+    'source/libvpx/vp8/encoder/pickinter.h',
+    'source/libvpx/vp8/encoder/picklpf.c',
+    'source/libvpx/vp8/encoder/psnr.c',
+    'source/libvpx/vp8/encoder/psnr.h',
+    'source/libvpx/vp8/encoder/quantize.c',
+    'source/libvpx/vp8/encoder/quantize.h',
+    'source/libvpx/vp8/encoder/ratectrl.c',
+    'source/libvpx/vp8/encoder/ratectrl.h',
+    'source/libvpx/vp8/encoder/rdopt.c',
+    'source/libvpx/vp8/encoder/rdopt.h',
+    'source/libvpx/vp8/encoder/sad_c.c',
+    'source/libvpx/vp8/encoder/segmentation.c',
+    'source/libvpx/vp8/encoder/segmentation.h',
+    'source/libvpx/vp8/encoder/temporal_filter.h',
+    'source/libvpx/vp8/encoder/tokenize.c',
+    'source/libvpx/vp8/encoder/tokenize.h',
+    'source/libvpx/vp8/encoder/treewriter.c',
+    'source/libvpx/vp8/encoder/treewriter.h',
+    'source/libvpx/vp8/encoder/variance_c.c',
+    'source/libvpx/vp8/encoder/variance.h',
+    'source/libvpx/vp8/encoder/x86/dct_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/dct_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/dct_x86.h',
+    'source/libvpx/vp8/encoder/x86/encodemb_x86.h',
+    'source/libvpx/vp8/encoder/x86/encodeopt.asm',
+    'source/libvpx/vp8/encoder/x86/fwalsh_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/mcomp_x86.h',
+    'source/libvpx/vp8/encoder/x86/quantize_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_sse4.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/quantize_x86.h',
+    'source/libvpx/vp8/encoder/x86/sad_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse3.asm',
+    'source/libvpx/vp8/encoder/x86/sad_sse4.asm',
+    'source/libvpx/vp8/encoder/x86/sad_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/ssim_opt.asm',
+    'source/libvpx/vp8/encoder/x86/subtract_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/subtract_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/temporal_filter_x86.h',
+    'source/libvpx/vp8/encoder/x86/variance_impl_mmx.asm',
+    'source/libvpx/vp8/encoder/x86/variance_impl_sse2.asm',
+    'source/libvpx/vp8/encoder/x86/variance_impl_ssse3.asm',
+    'source/libvpx/vp8/encoder/x86/variance_mmx.c',
+    'source/libvpx/vp8/encoder/x86/variance_sse2.c',
+    'source/libvpx/vp8/encoder/x86/variance_ssse3.c',
+    'source/libvpx/vp8/encoder/x86/variance_x86.h',
+    'source/libvpx/vp8/encoder/x86/x86_csystemdependent.c',
+    'source/libvpx/vp8/vp8_cx_iface.c',
+    'source/libvpx/vp8/vp8_dx_iface.c',
+    'source/libvpx/vpx/internal/vpx_codec_internal.h',
+    'source/libvpx/vpx_mem/include/vpx_mem_intrnl.h',
+    'source/libvpx/vpx_mem/vpx_mem.c',
+    'source/libvpx/vpx_mem/vpx_mem.h',
+    'source/libvpx/vpx_ports/asm_offsets.h',
+    'source/libvpx/vpx_ports/emms.asm',
+    'source/libvpx/vpx_ports/mem.h',
+    'source/libvpx/vpx_ports/vpx_timer.h',
+    'source/libvpx/vpx_ports/x86_abi_support.asm',
+    'source/libvpx/vpx_ports/x86_cpuid.c',
+    'source/libvpx/vpx_ports/x86.h',
+    'source/libvpx/vpx_scale/generic/gen_scalers.c',
+    'source/libvpx/vpx_scale/generic/scalesystemdependent.c',
+    'source/libvpx/vpx_scale/generic/vpxscale.c',
+    'source/libvpx/vpx_scale/generic/yv12config.c',
+    'source/libvpx/vpx_scale/generic/yv12extend.c',
+    'source/libvpx/vpx_scale/generic/yv12extend_generic.h',
+    'source/libvpx/vpx_scale/scale_mode.h',
+    'source/libvpx/vpx_scale/vpxscale.h',
+    'source/libvpx/vpx_scale/yv12config.h',
+    'source/libvpx/vpx_scale/yv12extend.h',
+    'source/libvpx/vpx/src/vpx_codec.c',
+    'source/libvpx/vpx/src/vpx_decoder.c',
+    'source/libvpx/vpx/src/vpx_decoder_compat.c',
+    'source/libvpx/vpx/src/vpx_encoder.c',
+    'source/libvpx/vpx/src/vpx_image.c',
+    'source/libvpx/vpx/vp8cx.h',
+    'source/libvpx/vpx/vp8dx.h',
+    'source/libvpx/vpx/vp8e.h',
+    'source/libvpx/vpx/vp8.h',
+    'source/libvpx/vpx/vpx_codec.h',
+    'source/libvpx/vpx/vpx_codec_impl_bottom.h',
+    'source/libvpx/vpx/vpx_codec_impl_top.h',
+    'source/libvpx/vpx/vpx_decoder_compat.h',
+    'source/libvpx/vpx/vpx_decoder.h',
+    'source/libvpx/vpx/vpx_encoder.h',
+    'source/libvpx/vpx/vpx_image.h',
+    'source/libvpx/vpx/vpx_integer.h',
+  ],
+}
diff --git a/third_party/libvpx/source/config/linux/arm-neon/asm_com_offsets.asm b/third_party/libvpx/source/config/linux/arm-neon/asm_com_offsets.asm
new file mode 100644
index 0000000..4a292fa
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/asm_com_offsets.asm
@@ -0,0 +1,15 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ yv12_buffer_config_y_width ,  0
+.equ yv12_buffer_config_y_height ,  4
+.equ yv12_buffer_config_y_stride ,  8
+.equ yv12_buffer_config_uv_width ,  12
+.equ yv12_buffer_config_uv_height ,  16
+.equ yv12_buffer_config_uv_stride ,  20
+.equ yv12_buffer_config_y_buffer ,  24
+.equ yv12_buffer_config_u_buffer ,  28
+.equ yv12_buffer_config_v_buffer ,  32
+.equ yv12_buffer_config_border ,  40
+.equ VP8BORDERINPIXELS_VAL ,  32
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm-neon/asm_dec_offsets.asm b/third_party/libvpx/source/config/linux/arm-neon/asm_dec_offsets.asm
new file mode 100644
index 0000000..feaab20
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/asm_dec_offsets.asm
@@ -0,0 +1,20 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ detok_scan ,  0
+.equ detok_ptr_block2leftabove ,  4
+.equ detok_coef_tree_ptr ,  8
+.equ detok_norm_ptr ,  12
+.equ detok_ptr_coef_bands_x ,  16
+.equ detok_A ,  20
+.equ detok_L ,  24
+.equ detok_qcoeff_start_ptr ,  28
+.equ detok_current_bc ,  32
+.equ detok_coef_probs ,  36
+.equ detok_eob ,  52
+.equ bool_decoder_user_buffer_end ,  0
+.equ bool_decoder_user_buffer ,  4
+.equ bool_decoder_value ,  8
+.equ bool_decoder_count ,  12
+.equ bool_decoder_range ,  16
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm-neon/asm_enc_offsets.asm b/third_party/libvpx/source/config/linux/arm-neon/asm_enc_offsets.asm
new file mode 100644
index 0000000..4e9726e
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/asm_enc_offsets.asm
@@ -0,0 +1,46 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ vp8_block_coeff ,  4
+.equ vp8_block_zbin ,  20
+.equ vp8_block_round ,  28
+.equ vp8_block_quant ,  8
+.equ vp8_block_quant_fast ,  12
+.equ vp8_block_zbin_extra ,  32
+.equ vp8_block_zrun_zbin_boost ,  24
+.equ vp8_block_quant_shift ,  16
+.equ vp8_blockd_qcoeff ,  0
+.equ vp8_blockd_dequant ,  16
+.equ vp8_blockd_dqcoeff ,  4
+.equ vp8_blockd_eob ,  44
+.equ vp8_block_base_src ,  36
+.equ vp8_block_src ,  40
+.equ vp8_block_src_diff ,  0
+.equ vp8_block_src_stride ,  44
+.equ vp8_blockd_predictor ,  8
+.equ vp8_writer_lowvalue ,  0
+.equ vp8_writer_range ,  4
+.equ vp8_writer_value ,  8
+.equ vp8_writer_count ,  12
+.equ vp8_writer_pos ,  16
+.equ vp8_writer_buffer ,  20
+.equ tokenextra_token ,  6
+.equ tokenextra_extra ,  4
+.equ tokenextra_context_tree ,  0
+.equ tokenextra_skip_eob_node ,  7
+.equ TOKENEXTRA_SZ ,  8
+.equ vp8_extra_bit_struct_sz ,  16
+.equ vp8_token_value ,  0
+.equ vp8_token_len ,  4
+.equ vp8_extra_bit_struct_tree ,  0
+.equ vp8_extra_bit_struct_prob ,  4
+.equ vp8_extra_bit_struct_len ,  8
+.equ vp8_extra_bit_struct_base_val ,  12
+.equ vp8_comp_tplist ,  174400
+.equ vp8_comp_common ,  104640
+.equ vp8_comp_bc2 ,  121568
+.equ tokenlist_start ,  0
+.equ tokenlist_stop ,  4
+.equ TOKENLIST_SZ ,  8
+.equ vp8_common_mb_rows ,  13080
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm
new file mode 100644
index 0000000..77cbcd9
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm
@@ -0,0 +1,73 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ ARCH_ARM ,  1
+.equ ARCH_MIPS ,  0
+.equ ARCH_X86 ,  0
+.equ ARCH_X86_64 ,  0
+.equ ARCH_PPC32 ,  0
+.equ ARCH_PPC64 ,  0
+.equ HAVE_ARMV5TE ,  1
+.equ HAVE_ARMV6 ,  1
+.equ HAVE_ARMV7 ,  1
+.equ HAVE_IWMMXT ,  0
+.equ HAVE_IWMMXT2 ,  0
+.equ HAVE_MIPS32 ,  0
+.equ HAVE_MMX ,  0
+.equ HAVE_SSE ,  0
+.equ HAVE_SSE2 ,  0
+.equ HAVE_SSE3 ,  0
+.equ HAVE_SSSE3 ,  0
+.equ HAVE_SSE4_1 ,  0
+.equ HAVE_ALTIVEC ,  0
+.equ HAVE_VPX_PORTS ,  1
+.equ HAVE_STDINT_H ,  1
+.equ HAVE_ALT_TREE_LAYOUT ,  0
+.equ HAVE_PTHREAD_H ,  1
+.equ HAVE_SYS_MMAN_H ,  1
+.equ HAVE_UNISTD_H ,  0
+.equ CONFIG_EXTERNAL_BUILD ,  0
+.equ CONFIG_INSTALL_DOCS ,  0
+.equ CONFIG_INSTALL_BINS ,  0
+.equ CONFIG_INSTALL_LIBS ,  0
+.equ CONFIG_INSTALL_SRCS ,  0
+.equ CONFIG_DEBUG ,  0
+.equ CONFIG_GPROF ,  0
+.equ CONFIG_GCOV ,  0
+.equ CONFIG_RVCT ,  0
+.equ CONFIG_GCC ,  1
+.equ CONFIG_MSVS ,  0
+.equ CONFIG_PIC ,  0
+.equ CONFIG_BIG_ENDIAN ,  0
+.equ CONFIG_CODEC_SRCS ,  0
+.equ CONFIG_DEBUG_LIBS ,  0
+.equ CONFIG_FAST_UN.balignED ,  1
+.equ CONFIG_MEM_MANAGER ,  0
+.equ CONFIG_MEM_TRACKER ,  0
+.equ CONFIG_MEM_CHECKS ,  0
+.equ CONFIG_MD5 ,  1
+.equ CONFIG_DEQUANT_TOKENS ,  0
+.equ CONFIG_DC_RECON ,  0
+.equ CONFIG_RUNTIME_CPU_DETECT ,  0
+.equ CONFIG_POSTPROC ,  1
+.equ CONFIG_MULTITHREAD ,  1
+.equ CONFIG_INTERNAL_STATS ,  0
+.equ CONFIG_VP8_ENCODER ,  1
+.equ CONFIG_VP8_DECODER ,  1
+.equ CONFIG_VP8 ,  1
+.equ CONFIG_ENCODERS ,  1
+.equ CONFIG_DECODERS ,  1
+.equ CONFIG_STATIC_MSVCRT ,  0
+.equ CONFIG_SPATIAL_RESAMPLING ,  1
+.equ CONFIG_REALTIME_ONLY ,  1
+.equ CONFIG_ERROR_CONCEALMENT ,  1
+.equ CONFIG_SHARED ,  0
+.equ CONFIG_STATIC ,  1
+.equ CONFIG_SMALL ,  0
+.equ CONFIG_POSTPROC_VISUALIZER ,  0
+.equ CONFIG_OS_SUPPORT ,  1
+	.section	.note.GNU-stack,"",%progbits
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm-neon/vpx_config.c b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.c
new file mode 100644
index 0000000..4b7091c
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.c
@@ -0,0 +1,2 @@
+static const char* const cfg = "--target=armv7-linux-gcc --enable-pic --enable-error-concealment --disable-postproc --disable-install-docs --disable-install-srcs";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h
new file mode 100644
index 0000000..380f7b0
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h
@@ -0,0 +1,68 @@
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT    
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define ARCH_PPC32 0
+#define ARCH_PPC64 0
+#define HAVE_ARMV5TE 1
+#define HAVE_ARMV6 1
+#define HAVE_ARMV7 1
+#define HAVE_IWMMXT 0
+#define HAVE_IWMMXT2 0
+#define HAVE_MIPS32 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_ALTIVEC 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_ALT_TREE_LAYOUT 0
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define CONFIG_EXTERNAL_BUILD 0
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_FAST_UNALIGNED 1
+#define CONFIG_MEM_MANAGER 0
+#define CONFIG_MEM_TRACKER 0
+#define CONFIG_MEM_CHECKS 0
+#define CONFIG_MD5 1
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP8 1
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_SHARED 0
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_ERROR_CONCEALMENT 1
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx/source/config/linux/arm-neon/vpx_version.h b/third_party/libvpx/source/config/linux/arm-neon/vpx_version.h
new file mode 100644
index 0000000..5eedf61
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm-neon/vpx_version.h
@@ -0,0 +1,7 @@
+#define VERSION_MAJOR  0
+#define VERSION_MINOR  9
+#define VERSION_PATCH  7
+#define VERSION_EXTRA  ""
+#define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
+#define VERSION_STRING_NOSP "v0.9.7"
+#define VERSION_STRING      " v0.9.7"
diff --git a/third_party/libvpx/source/config/linux/arm/asm_com_offsets.asm b/third_party/libvpx/source/config/linux/arm/asm_com_offsets.asm
new file mode 100644
index 0000000..4a292fa
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/asm_com_offsets.asm
@@ -0,0 +1,15 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ yv12_buffer_config_y_width ,  0
+.equ yv12_buffer_config_y_height ,  4
+.equ yv12_buffer_config_y_stride ,  8
+.equ yv12_buffer_config_uv_width ,  12
+.equ yv12_buffer_config_uv_height ,  16
+.equ yv12_buffer_config_uv_stride ,  20
+.equ yv12_buffer_config_y_buffer ,  24
+.equ yv12_buffer_config_u_buffer ,  28
+.equ yv12_buffer_config_v_buffer ,  32
+.equ yv12_buffer_config_border ,  40
+.equ VP8BORDERINPIXELS_VAL ,  32
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm/asm_dec_offsets.asm b/third_party/libvpx/source/config/linux/arm/asm_dec_offsets.asm
new file mode 100644
index 0000000..feaab20
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/asm_dec_offsets.asm
@@ -0,0 +1,20 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ detok_scan ,  0
+.equ detok_ptr_block2leftabove ,  4
+.equ detok_coef_tree_ptr ,  8
+.equ detok_norm_ptr ,  12
+.equ detok_ptr_coef_bands_x ,  16
+.equ detok_A ,  20
+.equ detok_L ,  24
+.equ detok_qcoeff_start_ptr ,  28
+.equ detok_current_bc ,  32
+.equ detok_coef_probs ,  36
+.equ detok_eob ,  52
+.equ bool_decoder_user_buffer_end ,  0
+.equ bool_decoder_user_buffer ,  4
+.equ bool_decoder_value ,  8
+.equ bool_decoder_count ,  12
+.equ bool_decoder_range ,  16
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm/asm_enc_offsets.asm b/third_party/libvpx/source/config/linux/arm/asm_enc_offsets.asm
new file mode 100644
index 0000000..4e9726e
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/asm_enc_offsets.asm
@@ -0,0 +1,46 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ vp8_block_coeff ,  4
+.equ vp8_block_zbin ,  20
+.equ vp8_block_round ,  28
+.equ vp8_block_quant ,  8
+.equ vp8_block_quant_fast ,  12
+.equ vp8_block_zbin_extra ,  32
+.equ vp8_block_zrun_zbin_boost ,  24
+.equ vp8_block_quant_shift ,  16
+.equ vp8_blockd_qcoeff ,  0
+.equ vp8_blockd_dequant ,  16
+.equ vp8_blockd_dqcoeff ,  4
+.equ vp8_blockd_eob ,  44
+.equ vp8_block_base_src ,  36
+.equ vp8_block_src ,  40
+.equ vp8_block_src_diff ,  0
+.equ vp8_block_src_stride ,  44
+.equ vp8_blockd_predictor ,  8
+.equ vp8_writer_lowvalue ,  0
+.equ vp8_writer_range ,  4
+.equ vp8_writer_value ,  8
+.equ vp8_writer_count ,  12
+.equ vp8_writer_pos ,  16
+.equ vp8_writer_buffer ,  20
+.equ tokenextra_token ,  6
+.equ tokenextra_extra ,  4
+.equ tokenextra_context_tree ,  0
+.equ tokenextra_skip_eob_node ,  7
+.equ TOKENEXTRA_SZ ,  8
+.equ vp8_extra_bit_struct_sz ,  16
+.equ vp8_token_value ,  0
+.equ vp8_token_len ,  4
+.equ vp8_extra_bit_struct_tree ,  0
+.equ vp8_extra_bit_struct_prob ,  4
+.equ vp8_extra_bit_struct_len ,  8
+.equ vp8_extra_bit_struct_base_val ,  12
+.equ vp8_comp_tplist ,  174400
+.equ vp8_comp_common ,  104640
+.equ vp8_comp_bc2 ,  121568
+.equ tokenlist_start ,  0
+.equ tokenlist_stop ,  4
+.equ TOKENLIST_SZ ,  8
+.equ vp8_common_mb_rows ,  13080
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm/vpx_config.asm b/third_party/libvpx/source/config/linux/arm/vpx_config.asm
new file mode 100644
index 0000000..9188ca3
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/vpx_config.asm
@@ -0,0 +1,73 @@
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+.equ ARCH_ARM ,  1
+.equ ARCH_MIPS ,  0
+.equ ARCH_X86 ,  0
+.equ ARCH_X86_64 ,  0
+.equ ARCH_PPC32 ,  0
+.equ ARCH_PPC64 ,  0
+.equ HAVE_ARMV5TE ,  1
+.equ HAVE_ARMV6 ,  1
+.equ HAVE_ARMV7 ,  0
+.equ HAVE_IWMMXT ,  0
+.equ HAVE_IWMMXT2 ,  0
+.equ HAVE_MIPS32 ,  0
+.equ HAVE_MMX ,  0
+.equ HAVE_SSE ,  0
+.equ HAVE_SSE2 ,  0
+.equ HAVE_SSE3 ,  0
+.equ HAVE_SSSE3 ,  0
+.equ HAVE_SSE4_1 ,  0
+.equ HAVE_ALTIVEC ,  0
+.equ HAVE_VPX_PORTS ,  1
+.equ HAVE_STDINT_H ,  1
+.equ HAVE_ALT_TREE_LAYOUT ,  0
+.equ HAVE_PTHREAD_H ,  1
+.equ HAVE_SYS_MMAN_H ,  1
+.equ HAVE_UNISTD_H ,  0
+.equ CONFIG_EXTERNAL_BUILD ,  0
+.equ CONFIG_INSTALL_DOCS ,  0
+.equ CONFIG_INSTALL_BINS ,  0
+.equ CONFIG_INSTALL_LIBS ,  0
+.equ CONFIG_INSTALL_SRCS ,  0
+.equ CONFIG_DEBUG ,  0
+.equ CONFIG_GPROF ,  0
+.equ CONFIG_GCOV ,  0
+.equ CONFIG_RVCT ,  0
+.equ CONFIG_GCC ,  1
+.equ CONFIG_MSVS ,  0
+.equ CONFIG_PIC ,  1
+.equ CONFIG_BIG_ENDIAN ,  0
+.equ CONFIG_CODEC_SRCS ,  0
+.equ CONFIG_DEBUG_LIBS ,  0
+.equ CONFIG_FAST_UN.balignED ,  1
+.equ CONFIG_MEM_MANAGER ,  0
+.equ CONFIG_MEM_TRACKER ,  0
+.equ CONFIG_MEM_CHECKS ,  0
+.equ CONFIG_MD5 ,  1
+.equ CONFIG_DEQUANT_TOKENS ,  0
+.equ CONFIG_DC_RECON ,  0
+.equ CONFIG_RUNTIME_CPU_DETECT ,  0
+.equ CONFIG_POSTPROC ,  1
+.equ CONFIG_MULTITHREAD ,  1
+.equ CONFIG_INTERNAL_STATS ,  0
+.equ CONFIG_VP8_ENCODER ,  1
+.equ CONFIG_VP8_DECODER ,  1
+.equ CONFIG_VP8 ,  1
+.equ CONFIG_ENCODERS ,  1
+.equ CONFIG_DECODERS ,  1
+.equ CONFIG_STATIC_MSVCRT ,  0
+.equ CONFIG_SPATIAL_RESAMPLING ,  1
+.equ CONFIG_REALTIME_ONLY ,  1
+.equ CONFIG_ERROR_CONCEALMENT ,  1
+.equ CONFIG_SHARED ,  0
+.equ CONFIG_STATIC ,  1
+.equ CONFIG_SMALL ,  0
+.equ CONFIG_POSTPROC_VISUALIZER ,  0
+.equ CONFIG_OS_SUPPORT ,  1
+	.section	.note.GNU-stack,"",%progbits
+@ This file was created from a .asm file
+@  using the ads2gas.pl script.
+	.equ DO1STROUNDING, 0
+	.section	.note.GNU-stack,"",%progbits
diff --git a/third_party/libvpx/source/config/linux/arm/vpx_config.c b/third_party/libvpx/source/config/linux/arm/vpx_config.c
new file mode 100644
index 0000000..e83fef4
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/vpx_config.c
@@ -0,0 +1,2 @@
+static const char* const cfg = "--target=armv6-linux-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-bins --disable-install-libs --enable-realtime-only --disable-install-srcs --disable-examples";
+const char *vpx_codec_build_config(void) {return cfg;}
diff --git a/third_party/libvpx/source/config/linux/arm/vpx_config.h b/third_party/libvpx/source/config/linux/arm/vpx_config.h
new file mode 100644
index 0000000..d0940a5
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/vpx_config.h
@@ -0,0 +1,68 @@
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_CONFIG_H
+#define VPX_CONFIG_H
+#define RESTRICT    
+#define ARCH_ARM 1
+#define ARCH_MIPS 0
+#define ARCH_X86 0
+#define ARCH_X86_64 0
+#define ARCH_PPC32 0
+#define ARCH_PPC64 0
+#define HAVE_ARMV5TE 1
+#define HAVE_ARMV6 1
+#define HAVE_ARMV7 0
+#define HAVE_IWMMXT 0
+#define HAVE_IWMMXT2 0
+#define HAVE_MIPS32 0
+#define HAVE_MMX 0
+#define HAVE_SSE 0
+#define HAVE_SSE2 0
+#define HAVE_SSE3 0
+#define HAVE_SSSE3 0
+#define HAVE_SSE4_1 0
+#define HAVE_ALTIVEC 0
+#define HAVE_VPX_PORTS 1
+#define HAVE_STDINT_H 1
+#define HAVE_ALT_TREE_LAYOUT 0
+#define HAVE_PTHREAD_H 1
+#define HAVE_SYS_MMAN_H 1
+#define CONFIG_EXTERNAL_BUILD 0
+#define CONFIG_INSTALL_DOCS 0
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
+#define CONFIG_INSTALL_SRCS 0
+#define CONFIG_DEBUG 0
+#define CONFIG_GPROF 0
+#define CONFIG_GCOV 0
+#define CONFIG_RVCT 0
+#define CONFIG_GCC 1
+#define CONFIG_MSVS 0
+#define CONFIG_PIC 1
+#define CONFIG_BIG_ENDIAN 0
+#define CONFIG_CODEC_SRCS 0
+#define CONFIG_DEBUG_LIBS 0
+#define CONFIG_FAST_UNALIGNED 1
+#define CONFIG_MEM_MANAGER 0
+#define CONFIG_MEM_TRACKER 0
+#define CONFIG_MEM_CHECKS 0
+#define CONFIG_MD5 1
+#define CONFIG_DEQUANT_TOKENS 0
+#define CONFIG_DC_RECON 0
+#define CONFIG_RUNTIME_CPU_DETECT 0
+#define CONFIG_POSTPROC 1
+#define CONFIG_MULTITHREAD 1
+#define CONFIG_VP8_ENCODER 1
+#define CONFIG_VP8_DECODER 1
+#define CONFIG_VP8 1
+#define CONFIG_ENCODERS 1
+#define CONFIG_DECODERS 1
+#define CONFIG_STATIC_MSVCRT 0
+#define CONFIG_SPATIAL_RESAMPLING 1
+#define CONFIG_REALTIME_ONLY 1
+#define CONFIG_SHARED 0
+#define CONFIG_SMALL 0
+#define CONFIG_POSTPROC_VISUALIZER 0
+#define CONFIG_OS_SUPPORT 1
+#define CONFIG_INTERNAL_STATS 0
+#define CONFIG_ERROR_CONCEALMENT 1
+#endif /* VPX_CONFIG_H */
diff --git a/third_party/libvpx/source/config/linux/arm/vpx_version.h b/third_party/libvpx/source/config/linux/arm/vpx_version.h
new file mode 100644
index 0000000..5eedf61
--- /dev/null
+++ b/third_party/libvpx/source/config/linux/arm/vpx_version.h
@@ -0,0 +1,7 @@
+#define VERSION_MAJOR  0
+#define VERSION_MINOR  9
+#define VERSION_PATCH  7
+#define VERSION_EXTRA  ""
+#define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
+#define VERSION_STRING_NOSP "v0.9.7"
+#define VERSION_STRING      " v0.9.7"
diff --git a/third_party/libvpx/source/config/linux/ia32/vpx_config.asm b/third_party/libvpx/source/config/linux/ia32/vpx_config.asm
index 85c92c2..d15accf 100644
--- a/third_party/libvpx/source/config/linux/ia32/vpx_config.asm
+++ b/third_party/libvpx/source/config/linux/ia32/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 1
 CONFIG_EXTERNAL_BUILD equ 0
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/linux/ia32/vpx_config.h b/third_party/libvpx/source/config/linux/ia32/vpx_config.h
index 161db78..26a491c 100644
--- a/third_party/libvpx/source/config/linux/ia32/vpx_config.h
+++ b/third_party/libvpx/source/config/linux/ia32/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 1
 #define CONFIG_EXTERNAL_BUILD 0
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1
diff --git a/third_party/libvpx/source/config/linux/x64/vpx_config.asm b/third_party/libvpx/source/config/linux/x64/vpx_config.asm
index 60dba05..bc15c1b 100644
--- a/third_party/libvpx/source/config/linux/x64/vpx_config.asm
+++ b/third_party/libvpx/source/config/linux/x64/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 1
 CONFIG_EXTERNAL_BUILD equ 0
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/linux/x64/vpx_config.h b/third_party/libvpx/source/config/linux/x64/vpx_config.h
index a7bb745..97e3284 100644
--- a/third_party/libvpx/source/config/linux/x64/vpx_config.h
+++ b/third_party/libvpx/source/config/linux/x64/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 1
 #define CONFIG_EXTERNAL_BUILD 0
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1
diff --git a/third_party/libvpx/source/config/mac/ia32/vpx_config.asm b/third_party/libvpx/source/config/mac/ia32/vpx_config.asm
index 85c92c2..d15accf 100644
--- a/third_party/libvpx/source/config/mac/ia32/vpx_config.asm
+++ b/third_party/libvpx/source/config/mac/ia32/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 1
 CONFIG_EXTERNAL_BUILD equ 0
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/mac/ia32/vpx_config.h b/third_party/libvpx/source/config/mac/ia32/vpx_config.h
index 161db78..26a491c 100644
--- a/third_party/libvpx/source/config/mac/ia32/vpx_config.h
+++ b/third_party/libvpx/source/config/mac/ia32/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 1
 #define CONFIG_EXTERNAL_BUILD 0
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1
diff --git a/third_party/libvpx/source/config/mac/x64/vpx_config.asm b/third_party/libvpx/source/config/mac/x64/vpx_config.asm
index 60dba05..bc15c1b 100644
--- a/third_party/libvpx/source/config/mac/x64/vpx_config.asm
+++ b/third_party/libvpx/source/config/mac/x64/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 1
 CONFIG_EXTERNAL_BUILD equ 0
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/mac/x64/vpx_config.h b/third_party/libvpx/source/config/mac/x64/vpx_config.h
index a7bb745..97e3284 100644
--- a/third_party/libvpx/source/config/mac/x64/vpx_config.h
+++ b/third_party/libvpx/source/config/mac/x64/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 1
 #define CONFIG_EXTERNAL_BUILD 0
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1
diff --git a/third_party/libvpx/source/config/win/ia32/vpx_config.asm b/third_party/libvpx/source/config/win/ia32/vpx_config.asm
index 47dab7e..31a5395 100644
--- a/third_party/libvpx/source/config/win/ia32/vpx_config.asm
+++ b/third_party/libvpx/source/config/win/ia32/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 0
 CONFIG_EXTERNAL_BUILD equ 1
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/win/ia32/vpx_config.h b/third_party/libvpx/source/config/win/ia32/vpx_config.h
index 6829e36..f0353c2 100644
--- a/third_party/libvpx/source/config/win/ia32/vpx_config.h
+++ b/third_party/libvpx/source/config/win/ia32/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 0
 #define CONFIG_EXTERNAL_BUILD 1
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1
diff --git a/third_party/libvpx/source/config/win/x64/vpx_config.asm b/third_party/libvpx/source/config/win/x64/vpx_config.asm
index 46655b8..9f0a835 100644
--- a/third_party/libvpx/source/config/win/x64/vpx_config.asm
+++ b/third_party/libvpx/source/config/win/x64/vpx_config.asm
@@ -25,8 +25,8 @@
 HAVE_UNISTD_H equ 0
 CONFIG_EXTERNAL_BUILD equ 1
 CONFIG_INSTALL_DOCS equ 0
-CONFIG_INSTALL_BINS equ 1
-CONFIG_INSTALL_LIBS equ 1
+CONFIG_INSTALL_BINS equ 0
+CONFIG_INSTALL_LIBS equ 0
 CONFIG_INSTALL_SRCS equ 0
 CONFIG_DEBUG equ 0
 CONFIG_GPROF equ 0
@@ -56,7 +56,7 @@
 CONFIG_DECODERS equ 1
 CONFIG_STATIC_MSVCRT equ 0
 CONFIG_SPATIAL_RESAMPLING equ 1
-CONFIG_REALTIME_ONLY equ 0
+CONFIG_REALTIME_ONLY equ 1
 CONFIG_ERROR_CONCEALMENT equ 1
 CONFIG_SHARED equ 0
 CONFIG_STATIC equ 1
diff --git a/third_party/libvpx/source/config/win/x64/vpx_config.h b/third_party/libvpx/source/config/win/x64/vpx_config.h
index 8437a56..aea3b21 100644
--- a/third_party/libvpx/source/config/win/x64/vpx_config.h
+++ b/third_party/libvpx/source/config/win/x64/vpx_config.h
@@ -29,8 +29,8 @@
 #define HAVE_UNISTD_H 0
 #define CONFIG_EXTERNAL_BUILD 1
 #define CONFIG_INSTALL_DOCS 0
-#define CONFIG_INSTALL_BINS 1
-#define CONFIG_INSTALL_LIBS 1
+#define CONFIG_INSTALL_BINS 0
+#define CONFIG_INSTALL_LIBS 0
 #define CONFIG_INSTALL_SRCS 0
 #define CONFIG_DEBUG 0
 #define CONFIG_GPROF 0
@@ -60,7 +60,7 @@
 #define CONFIG_DECODERS 1
 #define CONFIG_STATIC_MSVCRT 0
 #define CONFIG_SPATIAL_RESAMPLING 1
-#define CONFIG_REALTIME_ONLY 0
+#define CONFIG_REALTIME_ONLY 1
 #define CONFIG_ERROR_CONCEALMENT 1
 #define CONFIG_SHARED 0
 #define CONFIG_STATIC 1