#!/bin/bash # # slackbuild script for cinelerra # by rafael at riseup.net # if [ -s "slack-required" ]; then echo Recomended and required packages for building cinelerra are: cat slack-required | sed -e 's/^/\t/' if [ "$INTERACT" != "no" ]; then echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. read crap # else # echo Sleeping 3 seconds... # sleep 3 fi fi CWD="`pwd`" if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi # default settings PACKAGE="cinelerra" ARCH=${ARCH:=i586} VERSION=${VERSION:=svn} BUILD=${BUILD:=1rd} SRC_DIR=${SRC:=$CWD} TMP=${TMP:=/tmp} REPOS=${REPOS:=$TMP} # ------- error codes for createpkg -------------- ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; if [ "$ARCH" == "x86_64" ]; then LIBDIR=/usr/lib64 else LIBDIR=/usr/lib fi SRC_DIR="$SRC_DIR/$PACKAGE" mkdir -p $SRC_DIR TMP=$TMP/$PACKAGE rm -rf $TMP mkdir -p $TMP if [ -d "$SRC_DIR/cinelerra" ]; then cd $SRC_DIR/cinelerra svn update || exit $ERROR_VCS else cd $SRC_DIR svn checkout svn://svn.skolelinux.org/cinelerra/trunk/hvirtual || exit $EROR_VCS mv hvirtual cinelerra fi cd $SRC_DIR/cinelerra VERSION=r"`svnversion cinelerra`" if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH fi if [ "$ARCH" == "i586" ] || [ "$ARCH" == "i686" ]; then EXTRA_ACFLAGS=" --enable-mmx" fi if [ "$HAVE_ALTIVEC" == "true" ]; then EXTRA_ACFLAGS=" --enable-altivec" if [ -f "$CWD/$PACKAGE-altivec.diff" ]; then patch -p0 < $CWD/$PACKAGE-altivec.diff || exit $ERROR_PATCH fi fi ./autogen.sh || exit $ERROR_CONF ./configure --prefix=/usr --libdir=$LIBDIR $EXTRA_ACFLAGS || exit $ERROR_CONF make || exit $ERROR_MAKE make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL CWD="`pwd`" cd $TMP/package-$PACKAGE find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null mkdir install cat << EOF > install/slack-desc # HOW TO EDIT THIS FILE: # The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' # on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler-----------------------------------------------------| cinelerra: cinelerra (cinelerra is powerfull Non Linear Video Editor) cinelerra: cinelerra: Heroine Virtual Ltd. presents an advanced content creation system cinelerra: for Linux. Cinelerra takes what normally is a boring server - studied cinelerra: in computer science classrooms, hidden in back offices - and turns it cinelerra: into a 50,000 watt flamethrower of multimedia editing. cinelerra: cinelerra: This version is the cvs.cinelerra.org branch (in fact, a fork). cinelerra: cinelerra: http://cvs.cinelerra.org/ cinelerra: EOF # docs mkdir -p usr/doc/$PACKAGE-$VERSION for file in AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README TODO;do cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ done makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG if [ "$CLEANUP" == "yes" ]; then rm -rf $TMP fi