summaryrefslogtreecommitdiffstats
path: root/multimedia/ffmpeg010/ffmpeg010.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/ffmpeg010/ffmpeg010.SlackBuild')
-rw-r--r--multimedia/ffmpeg010/ffmpeg010.SlackBuild173
1 files changed, 173 insertions, 0 deletions
diff --git a/multimedia/ffmpeg010/ffmpeg010.SlackBuild b/multimedia/ffmpeg010/ffmpeg010.SlackBuild
new file mode 100644
index 0000000000..f0cf50dc1b
--- /dev/null
+++ b/multimedia/ffmpeg010/ffmpeg010.SlackBuild
@@ -0,0 +1,173 @@
+#!/bin/sh
+
+# Slackware build script for ffmpeg, 0.10.x branch
+
+# Written by core (eroc@linuxmail.org)
+# Modified by Robby Workman <rworkman@slackbuilds.org>
+# Modified by Heinz Wiesinger <pprkut@liwjatan.org>
+# Modified by Matteo Bernardini <ponce@slackbuilds.org>
+
+PRGNAM=ffmpeg010
+SRCNAM=ffmpeg
+VERSION=${VERSION:-0.10.9}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+# environment sanity checks
+TEXI2HTML=$(which texi2html 2>/dev/null)
+
+if [ "$TEXI2HTML" = "" ]; then
+ echo "Could not find texi2html! Please make sure to have tetex or texlive installed"
+ echo "and that texi2html is in PATH."
+ exit 1
+fi
+
+# --enable-runtime-cpu is meant for libswscale only and
+# has no influence on the other parts of ffmpeg so there's
+# not really a point in bothering
+PKGARCH=$(uname -m)_custom
+
+# Configure ffmpeg features not autodetected by default
+# Unfortunately ffmpeg's configure doesn't support --enable-feature=yes
+# syntax, so we have to do it the complicated way :/
+
+libcelt="" ; [ "${CELT:-no}" != "no" ] && libcelt="--enable-libcelt"
+libdc1394="" ; [ "${DC1394:-no}" != "no" ] && libdc1394="--enable-libdc1394"
+libfrei0r="" ; [ "${FREI0R:-no}" != "no" ] && libfrei0r="--enable-frei0r"
+libgsm="" ; [ "${GSM:-no}" != "no" ] && libgsm="--enable-libgsm"
+librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
+dirac_fast="" ; [ "${SCHROEDINGER:-no}" != "no" ] && dirac_fast="--enable-libschroedinger"
+libspeex="" ; [ "${SPEEX:-no}" != "no" ] && libspeex="--enable-libspeex"
+libvpx="" ; [ "${VPX:-no}" != "no" ] && libvpx="--enable-libvpx"
+libxvid="" ; [ "${XVID:-no}" != "no" ] && libxvid="--enable-libxvid"
+libbluray="" ; [ "${BLURAY:-no}" != "no" ] && libbluray="--enable-libbluray"
+libass="" ; [ "${ASS:-no}" != "no" ] && libass="--enable-libass"
+libopenal="" ; [ "${OPENAL:-no}" != "no" ] && libopenal="--enable-openal"
+
+opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
+ opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
+libfaac="" ; [ "${FAAC:-no}" != "no" ] && \
+ { libfaac="--enable-libfaac" ; non_free="--enable-nonfree" ; }
+ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
+ { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
+openjpeg="" ; [ "${JP2:-no}" != "no" ] && \
+ { openjpeg="--enable-libopenjpeg" ; \
+ SLKCFLAGS="$SLKCFLAGS -I/usr/include/openjpeg-1.5" ; }
+
+mp3lame="--enable-libmp3lame" ; [ "${LAME:-yes}" != "yes" ] && mp3lame=""
+libx264="--enable-libx264" ; [ "${X264:-yes}" != "yes" ] && libx264=""
+
+# opencv support is currently broken: http://code.opencv.org/issues/1925
+#libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
+cd $SRCNAM-$VERSION
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --incdir=/usr/include/$PRGNAM \
+ --libdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \
+ --shlibdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \
+ --datadir=/usr/share/$PRGNAM \
+ --progs-suffix=010 \
+ --mandir=/usr/man \
+ --disable-debug \
+ --enable-shared \
+ --disable-static \
+ --enable-pthreads \
+ --enable-libtheora \
+ --enable-libvorbis \
+ --enable-gpl \
+ --enable-version3 \
+ --enable-postproc \
+ --enable-swscale \
+ --enable-x11grab \
+ --enable-avfilter \
+ --enable-gnutls \
+ --enable-libcdio \
+ --arch=$ARCH \
+ $openjpeg \
+ $libdc1394 \
+ $mp3lame \
+ $libfaac \
+ $libxvid \
+ $libx264 \
+ $libspeex \
+ $dirac_fast \
+ $non_free \
+ $libgsm \
+ $libvpx \
+ $librtmp \
+ $opencore_amr \
+ $libfrei0r \
+ $libcelt \
+ $libbluray \
+ $libass \
+ $libopenal \
+ $ssl
+
+make
+make install DESTDIR=$PKG
+make install-man DESTDIR=$PKG
+
+mv $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/pkgconfig $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
+( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
+ for i in avfilter avcodec swresample avutil avdevice postproc avformat swscale; do
+ mv lib${i}.pc lib${i}010.pc
+ done )
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+( cd $PKG/usr/man/man1
+ for i in play mpeg server probe; do mv ff${i}.1 ff${i}010.1; done )
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Changelog COPYING* CREDITS INSTALL LICENSE MAINTAINERS README RELEASE \
+ VERSION doc/RELEASE_NOTES doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a doc/*.html $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$PKGARCH-$BUILD$TAG.${PKGTYPE:-tgz}