aboutsummaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorMatteo Bernardini <ponce@slackbuilds.org>2012-10-02 22:02:33 +0200
committerdsomero <xgizzmo@slackbuilds.org>2012-10-07 09:15:25 -0400
commitfab03ccc55ef0a7ff2b6aa2bc12237ee9988bd57 (patch)
treee987877fd21c8d7a2fc9defb035764dedcc6f986 /multimedia
parentbcdbcc4f5ff08940590880d33c5f0516690bd2d3 (diff)
multimedia/mlt: Autodetect which swig bindings to build.
Added the optional dependencies libvdpau and jack-rack Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/mlt/README7
-rw-r--r--multimedia/mlt/mlt.SlackBuild76
2 files changed, 64 insertions, 19 deletions
diff --git a/multimedia/mlt/README b/multimedia/mlt/README
index b84bb0083989..20911bafcda7 100644
--- a/multimedia/mlt/README
+++ b/multimedia/mlt/README
@@ -5,7 +5,8 @@ of applications. The functionality of the system is provided via an
assortment of ready to use tools, XML authoring components, and an
extensible plug-in based API.
-Optional dependencies are ladspa_sdk, frei0r and swfdec.
+Optional dependencies are ladspa_sdk, frei0r, swfdec, libvdpau and
+jack-rack.
-The build script set by default PYTHON=yes for openshot, but it's
-optional.
+The build script autodetect language interpreters on your system
+and build the relative bindings.
diff --git a/multimedia/mlt/mlt.SlackBuild b/multimedia/mlt/mlt.SlackBuild
index 25b6715c329f..e0f49341c280 100644
--- a/multimedia/mlt/mlt.SlackBuild
+++ b/multimedia/mlt/mlt.SlackBuild
@@ -40,7 +40,7 @@
PRGNAM=mlt
VERSION=${VERSION:-0.8.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -56,14 +56,18 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# SWIG Languages:
-if [ "${JAVA:-no}" = "no" ]; then java=""; else java="java"; fi
-if [ "${LUA:-no}" = "no" ]; then lua=""; else lua="lua"; fi
-if [ "${PERL:-no}" = "no" ]; then perl=""; else perl="perl"; fi
-if [ "${PHP:-no}" = "no" ]; then php=""; else php="php"; fi
-if [ "${PYTHON:-yes}" = "yes" ]; then python="python"; else python=""; fi
-if [ "${RUBY:-no}" = "no" ]; then ruby=""; else ruby="ruby"; fi
-if [ "${TCL:-no}" = "no" ]; then tcl=""; else tcl="tcl"; fi
+# Autodetect which SWIG Languages bindings to build
+# according to what's installed on the system:
+if [ -f "$(which java)" ]; then java="java"; else java=""; fi
+if [ -f "$(which lua)" ]; then lua="lua"; else lua=""; fi
+if [ -f "$(which perl)" ]; then perl="perl"; else perl=""; fi
+if [ -f "$(which php)" ]; then php="php"; else php=""; fi
+if [ -f "$(which python)" ]; then python="python"; else python=""; fi
+if [ -f "$(which ruby)" ]; then ruby="ruby"; else ruby=""; fi
+if [ -h "$(which tclsh)" ]; then tcl="tcl"; else tcl=""; fi
+if [ -f "$(which csharp)" ]; then csharp="csharp"; else csharp=""; fi
+
+if pkg-config --exists vdpau ; then vdpau="--avformat-vdpau" ; else vdpau="" ; fi
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
@@ -103,24 +107,64 @@ CXXFLAGS="$SLKCFLAGS" \
--qimage-libdir=${QT4DIR}/qt/lib \
--qimage-includedir=${QT4DIR}/qt/include \
--enable-gpl \
- --avformat-swscale \
--luma-compress \
--enable-motion-est \
- --swig-languages="$java $lua $perl $php $python $ruby $tcl" \
+ $vdpau \
+ --swig-languages="$java $lua $perl $php $python $ruby $tcl $csharp" \
--build=$ARCH-slackware-linux
make clean
CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" make
make install DESTDIR=$PKG
-if [ $PYTHON = "yes" ]; then
+# Install built bindings
+if [ "$lua" ]; then
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/lua
+ install -D -m 0755 mlt.so $(pkg-config --variable INSTALL_CMOD lua)/mlt.so
+ install -D -m 0644 play.lua $PKG/usr/doc/$PRGNAM-$VERSION/play.lua
+ )
+fi
+if [ "$perl" ]; then
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/perl
+ install -D -m 0644 mlt.pm $PKG/usr/share/perl5/mlt.pm
+ install -D -m 0755 play.pl $PKG/usr/share/perl5/play.pl
+ install -D -m 0755 blib/arch/auto/mlt/mlt.so \
+ $PKG/usr/lib$LIBDIRSUFFIX/perl5/auto/mlt/mlt.so
+ install -D -m 0644 blib/arch/auto/mlt/mlt.bs \
+ $PKG/usr/lib$LIBDIRSUFFIX/perl5/auto/mlt/mlt.bs
+ )
+fi
+if [ "$php" ]; then
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/php
+ install -D -m 0755 mlt.so $PKG/usr/lib$LIBDIRSUFFIX/php/extensions/mlt.so
+ install -D -m 0644 play.php $PKG/usr/doc/$PRGNAM-$VERSION/play.php
+ )
+fi
+if [ "$python" ]; then
PYTHONSITEPKG=$(python -c "import sys, os; print os.path.join('/usr/lib${LIBDIRSUFFIX}', 'python%s' % sys.version[:3], 'site-packages')")
- mkdir -p $PKG/$PYTHONSITEPKG
- (
- cd $TMP/$PRGNAM-$VERSION/src/swig/python || true
- cp -a _mlt.so mlt.py mlt_wrap.o $PKG/$PYTHONSITEPKG || true
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/python
+ install -D -m 0755 _mlt.so $PKG/$PYTHONSITEPKG/_mlt.so
+ install -D -m 0755 mlt.py $PKG/$PYTHONSITEPKG/mlt.py
+ install -D -m 0755 play.py $PKG/usr/doc/$PRGNAM-$VERSION/play.py
+ )
+fi
+if [ "$ruby" ]; then
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/ruby
+ install -D -m 0755 mlt.so \
+ $PKG$(ruby -e 'print RbConfig::CONFIG["sitearchdir"]')/mlt.so
+ install -D -m 0755 play.rb $PKG/usr/doc/$PRGNAM-$VERSION/play.rb
+ install -D -m 0755 thumbs.rb $PKG/usr/doc/$PRGNAM-$VERSION/thumbs.rb
+ )
+fi
+if [ "$tcl" ]; then
+ ( cd $TMP/$PRGNAM-$VERSION/src/swig/tcl
+ . /usr/lib$LIBDIRSUFFIX/tclConfig.sh
+ install -D -m 0755 mlt.so \
+ $PKG/usr/lib$LIBDIRSUFFIX/tcl$TCL_MAJOR_VERSION/$TCL_VERSION/mlt.so
+ install -D -m 0755 play.tcl $PKG/usr/doc/$PRGNAM-$VERSION/play.tcl
)
fi
+# todo: java, csharp
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true