|
|
|
name=ffmpeg
|
|
|
|
version=3.2.4
|
|
|
|
update_url='https://ffmpeg.org/download.html'
|
|
|
|
|
|
|
|
# Use: sed -n '/EXTERNAL_LIBRARY_LIST="/,/"/p' configure | head -n -1 | tail -n +2 | xargs
|
|
|
|
# Last update: 3.2.4
|
|
|
|
# NOTE: Not everything has been tested.
|
|
|
|
optional_libraries='avisynth bzlib chromaprint crystalhd decklink frei0r gcrypt gmp gnutls iconv jni ladspa libass libbluray libbs2b libcaca libcdio libcelt libdc1394 libebur128 libfdk_aac libflite libfontconfig libfreetype libfribidi libgme libgsm libiec61883 libilbc libkvazaar libmodplug libmp3lame libnut libopencore_amrnb libopencore_amrwb libopencv libopenh264 libopenjpeg libopenmpt libopus libpulse librtmp librubberband libschroedinger libshine libsmbclient libsnappy libsoxr libspeex libssh libtesseract libtheora libtwolame libv4l2 libvidstab libvo_amrwbenc libvorbis libvpx libwavpack libwebp libx264 libx265 libxavs libxcb libxcb_shm libxcb_shape libxcb_xfixes libxvid libzimg libzmq libzvbi lzma mediacodec netcdf openal opencl opengl openssl schannel sdl sdl2 securetransport videotoolbox x11grab xlib zlib'
|
|
|
|
for opt in $optional_libraries; do
|
|
|
|
# Rename some options
|
|
|
|
case "$opt" in
|
|
|
|
libpulse) opt=pulseaudio ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
define_option "!$opt: Enable support for $opt"
|
|
|
|
done
|
|
|
|
|
|
|
|
dlextract "http://ffmpeg.org/releases/$name-$version.tar.bz2" \
|
|
|
|
'd3ebaacfa36c6e8145373785824265b4'
|
|
|
|
header_end
|
|
|
|
|
|
|
|
cd "$name-$version"
|
|
|
|
|
|
|
|
optional=""
|
|
|
|
for opt in $optional_libraries; do
|
|
|
|
flag="$opt"
|
|
|
|
|
|
|
|
# Rename some options
|
|
|
|
case "$opt" in
|
|
|
|
libpulse) opt=pulseaudio ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
option $opt && optional="$optional --enable-$flag"
|
|
|
|
done
|
|
|
|
|
|
|
|
# ffmpeg uses it's own configure script with arguably differing options to the
|
|
|
|
# regular GNU autotools configure scripts.
|
|
|
|
# Not using compile_configure due to that.
|
|
|
|
./configure --disable-static --enable-shared \
|
|
|
|
--prefix="/$dir_prefix" \
|
|
|
|
--bindir="/$dir_prefix/$dir_bindir" \
|
|
|
|
--datadir="/$dir_prefix/$dir_datadir/$name" \
|
|
|
|
--docdir="/$dir_prefix/$dir_docdir/$name" \
|
|
|
|
--libdir="/$dir_prefix/$dir_libdir" \
|
|
|
|
--incdir="/$dir_prefix/$dir_includedir" \
|
|
|
|
--mandir="/$dir_prefix/$dir_mandir" \
|
|
|
|
$optional
|
|
|
|
|
|
|
|
make
|
|
|
|
make DESTDIR="$dir_install" install
|
|
|
|
|
|
|
|
# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab:
|