aboutsummaryrefslogtreecommitdiffstats
path: root/community/ffmpeg/APKBUILD
blob: 59c466859f1b1781972517a996e791411d3b3146 (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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# 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=4.1.1
pkgrel=2
pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix"
url="http://ffmpeg.org/"
arch="all"
license="GPL"
options="!check" # tests/data/hls-lists.append.m3u8 fails
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
makedepends="gnutls-dev lame-dev libvorbis-dev xvidcore-dev zlib-dev libvdpau-dev
	imlib2-dev x264-dev libtheora-dev coreutils bzip2-dev perl-dev libvpx-dev
	libvpx-dev sdl2-dev libxfixes-dev libva-dev alsa-lib-dev
	v4l-utils-dev yasm opus-dev x265-dev libass-dev"
checkdepends="rsync"
source="https://ffmpeg.org/releases/ffmpeg-$pkgver.tar.xz
	0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch
	"
builddir="$srcdir/$pkgname-$pkgver"

# secfixes:
#   4.0.2-r0:
#     - CVE-2018-13300
#     - CVE-2018-13301
#     - CVE-2018-13302
#     - CVE-2018-13303
#     - CVE-2018-13304
#     - CVE-2018-14394
#     - CVE-2018-14395
#   4.0.1-r0:
#     - CVE-2018-12458
#     - CVE-2018-12459
#     - CVE-2018-12460
#   4.0.0-r0:
#     - CVE-2018-6912
#     - CVE-2018-7751
#     - CVE-2018-7757
#   3.4.4-r0:
#     - CVE-2018-14395
#   3.4.3-r0:
#     - CVE-2018-7557
#     - CVE-2018-7751
#     - CVE-2018-10001
#     - CVE-2018-12458
#     - CVE-2018-13300
#     - CVE-2018-13302
#     - CVE-2018-14394
#   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" ;;
	esac

	cd "$builddir"
	./configure \
		--prefix=/usr \
		--enable-avresample \
		--enable-avfilter \
		--enable-gnutls \
		--enable-gpl \
		--enable-libass \
		--enable-libmp3lame \
		--enable-libvorbis \
		--enable-libvpx \
		--enable-libxvid \
		--enable-libx264 \
		--enable-libx265 \
		--enable-libtheora \
		--enable-libv4l2 \
		--enable-postproc \
		--enable-pic \
		--enable-pthreads \
		--enable-shared \
		--enable-libxcb \
		--disable-stripping \
		--disable-static \
		--disable-librtmp \
		--enable-vaapi \
		--enable-vdpau \
		--enable-libopus \
		$_asm $_dbg
	make
	${CC:-gcc} -o tools/qt-faststart $CFLAGS tools/qt-faststart.c
	make doc/ffmpeg.1 doc/ffplay.1
}

# https://ffmpeg.org/fate.html
check() {
	cd "$builddir"
	./configure \
		--samples=fate-suite/
	make fate-rsync
	make fate-list
	make fate
}

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="fe72680f1e4ca0b226199d1407803e1de11f00f5a88a23251182172cda4a7369cf1826c4ef86230bf60b0f9ff0d69382da5eeec26574a31eacd9935cf4eeb86f  ffmpeg-4.1.1.tar.xz
32652e18d4eb231a2e32ad1cacffdf33264aac9d459e0e2e6dd91484fced4e1ca5a62886057b1f0b4b1589c014bbe793d17c78adbaffec195f9a75733b5b18cb  0001-libavutil-clean-up-unused-FF_SYMVER-macro.patch"