Merge pull request #3903 from MilhouseVH/le10_ffmpeg-need-unpack

ffmpeg: rebuild whenever libraries change
This commit is contained in:
Christian Hewitt 2019-10-25 04:47:35 +04:00 committed by GitHub
commit cdd6956e23
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -16,39 +16,44 @@ PKG_BUILD_FLAGS="-gold"
# Dependencies # Dependencies
get_graphicdrivers get_graphicdrivers
if [ "$V4L2_SUPPORT" = "yes" ]; then if [ "${V4L2_SUPPORT}" = "yes" ]; then
PKG_DEPENDS_TARGET+=" libdrm"
PKG_NEED_UNPACK+=" $(get_pkg_directory libdrm)"
PKG_PATCH_DIRS+=" v4l2" PKG_PATCH_DIRS+=" v4l2"
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libdrm"
PKG_FFMPEG_V4L2="--enable-v4l2_m2m --enable-libdrm" PKG_FFMPEG_V4L2="--enable-v4l2_m2m --enable-libdrm"
else else
PKG_FFMPEG_V4L2="--disable-v4l2_m2m" PKG_FFMPEG_V4L2="--disable-v4l2_m2m"
fi fi
if [ "$VAAPI_SUPPORT" = "yes" ]; then if [ "${VAAPI_SUPPORT}" = "yes" ]; then
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libva" PKG_DEPENDS_TARGET+=" libva"
PKG_NEED_UNPACK+=" $(get_pkg_directory libva)"
PKG_FFMPEG_VAAPI="--enable-vaapi" PKG_FFMPEG_VAAPI="--enable-vaapi"
else else
PKG_FFMPEG_VAAPI="--disable-vaapi" PKG_FFMPEG_VAAPI="--disable-vaapi"
fi fi
if [ "$VDPAU_SUPPORT" = "yes" -a "$DISPLAYSERVER" = "x11" ]; then if [ "${VDPAU_SUPPORT}" = "yes" -a "${DISPLAYSERVER}" = "x11" ]; then
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libvdpau" PKG_DEPENDS_TARGET+=" libvdpau"
PKG_NEED_UNPACK+=" $(get_pkg_directory libvdpau)"
PKG_FFMPEG_VDPAU="--enable-vdpau" PKG_FFMPEG_VDPAU="--enable-vdpau"
else else
PKG_FFMPEG_VDPAU="--disable-vdpau" PKG_FFMPEG_VDPAU="--disable-vdpau"
fi fi
if [ "$PROJECT" = "Rockchip" ]; then if [ "${PROJECT}" = "Rockchip" ]; then
PKG_DEPENDS_TARGET+=" rkmpp"
PKG_NEED_UNPACK+=" $(get_pkg_directory rkmpp)"
PKG_PATCH_DIRS+=" rkmpp" PKG_PATCH_DIRS+=" rkmpp"
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET rkmpp"
PKG_FFMPEG_RKMPP="--enable-rkmpp --enable-libdrm --enable-version3" PKG_FFMPEG_RKMPP="--enable-rkmpp --enable-libdrm --enable-version3"
else else
PKG_FFMPEG_RKMPP="--disable-rkmpp" PKG_FFMPEG_RKMPP="--disable-rkmpp"
fi fi
if [ "$PROJECT" = "Allwinner" ]; then if [ "${PROJECT}" = "Allwinner" ]; then
PKG_DEPENDS_TARGET+=" libdrm systemd" # systemd is needed for libudev
PKG_NEED_UNPACK+=" $(get_pkg_directory libdrm) $(get_pkg_directory systemd)"
PKG_PATCH_DIRS+=" v4l2-request-api" PKG_PATCH_DIRS+=" v4l2-request-api"
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libdrm systemd" # systemd is needed for libudev
PKG_FFMPEG_V4L2_REQUEST="--enable-v4l2-request --enable-libudev --enable-libdrm" PKG_FFMPEG_V4L2_REQUEST="--enable-v4l2-request --enable-libudev --enable-libdrm"
fi fi
@ -58,8 +63,9 @@ else
PKG_FFMPEG_DEBUG="--disable-debug --enable-stripping" PKG_FFMPEG_DEBUG="--disable-debug --enable-stripping"
fi fi
if [ "$KODIPLAYER_DRIVER" = "bcm2835-driver" ]; then if [ "${KODIPLAYER_DRIVER}" = "bcm2835-driver" ]; then
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET bcm2835-driver" PKG_DEPENDS_TARGET+=" bcm2835-driver"
PKG_NEED_UNPACK+=" $(get_pkg_directory bcm2835-driver)"
PKG_PATCH_DIRS+=" rpi-hevc" PKG_PATCH_DIRS+=" rpi-hevc"
fi fi
@ -69,20 +75,21 @@ else
PKG_FFMPEG_FPU="--disable-neon" PKG_FFMPEG_FPU="--disable-neon"
fi fi
if [ "$TARGET_ARCH" = "x86_64" ]; then if [ "${TARGET_ARCH}" = "x86_64" ]; then
PKG_DEPENDS_TARGET+=" nasm:host" PKG_DEPENDS_TARGET+=" nasm:host"
fi fi
if target_has_feature "(neon|sse)"; then if target_has_feature "(neon|sse)"; then
PKG_DEPENDS_TARGET+=" dav1d" PKG_DEPENDS_TARGET+=" dav1d"
PKG_NEED_UNPACK+=" $(get_pkg_directory dav1d)"
PKG_FFMPEG_AV1="--enable-libdav1d" PKG_FFMPEG_AV1="--enable-libdav1d"
fi fi
pre_configure_target() { pre_configure_target() {
cd $PKG_BUILD cd ${PKG_BUILD}
rm -rf .$TARGET_NAME rm -rf .${TARGET_NAME}
if [ "$KODIPLAYER_DRIVER" = "bcm2835-driver" ]; then if [ "${KODIPLAYER_DRIVER}" = "bcm2835-driver" ]; then
PKG_FFMPEG_LIBS="-lbcm_host -lvcos -lvchiq_arm -lmmal -lmmal_core -lmmal_util -lvcsm" PKG_FFMPEG_LIBS="-lbcm_host -lvcos -lvchiq_arm -lmmal -lmmal_core -lmmal_util -lvcsm"
PKG_FFMPEG_RPI="--enable-rpi" PKG_FFMPEG_RPI="--enable-rpi"
fi fi
@ -90,33 +97,33 @@ pre_configure_target() {
configure_target() { configure_target() {
./configure --prefix="/usr" \ ./configure --prefix="/usr" \
--cpu="$TARGET_CPU" \ --cpu="${TARGET_CPU}" \
--arch="$TARGET_ARCH" \ --arch="${TARGET_ARCH}" \
--enable-cross-compile \ --enable-cross-compile \
--cross-prefix="$TARGET_PREFIX" \ --cross-prefix="${TARGET_PREFIX}" \
--sysroot="$SYSROOT_PREFIX" \ --sysroot="${SYSROOT_PREFIX}" \
--sysinclude="$SYSROOT_PREFIX/usr/include" \ --sysinclude="${SYSROOT_PREFIX}/usr/include" \
--target-os="linux" \ --target-os="linux" \
--nm="$NM" \ --nm="${NM}" \
--ar="$AR" \ --ar="${AR}" \
--as="$CC" \ --as="${CC}" \
--cc="$CC" \ --cc="${CC}" \
--ld="$CC" \ --ld="${CC}" \
--host-cc="$HOST_CC" \ --host-cc="${HOST_CC}" \
--host-cflags="$HOST_CFLAGS" \ --host-cflags="${HOST_CFLAGS}" \
--host-ldflags="$HOST_LDFLAGS" \ --host-ldflags="${HOST_LDFLAGS}" \
--extra-cflags="$CFLAGS" \ --extra-cflags="${CFLAGS}" \
--extra-ldflags="$LDFLAGS" \ --extra-ldflags="${LDFLAGS}" \
--extra-libs="$PKG_FFMPEG_LIBS" \ --extra-libs="${PKG_FFMPEG_LIBS}" \
--disable-static \ --disable-static \
--enable-shared \ --enable-shared \
--enable-gpl \ --enable-gpl \
--disable-version3 \ --disable-version3 \
--enable-logging \ --enable-logging \
--disable-doc \ --disable-doc \
$PKG_FFMPEG_DEBUG \ ${PKG_FFMPEG_DEBUG} \
--enable-pic \ --enable-pic \
--pkg-config="$TOOLCHAIN/bin/pkg-config" \ --pkg-config="${TOOLCHAIN}/bin/pkg-config" \
--enable-optimizations \ --enable-optimizations \
--disable-extra-warnings \ --disable-extra-warnings \
--disable-programs \ --disable-programs \
@ -138,12 +145,12 @@ configure_target() {
--enable-mdct \ --enable-mdct \
--enable-rdft \ --enable-rdft \
--disable-crystalhd \ --disable-crystalhd \
$PKG_FFMPEG_V4L2 \ ${PKG_FFMPEG_V4L2} \
$PKG_FFMPEG_VAAPI \ ${PKG_FFMPEG_VAAPI} \
$PKG_FFMPEG_VDPAU \ ${PKG_FFMPEG_VDPAU} \
$PKG_FFMPEG_RPI \ ${PKG_FFMPEG_RPI} \
$PKG_FFMPEG_RKMPP \ ${PKG_FFMPEG_RKMPP} \
$PKG_FFMPEG_V4L2_REQUEST \ ${PKG_FFMPEG_V4L2_REQUEST} \
--enable-runtime-cpudetect \ --enable-runtime-cpudetect \
--disable-hardcoded-tables \ --disable-hardcoded-tables \
--disable-encoders \ --disable-encoders \
@ -180,7 +187,7 @@ configure_target() {
--disable-libmp3lame \ --disable-libmp3lame \
--disable-libopenjpeg \ --disable-libopenjpeg \
--disable-librtmp \ --disable-librtmp \
$PKG_FFMPEG_AV1 \ ${PKG_FFMPEG_AV1} \
--enable-libspeex \ --enable-libspeex \
--disable-libtheora \ --disable-libtheora \
--disable-libvo-amrwbenc \ --disable-libvo-amrwbenc \
@ -192,10 +199,10 @@ configure_target() {
--enable-zlib \ --enable-zlib \
--enable-asm \ --enable-asm \
--disable-altivec \ --disable-altivec \
$PKG_FFMPEG_FPU \ ${PKG_FFMPEG_FPU} \
--disable-symver --disable-symver
} }
post_makeinstall_target() { post_makeinstall_target() {
rm -rf $INSTALL/usr/share/ffmpeg/examples rm -rf ${INSTALL}/usr/share/ffmpeg/examples
} }