blob: 532aa13f722b22c47d1963295aa279d21e82ba89 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
include $(CLEAR_VARS)
FFMPEG_TCDIR := $(realpath $(shell dirname $(TARGET_TOOLS_PREFIX)))
FFMPEG_TCPREFIX := $(shell basename $(TARGET_TOOLS_PREFIX))
# FIXME remove -fno-strict-aliasing once the aliasing violations are fixed
FFMPEG_COMPILER_FLAGS = $(subst -I ,-I../../,$(subst -include build/core/combo/include/arch/linux-arm/AndroidConfig.h,,$(TARGET_GLOBAL_CFLAGS))) -fno-strict-aliasing -Wno-error=address -Wno-error=format-security
ifneq ($(strip $(SHOW_COMMANDS)),)
FF_VERBOSE="V=1"
endif
.PHONY: ffmpeg
droid: ffmpeg
systemtarball: ffmpeg
REALTOP=$(realpath $(TOP))
ffmpeg: x264 $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libvpx_intermediates/libvpx.a
mkdir -p $(PRODUCT_OUT)/obj/ffmpeg
cd $(PRODUCT_OUT)/obj/ffmpeg && \
export PATH=$(FFMPEG_TCDIR):$(PATH) && \
$(REALTOP)/external/ffmpeg/configure \
--arch=arm \
--target-os=linux \
--prefix=/system \
--bindir=/system/bin \
--libdir=/system/lib \
--enable-shared \
--disable-static \
--enable-thumb \
--enable-gpl \
--disable-avdevice \
--enable-runtime-cpudetect \
--disable-libvpx \
--enable-libx264 \
--enable-cross-compile \
--cross-prefix=$(FFMPEG_TCPREFIX) \
--extra-ldflags="-nostdlib -Wl,-dynamic-linker,/system/bin/linker,-z,muldefs$(shell if test $(PRODUCT_SDK_VERSION) -lt 16; then echo -n ',-T$(REALTOP)/$(BUILD_SYSTEM)/armelf.x'; fi),-z,nocopyreloc,--no-undefined -L$(REALTOP)/$(TARGET_OUT_STATIC_LIBRARIES) -L$(REALTOP)/$(PRODUCT_OUT)/system/lib -L$(REALTOP)/$(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libvpx_intermediates -ldl -lc" \
--extra-cflags="$(FFMPEG_COMPILER_FLAGS) -I$(REALTOP)/bionic/libc/include -I$(REALTOP)/bionic/libc/kernel/common -I$(REALTOP)/bionic/libc/kernel/arch-arm -I$(REALTOP)/bionic/libc/arch-arm/include -I$(REALTOP)/bionic/libm/include -I$(REALTOP)/external/libvpx -I$(REALTOP)/external/x264" \
--extra-libs="-lgcc" && \
$(MAKE) TARGET_CRTBEGIN_DYNAMIC_O=$(REALTOP)/$(TARGET_CRTBEGIN_DYNAMIC_O) TARGET_CRTEND_O=$(REALTOP)/$(TARGET_CRTEND_O) $(FF_VERBOSE) && \
$(MAKE) install DESTDIR=$(REALTOP)/$(PRODUCT_OUT)
|