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=bink \
10 --disable-encoder=vorbis \
12 --enable-libopenjpeg \
21 # Those tools are named differently in FFmpeg and Libav
22 # --disable-ffserver \
25 DEPS_ffmpeg = zlib gsm openjpeg
27 # Optional dependencies
29 FFMPEGCONF += --enable-libmp3lame --enable-libvpx --disable-decoder=libvpx
30 DEPS_ffmpeg += lame $(DEPS_lame) vpx $(DEPS_vpx)
32 FFMPEGCONF += --disable-encoders --disable-muxers
37 FFMPEGCONF += --enable-small --optflags=-O2
40 # XXX: assumes > ARMv7-A, and thus thumb2-able
41 FFMPEGCONF += --enable-thumb
46 ifdef HAVE_CROSS_COMPILE
47 FFMPEGCONF += --enable-cross-compile
49 FFMPEGCONF += --cross-prefix=$(HOST)-
55 FFMPEGCONF += --arch=arm
57 FFMPEGCONF += --cpu=cortex-a8 --enable-neon
58 FFMPEG_CFLAGS += -mfpu=neon
64 FFMPEGCONF += --arch=x86
69 FFMPEGCONF += --arch=$(ARCH) --target-os=darwin
70 ifneq ($(findstring $(ARCH),i386 x86_64),)
71 FFMPEGCONF += --enable-memalign-hack
74 FFMPEGCONF += --cpu=core2
78 FFMPEGCONF += --enable-pic --as="$(AS)"
83 FFMPEGCONF += --target-os=linux --enable-pic
86 ifeq ($(ANDROID_ABI), x86)
88 # Android-x86 gcc doesn't guarantee an aligned stack, but this is
89 # handled by __attribute__((force_align_arg_pointer)) in libavcodec
90 # already, so we tell gcc to assume this alignment, so we don't need
91 # to waste a precious register in assembly functions to realign it.
92 FFMPEG_CFLAGS += -mincoming-stack-boundary=4
100 ifndef HAVE_MINGW_W64
101 DEPS_ffmpeg += directx
103 FFMPEGCONF += --target-os=mingw32 --enable-memalign-hack
104 FFMPEGCONF += --enable-w32threads --enable-dxva2 \
105 --disable-decoder=dca
108 FFMPEGCONF += --cpu=athlon64 --arch=x86_64
110 FFMPEGCONF+= --cpu=i686 --arch=x86
114 FFMPEGCONF += --enable-pthreads
119 ifeq ($(call need_pkg,"libavcodec >= 52.25.0 libavformat >= 52.30.0 libswscale"),)
123 $(TARBALLS)/ffmpeg-git.tar.gz:
124 $(call download,$(FFMPEG_SNAPURL))
126 FFMPEG_VERSION := git
128 .sum-ffmpeg: $(TARBALLS)/ffmpeg-$(FFMPEG_VERSION).tar.gz
129 $(warning Not implemented.)
132 ffmpeg: ffmpeg-$(FFMPEG_VERSION).tar.gz .sum-ffmpeg
135 $(ZCAT) "$<" | (cd $@-git && tar xv --strip-components=1)
139 cd $< && $(HOSTVARS) ./configure \
140 --extra-ldflags="$(LDFLAGS)" $(FFMPEGCONF) \
141 --prefix="$(PREFIX)" --enable-static --disable-shared
142 cd $< && $(MAKE) install-libs install-headers