diff options
Diffstat (limited to 'system/ffmpeg')
-rw-r--r-- | system/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch | 55 | ||||
-rw-r--r-- | system/ffmpeg/APKBUILD | 104 |
2 files changed, 159 insertions, 0 deletions
diff --git a/system/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch b/system/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch new file mode 100644 index 000000000..93e3ac995 --- /dev/null +++ b/system/ffmpeg/0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch @@ -0,0 +1,55 @@ +From ab11be0becb90542f10d5713659b559842c53af2 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Tue, 29 Mar 2016 15:15:17 +0200 +Subject: [PATCH] libavutil: clean up unused FF_SYMVER macro + +There is nothing using it since commit d63443b9 (lavc: drop the +av_fast_{re,m}alloc compatibility wrappers). + +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + libavutil/internal.h | 28 ---------------------------- + 1 file changed, 28 deletions(-) + +diff --git a/libavutil/internal.h b/libavutil/internal.h +index 61784b5..69d63d5 100644 +--- a/libavutil/internal.h ++++ b/libavutil/internal.h +@@ -177,34 +177,6 @@ + #endif + + /** +- * Define a function with only the non-default version specified. +- * +- * On systems with ELF shared libraries, all symbols exported from +- * FFmpeg libraries are tagged with the name and major version of the +- * library to which they belong. If a function is moved from one +- * library to another, a wrapper must be retained in the original +- * location to preserve binary compatibility. +- * +- * Functions defined with this macro will never be used to resolve +- * symbols by the build-time linker. +- * +- * @param type return type of function +- * @param name name of function +- * @param args argument list of function +- * @param ver version tag to assign function +- */ +-#if HAVE_SYMVER_ASM_LABEL +-# define FF_SYMVER(type, name, args, ver) \ +- type ff_##name args __asm__ (EXTERN_PREFIX #name "@" ver); \ +- type ff_##name args +-#elif HAVE_SYMVER_GNU_ASM +-# define FF_SYMVER(type, name, args, ver) \ +- __asm__ (".symver ff_" #name "," EXTERN_PREFIX #name "@" ver); \ +- type ff_##name args; \ +- type ff_##name args +-#endif +- +-/** + * Return NULL if a threading library has not been enabled. + * Used to disable threading functions in AVCodec definitions + * when not needed. +-- +2.7.4 + diff --git a/system/ffmpeg/APKBUILD b/system/ffmpeg/APKBUILD new file mode 100644 index 000000000..a963e33f8 --- /dev/null +++ b/system/ffmpeg/APKBUILD @@ -0,0 +1,104 @@ +# Contributor: Sergei Lukin <sergej.lukin@gmail.com> +# Contributor: Łukasz Jendrysik <scadu@yandex.com> +# Contributor: Jakub Skrzypnik <j.skrzypnik@openmailbox.org> +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=ffmpeg +pkgver=3.4 +pkgrel=1 +pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix" +url="http://ffmpeg.org/" +arch="all" +license="GPL" +options="!check textrels" # Test suite requires proper licensing headers on all files, + # which upstream does not provide. +subpackages="$pkgname-dev $pkgname-doc $pkgname-libs" +makedepends="gnutls-dev lame-dev libvorbis-dev xvidcore-dev zlib-dev libvdpau-dev + imlib2-dev libtheora-dev coreutils bzip2-dev perl-dev libvpx-dev + pulseaudio-dev sdl2-dev libxfixes-dev libva-dev alsa-lib-dev rtmpdump-dev + v4l-utils-dev yasm opus-dev x265-dev xz-dev freetype-dev speex-dev + ladspa-dev libcdio-dev libcdio-paranoia-dev wavpack-dev libwebp-dev" +source="http://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz + 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch + " +builddir="$srcdir/$pkgname-$pkgver" + +# secfixes: +# 3.3.4-r0: +# - CVE-2017-14054 +# - CVE-2017-14055 +# - CVE-2017-14056 +# - CVE-2017-14057 +# - CVE-2017-14058 +# - CVE-2017-14059 +# - CVE-2017-14169 +# - CVE-2017-14170 +# - CVE-2017-14171 +# - CVE-2017-14222 +# - CVE-2017-14223 +# - CVE-2017-14225 + +build() { + local _dbg="--disable-debug" + local _asm="" + [ -n "$DEBUG" ] && _dbg="--enable-debug" + + case "$CARCH" in + x86 | arm*) _asm="--disable-asm" ;; + ppc64) _asm="--cpu=G5" ;; + esac + + cd "$builddir" + ./configure \ + --prefix=/usr \ + --enable-avresample \ + --enable-avfilter \ + --enable-gnutls \ + --enable-gpl \ + --enable-libmp3lame \ + --enable-librtmp \ + --enable-libvorbis \ + --enable-libvpx \ + --enable-libxvid \ + --enable-libx265 \ + --enable-libtheora \ + --enable-libv4l2 \ + --enable-postproc \ + --enable-pic \ + --enable-pthreads \ + --enable-shared \ + --enable-libxcb \ + --disable-stripping \ + --disable-static \ + --enable-vaapi \ + --enable-vdpau \ + --enable-libopus \ + --enable-libcdio \ + --enable-ladspa \ + --enable-lzma \ + --enable-libspeex \ + --enable-libfreetype \ + --enable-libwavpack \ + --enable-libwebp \ + --enable-libpulse \ + $_asm $_dbg + make + ${CC:-gcc} -o tools/qt-faststart $CFLAGS tools/qt-faststart.c + make doc/ffmpeg.1 doc/ffplay.1 doc/ffserver.1 +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install install-man + install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart" +# strip --strip-debug "$pkgdir"/usr/lib/*.a +} + +libs() { + pkgdesc="Libraries for ffmpeg" + replaces="ffmpeg" + mkdir -p "$subpkgdir"/usr + mv "$pkgdir"/usr/lib "$subpkgdir"/usr +} + +sha512sums="357445f0152848d43f8a22f1078825bc44adacff9194e12cc78e8b5edac8e826bbdf73dc8b37e0f2a3036125b76b6b9190153760c761e63ebd2452a39e39536f ffmpeg-3.4.tar.xz +32652e18d4eb231a2e32ad1cacffdf33264aac9d459e0e2e6dd91484fced4e1ca5a62886057b1f0b4b1589c014bbe793d17c78adbaffec195f9a75733b5b18cb 0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch" |