3 #FFMPEG_SNAPURL := http://git.videolan.org/?p=ffmpeg.git;a=snapshot;h=HEAD;sf=tgz
4 FFMPEG_SNAPURL
:= http
://git.libav.org
/?p
=libav.git
;a
=snapshot
;h
=HEAD
;sf
=tgz
9 --disable-decoder
=libvpx \
10 --disable-decoder
=bink \
12 --enable-libopenjpeg \
19 # Those tools are named differently in FFmpeg and Libav
20 # --disable-ffserver \
23 DEPS_ffmpeg
= zlib gsm openjpeg
25 # Optional dependencies
27 FFMPEGCONF
+= --enable-libmp3lame
--enable-libvpx
28 DEPS_ffmpeg
+= lame
$(DEPS_lame
) vpx
$(DEPS_vpx
)
30 FFMPEGCONF
+= --disable-encoders
--disable-muxers
34 FFMPEGCONF
+= --enable-small
--optflags
=-O2
37 # XXX: assumes CPU >= cortex-a8, and thus thumb2 able
38 FFMPEGCONF
+= --enable-thumb
45 #FFMPEGCONF += --disable-mpegaudio-hp
48 ifdef HAVE_CROSS_COMPILE
49 FFMPEGCONF
+= --enable-cross-compile
51 FFMPEGCONF
+= --cross-prefix
=$(HOST
)-
57 FFMPEGCONF
+= --disable-runtime-cpudetect
--arch
=arm
59 FFMPEGCONF
+= --cpu
=cortex-a8
--enable-neon
60 FFMPEG_CFLAGS
+=-mfloat-abi
=softfp
-mfpu
=neon
66 FFMPEGCONF
+= --arch
=x86
71 FFMPEGCONF
+= --arch
=$(ARCH
) --target-os
=darwin
72 FFMPEG_CFLAGS
+= -DHAVE_LRINTF
73 ifneq ($(findstring $(ARCH
),i386 x86_64
),)
74 FFMPEGCONF
+= --enable-memalign-hack
77 FFMPEGCONF
+= --cpu
=core2
81 FFMPEGCONF
+= --enable-pic
--as="$(AS)" --disable-decoder
=snow
83 FFMPEGCONF
+= --cpu
=cortex-a8
89 FFMPEGCONF
+= --target-os
=linux
--enable-pic
91 ifeq ($(ANDROID_ABI
), x86
)
93 # Android-x86 gcc doesn't guarantee an aligned stack, but this is
94 # handled by __attribute__((force_align_arg_pointer)) in libavcodec
95 # already, so we tell gcc to assume this alignment, so we don't need
96 # to waste a precious register in assembly functions to realign it.
97 FFMPEG_CFLAGS
+= -mincoming-stack-boundary
=4
105 ifndef HAVE_MINGW_W64
106 DEPS_ffmpeg
+= directx
108 FFMPEGCONF
+= --target-os
=mingw32
--enable-memalign-hack
109 FFMPEGCONF
+= --enable-w32threads \
110 --disable-bzlib
--disable-bsfs \
111 --disable-decoder
=dca
--disable-encoder
=vorbis \
115 FFMPEGCONF
+= --cpu
=athlon64
--arch
=x86_64
117 FFMPEGCONF
+= --cpu
=i686
--arch
=x86
120 FFMPEGCONF
+= --enable-pthreads
124 FFMPEGCONF
+= --target-os
=mingw32ce
--arch
=armv4l
--cpu
=armv4t \
125 --disable-decoder
=snow
--disable-decoder
=vc9 \
126 --disable-decoder
=wmv3
--disable-decoder
=vorbis \
127 --disable-decoder
=dvdsub
--disable-decoder
=dvbsub
130 FFMPEG_CFLAGS
+= --std
=gnu99
135 ifeq ($(call need_pkg
,"libavcodec >= 52.25.0 libavformat >= 52.30.0 libswscale"),)
139 $(TARBALLS
)/ffmpeg-git.
tar.gz
:
140 $(call download
,$(FFMPEG_SNAPURL
))
142 FFMPEG_VERSION
:= git
144 .sum-ffmpeg
: $(TARBALLS
)/ffmpeg-
$(FFMPEG_VERSION
).
tar.gz
145 $(warning Not implemented.
)
148 ffmpeg
: ffmpeg-
$(FFMPEG_VERSION
).
tar.gz .sum-ffmpeg
151 $(ZCAT
) "$<" |
(cd
$@
-git
&& tar xv
--strip-components
=1)
153 sed
-i
"s/std=c99/std=gnu99/" $@
-$(FFMPEG_VERSION
)/configure
158 cd
$< && $(HOSTVARS
) .
/configure \
159 --extra-cflags
="$(FFMPEG_CFLAGS) -DHAVE_STDINT_H" \
160 --extra-ldflags
="$(LDFLAGS)" $(FFMPEGCONF
) \
161 --prefix="$(PREFIX)" --enable-static
--disable-shared
162 cd
$< && $(MAKE
) install-libs install-headers