| Index: third_party/ffmpeg/ffmpeg.gyp
|
| diff --git a/third_party/ffmpeg/ffmpeg.gyp b/third_party/ffmpeg/ffmpeg.gyp
|
| index e490ca60698027e10f11fd48b2a77435899f6de6..9a2eb1e8fa7793e174917f23b2fe24dd2ca7d804 100755
|
| --- a/third_party/ffmpeg/ffmpeg.gyp
|
| +++ b/third_party/ffmpeg/ffmpeg.gyp
|
| @@ -49,15 +49,20 @@
|
| 'variables': {
|
| 'target_for_binaries': 'ffmpegsumo_nolink',
|
| 'ffmpeg_include_root': 'source/patched-ffmpeg-mt',
|
| + 'conditions': [
|
| + ['target_arch=="x64" or target_arch=="ia32"', {
|
| + 'ffmpeg_asm_lib': 1,
|
| + }],
|
| + ['target_arch=="arm"', {
|
| + 'ffmpeg_asm_lib': 0,
|
| + }],
|
| + ],
|
| },
|
| 'targets': [
|
| {
|
| 'target_name': 'ffmpegsumo',
|
| 'product_name': 'libffmpegsumo',
|
| 'type': 'shared_library',
|
| - 'dependencies': [
|
| - 'make_ffmpeg_asm_lib',
|
| - ],
|
| 'sources': [
|
| 'source/patched-ffmpeg-mt/libavcodec/aac.c',
|
| 'source/patched-ffmpeg-mt/libavcodec/aac_ac3_parser.c',
|
| @@ -103,20 +108,6 @@
|
| 'source/patched-ffmpeg-mt/libavcodec/vorbis_dec.c',
|
| 'source/patched-ffmpeg-mt/libavcodec/vp3.c',
|
| 'source/patched-ffmpeg-mt/libavcodec/vp3dsp.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/cpuid.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/dnxhd_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/dsputil_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/fdct_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn2.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/fft_sse.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/idct_mmx_xvid.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/idct_sse2_xvid.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/motion_est_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/mpegvideo_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/simple_idct_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_mmx.c',
|
| - 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_sse2.c',
|
| 'source/patched-ffmpeg-mt/libavcodec/xiph.c',
|
| 'source/patched-ffmpeg-mt/libavformat/allformats.c',
|
| 'source/patched-ffmpeg-mt/libavformat/avio.c',
|
| @@ -188,6 +179,27 @@
|
| 'source/patched-ffmpeg-mt/libavformat/mp3.c',
|
| ],
|
| }], # ffmpeg_branding
|
| + ['target_arch=="ia32" or target_arch=="x64"', {
|
| + 'dependencies': [
|
| + 'make_ffmpeg_asm_lib',
|
| + ],
|
| + 'sources': [
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/cpuid.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/dnxhd_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/dsputil_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/fdct_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/fft_3dn2.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/fft_sse.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/idct_mmx_xvid.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/idct_sse2_xvid.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/motion_est_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/mpegvideo_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/simple_idct_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_mmx.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/x86/vp3dsp_sse2.c',
|
| + ],
|
| + }],
|
| ['target_arch=="x64"', {
|
| # x64 requires PIC for shared libraries. This is opposite
|
| # of ia32 where due to a slew of inline assembly using ebx,
|
| @@ -198,7 +210,30 @@
|
| 'cflags': [
|
| '-fPIC',
|
| ],
|
| - }], # target_arch
|
| + }], # target_arch=="x64"
|
| + ['target_arch=="arm"', {
|
| + 'defines': [
|
| + 'PIC',
|
| + ],
|
| + 'cflags': [
|
| + '-fPIC',
|
| + '-march=armv7-a',
|
| + '-mtune=cortex-a8',
|
| + '-mfpu=neon',
|
| + '-mfloat-abi=softfp',
|
| + ],
|
| + 'sources': [
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/dsputil_arm.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/dsputil_arm_s.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/dsputil_vfp.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/float_arm_vfp.c',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/jrevdct_arm.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/simple_idct_arm.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/simple_idct_armv5te.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/simple_idct_armv6.S',
|
| + 'source/patched-ffmpeg-mt/libavcodec/arm/simple_idct_neon.S',
|
| + ],
|
| + }], # target_arch=="arm"
|
| ['OS=="linux" or OS=="freebsd"', {
|
| 'defines': [
|
| '_ISOC99_SOURCE',
|
| @@ -222,13 +257,18 @@
|
| '-L<(shared_generated_dir)',
|
| ],
|
| 'libraries': [
|
| - # TODO(ajwong): When scons is dead, collapse this with the
|
| - # absolute path entry inside the OS="mac" conditional, and
|
| - # move it out of the conditionals block altogether.
|
| - '-l<(asm_library)',
|
| -
|
| '-lz',
|
| ],
|
| + 'conditions': [
|
| + ['ffmpeg_asm_lib==1', {
|
| + 'libraries': [
|
| + # TODO(ajwong): When scons is dead, collapse this with the
|
| + # absolute path entry inside the OS="mac" conditional, and
|
| + # move it out of the conditionals block altogether.
|
| + '-l<(asm_library)',
|
| + ],
|
| + }],
|
| + ],
|
| },
|
| }], # OS=="linux" or OS=="freebsd"
|
| ['OS=="mac"', {
|
| @@ -293,7 +333,7 @@
|
| 'target_name': 'assemble_ffmpeg_asm',
|
| 'type': 'none',
|
| 'dependencies': [
|
| - '../yasm/yasm.gyp:yasm',
|
| + '../yasm/yasm.gyp:yasm#host',
|
| ],
|
| 'sources': [
|
| # The FFmpeg yasm files.
|
| @@ -325,6 +365,11 @@
|
| ],
|
| },
|
| }],
|
| + ['target_arch=="arm"', {
|
| + 'variables': {
|
| + 'yasm_flags': [],
|
| + },
|
| + }],
|
| ],
|
| }], ['OS=="mac"', {
|
| 'variables': {
|
|
|