From d0577df5dd4dd7e9a377f90a9f036eb0d8f19df4 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Fri, 10 Mar 2017 16:38:02 -0500 Subject: libraries/gnonlin: New maintainer, add legacy gst0 support. Signed-off-by: B. Watson --- libraries/gnonlin/README | 6 +++ libraries/gnonlin/gnonlin.SlackBuild | 100 +++++++++++++++++++++++++++++++---- libraries/gnonlin/gnonlin.info | 10 ++-- libraries/gnonlin/slack-desc | 2 +- 4 files changed, 102 insertions(+), 16 deletions(-) diff --git a/libraries/gnonlin/README b/libraries/gnonlin/README index 86775a0d23..8178f41a1f 100644 --- a/libraries/gnonlin/README +++ b/libraries/gnonlin/README @@ -1,5 +1,11 @@ +gnonlin (a library for creating non-linear video editors) + Gnonlin is a set of GStreamer elements to ease the creation of non-linear multimedia editors. It works together with the GStreamer multimedia framework to give developers a powerfull and flexible set of tools for quickly assembling applications which needs to handle non-linear multimedia editing. Gnonlin is released under the LGPL. + +To build the gnonlin developer documentation, pass DOC=yes to the +script. This is only useful for developers who are planning to use +gnonlin in their own code. diff --git a/libraries/gnonlin/gnonlin.SlackBuild b/libraries/gnonlin/gnonlin.SlackBuild index 0decfffdd5..732ceef1d7 100644 --- a/libraries/gnonlin/gnonlin.SlackBuild +++ b/libraries/gnonlin/gnonlin.SlackBuild @@ -2,8 +2,11 @@ # Slackware build script for gnonlin +# Formerly maintained by: # Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org +# Now maintained by B. Watson (yalhcru@gmail.com) + # Copyright 2010-2011 Binh Nguyen # All rights reserved. # @@ -24,14 +27,23 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# 20170310 bkw: +# - take over maintenance +# - i486 => i586 +# - add option to build API docs (off by default) +# - include legacy gnonlin-0.10.17 plugins for gstreamer0, which is +# what's required for jokosher (modern gnonlin is gstreamer1 only). +# - BUILD=2 + PRGNAM=gnonlin VERSION=${VERSION:-1.4.0} -BUILD=${BUILD:-1} +OLDVER=${OLDVER:-0.10.17} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -42,8 +54,8 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -56,10 +68,42 @@ else LIBDIRSUFFIX="" fi -set -eu +set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT + +# First, the 'legacy' gstreamer0 stuff. +cd $TMP +rm -rf $PRGNAM-$OLDVER +tar xvf $CWD/$PRGNAM-$OLDVER.tar.bz2 +cd $PRGNAM-$OLDVER +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +./configure \ + "$DOCOPT" \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --localedir=/usr/share/locale \ + --disable-static \ + --enable-shared \ + --build=$ARCH-slackware-linux + +make #V=1 +make install-strip DESTDIR=$PKG + +# Now, the modern gnonlin gstreamer1 stuff. cd $TMP rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.xz @@ -73,6 +117,7 @@ find -L . \ CFLAGS="$SLKCFLAGS" \ ./configure \ + "$DOCOPT" \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --sysconfdir=/etc \ @@ -85,19 +130,52 @@ CFLAGS="$SLKCFLAGS" \ --enable-shared \ --build=$ARCH-slackware-linux -make V=1 -make install DESTDIR=$PKG +make #V=1 +make install-strip DESTDIR=$PKG -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 +DOC="${DOC:-no}" +if [ "$DOC" = "yes" ]; then + DOCOPT="--enable-gtk-doc" + WITHDOC="with" +else + WITHDOC="without" +fi + +CFLAGS="$SLKCFLAGS" \ +./configure \ + "$DOCOPT" \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --localedir=/usr/share/locale \ + --disable-static \ + --enable-shared \ + --build=$ARCH-slackware-linux + +make #V=1 +make install-strip DESTDIR=$PKG mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a AUTHORS COPYING* ChangeLog INSTALL NEWS README RELEASE \ + +# /usr/share/gtk-doc/html is the standard place for gtk-doc stuff, but +# let's symlink it into our docdir as well. +# The version number in the HTML doc path doesn't match VERSION, so: +if [ "$DOC" = "yes" ]; then + DOCVER="$( echo $PKG/usr/share/gtk-doc/html/$PRGNAM-* | sed 's,.*-,,' )" + ln -s ../../share/gtk-doc/html/$PRGNAM-$DOCVER \ + $PKG/usr/doc/$PRGNAM-$VERSION/html +fi + +cp -a AUTHORS COPYING ChangeLog NEWS README RELEASE \ $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 +sed "s,@WITHDOC@,$WITHDOC," $CWD/slack-desc > $PKG/install/slack-desc cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/libraries/gnonlin/gnonlin.info b/libraries/gnonlin/gnonlin.info index d08d175e2d..b56253d047 100644 --- a/libraries/gnonlin/gnonlin.info +++ b/libraries/gnonlin/gnonlin.info @@ -1,10 +1,12 @@ PRGNAM="gnonlin" VERSION="1.4.0" HOMEPAGE="http://gnonlin.sourceforge.net/" -DOWNLOAD="http://gstreamer.freedesktop.org/src/gnonlin/gnonlin-1.4.0.tar.xz" -MD5SUM="106899d1ee36e18f92bb838244d585eb" +DOWNLOAD="http://gstreamer.freedesktop.org/src/gnonlin/gnonlin-1.4.0.tar.xz \ + https://gstreamer.freedesktop.org/src/gnonlin/gnonlin-0.10.17.tar.bz2" +MD5SUM="106899d1ee36e18f92bb838244d585eb \ + 0c9e5a8f771b087fac9afa459399112e" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" -MAINTAINER="Ryan P.C. McQuen" -EMAIL="ryanpcmcquen@member.fsf.org" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" diff --git a/libraries/gnonlin/slack-desc b/libraries/gnonlin/slack-desc index f4fe74e1a6..901c4ab8d4 100644 --- a/libraries/gnonlin/slack-desc +++ b/libraries/gnonlin/slack-desc @@ -14,6 +14,6 @@ gnonlin: multimedia framework to give developers a powerfull and flexible set gnonlin: of tools for quickly assembling applications which needs to handle gnonlin: non-linear multimedia editing. Gnonlin is released under the LGPL. gnonlin: -gnonlin: http://gnonlin.sourceforge.net/ +gnonlin: This package built @WITHDOC@ API documentation. gnonlin: gnonlin: -- cgit v1.2.3