1Pull the new libvpx checkout into external/libvpx/libvpx:
2$ cd external/libvpx/
3$ rm -rf libvpx
4$ git clone http://git.chromium.org/webm/libvpx.git
5$ cd libvpx
6$ git checkout <branch>
7
8Enter the subdirectory for the relevant platform. For example, armv7-neon for
9armv7 targets with neon extensions. We disable many features. Some for
10functional reasons and some for aesthetic ones.
11
12Functional:
13--force-target=$TARGET
14  The "Android" support in libvpx is targeted at the NDK and does not yet
15  include support for architectures such as MIPS. However, we can still generate
16  the necessary files for them.
17--disable-runtime-cpu-detect
18--disable-neon
19  The platform knows at build time what extensions are supported.
20--sdk-path=$SDK_PATH
21  For configuration we do some compiler tests. It is much easier to accept them
22  than to work around them. This uses the compilers included in the NDK.
23--enable-realtime-only
24  Reduce binary size when building the encoder.
25
26Aesthetic:
27--disable-examples
28--disable-docs
29  Skip unnecessary extra makefiles.
30
31Example:
32$ cd external/libvpx/armv7a
33$ ../libvpx/configure --target=armv7-android-gcc --disable-runtime-cpu-detect \
34  --disable-neon --sdk-path=$ANDROID_NDK_ROOT --disable-vp9-encoder \
35  --disable-examples --disable-docs
36
37Run 'make libvpx_srcs.txt'
38This will generate a file listing all of the required sources. It will also
39generate vpx_rtcd.h and vpx_version.h
40
41Remove the unused files leaving only:
42libvpx_srcs.txt
43vpx_config.c
44vpx_config.h
45vpx_scale_rtcd.h
46vp8_rtcd.h
47vp9_rtcd.h
48vpx_version.h
49
50Remove the .git* from external/libvpx/libvpx:
51$ cd external/libvpx/libvpx
52$ rm -rf .git*
53