diff --git a/packages/ffmpeg/build.sh b/packages/ffmpeg/build.sh index c40b97d302..daed651dff 100644 --- a/packages/ffmpeg/build.sh +++ b/packages/ffmpeg/build.sh @@ -3,15 +3,32 @@ TERMUX_PKG_DESCRIPTION="Tools and libraries to manipulate a wide range of multim TERMUX_PKG_LICENSE="GPL-3.0" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_VERSION=5.1.2 -TERMUX_PKG_REVISION=3 +TERMUX_PKG_REVISION=4 TERMUX_PKG_SRCURL=https://www.ffmpeg.org/releases/ffmpeg-${TERMUX_PKG_VERSION}.tar.xz TERMUX_PKG_SHA256=619e706d662c8420859832ddc259cd4d4096a48a2ce1eefd052db9e440eef3dc -TERMUX_PKG_DEPENDS="freetype, game-music-emu, libaom, libandroid-glob, libass, libbluray, libbz2, libdav1d, libgnutls, libiconv, liblzma, libmp3lame, libopus, librav1e, libsoxr, libtheora, libvorbis, libvpx, libvidstab, libwebp, libx264, libx265, libxml2, littlecms, ocl-icd, xvidcore, zlib" +TERMUX_PKG_DEPENDS="freetype, game-music-emu, libaom, libandroid-glob, libass, libbluray, libbz2, libdav1d, libgnutls, libiconv, liblzma, libmp3lame, libopus, librav1e, libsoxr, libtheora, libvorbis, libvpx, libvidstab, libwebp, libx264, libx265, libxml2, libzimg, littlecms, ocl-icd, xvidcore, zlib" TERMUX_PKG_BUILD_DEPENDS="opencl-headers" TERMUX_PKG_CONFLICTS="libav" TERMUX_PKG_BREAKS="ffmpeg-dev" TERMUX_PKG_REPLACES="ffmpeg-dev" +termux_step_post_get_source() { + # Do not forget to bump revision of reverse dependencies and rebuild them + # after SOVERSION is changed. + local _SOVER_avutil=57 + local _SOVER_avcodec=59 + local _SOVER_avformat=59 + + local f + for f in util codec format; do + local v=$(sh ffbuild/libversion.sh av${f} \ + libav${f}/version.h libav${f}/version_major.h \ + | sed -En 's/^libav'"${f}"'_VERSION_MAJOR=([0-9]+)$/\1/p') + if [ ! "${v}" ] || [ "$(eval echo \$_SOVER_av${f})" != "${v}" ]; then + termux_error_exit "SOVERSION guard check failed for libav${f}.so." + fi + done +} termux_step_configure() { cd $TERMUX_PKG_BUILDDIR @@ -56,21 +73,22 @@ termux_step_configure() { --enable-libass \ --enable-libbluray \ --enable-libdav1d \ + --enable-libfreetype \ --enable-libgme \ --enable-libmp3lame \ - --enable-libfreetype \ - --enable-libvorbis \ --enable-libopus \ --enable-librav1e \ --enable-libsoxr \ - --enable-libx264 \ - --enable-libx265 \ - --enable-libxvid \ + --enable-libtheora \ --enable-libvidstab \ + --enable-libvorbis \ --enable-libvpx \ --enable-libwebp \ + --enable-libx264 \ + --enable-libx265 \ --enable-libxml2 \ - --enable-libtheora \ + --enable-libxvid \ + --enable-libzimg \ --enable-opencl \ --enable-shared \ --prefix="$TERMUX_PREFIX" \