archrelease: copy trunk to extra-x86_64
[arch-packages.git] / ffmpeg4.4 / repos / extra-x86_64 / PKGBUILD
blobe0c1f804583158626b674fe9087ee165bcfbbfdf
1 # Maintainer: Maxime Gauduin <alucryd@archlinux.org>
2 # Contributor: BartÅ‚omiej Piotrowski <bpiotrowski@archlinux.org>
3 # Contributor: Ionut Biru <ibiru@archlinux.org>
4 # Contributor: Tom Newsom <Jeepster@gmx.co.uk>
5 # Contributor: Paul Mattal <paul@archlinux.org>
7 pkgname=ffmpeg4.4
8 pkgver=4.4.3
9 pkgrel=2
10 pkgdesc='Complete solution to record, convert and stream audio and video'
11 arch=(x86_64)
12 url=https://ffmpeg.org/
13 license=(GPL3)
14 depends=(
15   alsa-lib
16   aom
17   bzip2
18   fontconfig
19   fribidi
20   gmp
21   gnutls
22   gsm
23   jack
24   lame
25   libass.so
26   libavc1394
27   libbluray.so
28   libdav1d.so
29   libdrm
30   libfreetype.so
31   libiec61883
32   libmfx
33   libmodplug
34   libpulse
35   librav1e.so
36   libraw1394
37   librsvg-2.so
38   libsoxr
39   libssh
40   libtheora
41   libva.so
42   libva-drm.so
43   libva-x11.so
44   libvdpau
45   libvidstab.so
46   libvorbisenc.so
47   libvorbis.so
48   libvpx.so
49   libwebp
50   libx11
51   libx264.so
52   libx265.so
53   libxcb
54   libxext
55   libxml2
56   libxv
57   libxvidcore.so
58   libzimg.so
59   opencore-amr
60   openjpeg2
61   opus
62   sdl2
63   speex
64   srt
65   svt-av1
66   v4l-utils
67   xz
68   zlib
70 makedepends=(
71   amf-headers
72   avisynthplus
73   clang
74   ffnvcodec-headers
75   git
76   ladspa
77   nasm
79 optdepends=(
80   'avisynthplus: AviSynthPlus support'
81   'intel-media-sdk: Intel QuickSync support'
82   'ladspa: LADSPA filters'
83   'nvidia-utils: Nvidia NVDEC/NVENC support'
85 provides=(
86   libavcodec.so
87   libavdevice.so
88   libavfilter.so
89   libavformat.so
90   libavutil.so
91   libpostproc.so
92   libswresample.so
93   libswscale.so
95 options=(
96   debug
98 _tag=4bc4cafaef8a55462138d7b6f7579c1522de26dc
99 source=(git+https://git.ffmpeg.org/ffmpeg.git#tag=${_tag})
100 b2sums=(SKIP)
102 pkgver() {
103   cd ffmpeg
104   git describe --tags | sed 's/^n//'
107 prepare() {
108   cd ffmpeg
109   git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b # fix nvenc on older gpus
112 build() {
113   cd ffmpeg
115   ./configure \
116     --prefix=/usr \
117     --incdir=/usr/include/ffmpeg4.4 \
118     --libdir=/usr/lib/ffmpeg4.4 \
119     --disable-debug \
120     --disable-doc \
121     --disable-programs \
122     --disable-static \
123     --disable-stripping \
124     --enable-amf \
125     --enable-avisynth \
126     --enable-cuda-llvm \
127     --enable-lto \
128     --enable-fontconfig \
129     --enable-gmp \
130     --enable-gnutls \
131     --enable-gpl \
132     --enable-ladspa \
133     --enable-libaom \
134     --enable-libass \
135     --enable-libbluray \
136     --enable-libdav1d \
137     --enable-libdrm \
138     --enable-libfreetype \
139     --enable-libfribidi \
140     --enable-libgsm \
141     --enable-libiec61883 \
142     --enable-libjack \
143     --enable-libmfx \
144     --enable-libmodplug \
145     --enable-libmp3lame \
146     --enable-libopencore_amrnb \
147     --enable-libopencore_amrwb \
148     --enable-libopenjpeg \
149     --enable-libopus \
150     --enable-libpulse \
151     --enable-librav1e \
152     --enable-librsvg \
153     --enable-libsoxr \
154     --enable-libspeex \
155     --enable-libsrt \
156     --enable-libssh \
157     --enable-libsvtav1 \
158     --enable-libtheora \
159     --enable-libv4l2 \
160     --enable-libvidstab \
161     --enable-libvorbis \
162     --enable-libvpx \
163     --enable-libwebp \
164     --enable-libx264 \
165     --enable-libx265 \
166     --enable-libxcb \
167     --enable-libxml2 \
168     --enable-libxvid \
169     --enable-libzimg \
170     --enable-nvdec \
171     --enable-nvenc \
172     --enable-shared \
173     --enable-version3
175   make
176   make tools/qt-faststart
177   make doc/ff{mpeg,play}.1
180 package() {
181   make DESTDIR="${pkgdir}" -C ffmpeg install
183   cd "${pkgdir}"
185   # Move libs to /usr/lib, except the .so symlinks
186   local f
187   for f in usr/lib/ffmpeg4.4/*; do
188     if [[ $f == *.so ]]; then
189       ln -srf -- usr/lib/"$(readlink "$f")" "$f"
190     elif [[ ! -d $f ]]; then
191       mv "$f" usr/lib
192     fi
193   done
195   rm -r usr/share
198 # vim:set sw=2 et: