diff options
-rw-r--r-- | audio/ecasound/README | 23 | ||||
-rw-r--r-- | audio/ecasound/ecasound.SlackBuild | 110 | ||||
-rw-r--r-- | audio/ecasound/ecasound.info | 10 | ||||
-rw-r--r-- | audio/ecasound/python_module_dir.diff | 24 | ||||
-rw-r--r-- | audio/ecasound/slack-desc | 19 |
5 files changed, 186 insertions, 0 deletions
diff --git a/audio/ecasound/README b/audio/ecasound/README new file mode 100644 index 0000000000000..9d4adc42d582a --- /dev/null +++ b/audio/ecasound/README @@ -0,0 +1,23 @@ +Ecasound is a software package designed for multitrack audio +processing. It can be used for simple tasks like audio playback, recording +and format conversions, as well as for multitrack effect processing, +mixing, recording and signal recycling. Ecasound supports a wide range of +audio inputs, outputs and effect algorithms. Effects and audio objects +can be combined in various ways, and their parameters can be controlled +by operator objects like oscillators and MIDI-CCs. A versatile console +mode user-interface is included in the package. + +Optional compile-time dependencies (auto-detected at build time): +- jack-audio-connection-kit (for realtime audio capture/playback) +- liblo (for OSC [Open Sound Control] support) + +Optional runtime dependencies: +- lame - required for mp3 output. +- TiMidity++ - required for MIDI .mid file input. +- libmikmod - required for tracker file support (such as .mod files). +- set_rlimits - used to run ecasound with realtime priority (but see the + jack-audio-connection-kit README for an alternative) + +Note: If you have cmt installed and you experience glibc double-free +errors when ecasound exits, upgrade your cmt package to 1.16-2_SBo or +higher. This is NOT a bug in ecasound. diff --git a/audio/ecasound/ecasound.SlackBuild b/audio/ecasound/ecasound.SlackBuild new file mode 100644 index 0000000000000..af687bf00c629 --- /dev/null +++ b/audio/ecasound/ecasound.SlackBuild @@ -0,0 +1,110 @@ +#!/bin/bash + +# Slackware build script for ecasound + +# Written by B. Watson (yalhcru@gmail.com) + +PRGNAM=ecasound +VERSION=${VERSION:-2.8.1} +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 + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Figure out the version number part of the python lib dir: +PYVER=$( python -c 'import sys; print "%d.%d" % sys.version_info[0:2]' ) + +# Hack configure script to work around a patch that was meant to work around +# broken debian systems (but what it really does is make configure ignore +# the --with-python-modules option; they get installed *outside the DESTDIR* +# too). Sigh. +patch -p1 < $CWD/python_module_dir.diff + +# --disable-static and --enable-shared are accepted, but ignored. +# This is deliberate: upstream doesn't want shared libs. See: +# http://www.eca.cx/ecasound-list/2002/10/0031.html + +CFLAGS="-g $SLKCFLAGS" \ +CXXFLAGS="-g $SLKCFLAGS" \ +./configure \ + --disable-arts \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --with-python-modules=/usr/lib$LIBDIRSUFFIX/python$PYVER \ + --enable-python-force-site-packages \ + --disable-all-static \ + --build=$ARCH-slackware-linux + +make +make install-strip DESTDIR=$PKG + +# Kind of a twist for a SlackBuild: bunch of identical man pages are getting +# installed, and we want them to be symlinks instead of copies. +cd $PKG/usr/man/man1 +toolsum="$( cat ecatools.1 | md5sum )" +for manpage in $( /bin/ls * | grep -v ecatools ); do + if [ "$toolsum" = "$( cat $manpage | md5sum )" ]; then + rm -f $manpage + ln -s ecatools.1 $manpage + fi +done +cd - + +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + AUTHORS BUGS COPYING* INSTALL README RELNOTES TODO \ + $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-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/audio/ecasound/ecasound.info b/audio/ecasound/ecasound.info new file mode 100644 index 0000000000000..849ec097dd92c --- /dev/null +++ b/audio/ecasound/ecasound.info @@ -0,0 +1,10 @@ +PRGNAM="ecasound" +VERSION="2.8.1" +HOMEPAGE="http://eca.cx/ecasound/" +DOWNLOAD="http://ecasound.seul.org/download/ecasound-2.8.1.tar.gz" +DOWNLOAD_x86_64="" +MD5SUM="d9ded0074a8eeb59dd507c248220d010" +MD5SUM_x86_64="" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" +APPROVED="dsomero" diff --git a/audio/ecasound/python_module_dir.diff b/audio/ecasound/python_module_dir.diff new file mode 100644 index 0000000000000..338cfcfddb39a --- /dev/null +++ b/audio/ecasound/python_module_dir.diff @@ -0,0 +1,24 @@ +diff -Naur ecasound-2.8.1/configure ecasound-2.8.1.patched//configure +--- ecasound-2.8.1/configure 2011-05-22 07:25:44.000000000 -0400 ++++ ecasound-2.8.1.patched//configure 2011-06-22 02:22:38.000000000 -0400 +@@ -6691,19 +6691,7 @@ + fi + + +- +-ECA_S_PYTHON_MODULES=NO +-for i in $pymoddirs; +-do +- for j in lib-dynload; +- do +- if test -r "$i/$j"; then +- ECA_S_PYTHON_MODULES=$i +- break 2 +- fi +- done +-done +- ++ECA_S_PYTHON_MODULES="$pymoddirs" + if test -d $ECA_S_PYTHON_MODULES/site-packages -o "X$python_force_site_packages" = "Xyes" + then + ECA_S_PYTHON_MODULES=$ECA_S_PYTHON_MODULES/site-packages diff --git a/audio/ecasound/slack-desc b/audio/ecasound/slack-desc new file mode 100644 index 0000000000000..3d7ea7d67998d --- /dev/null +++ b/audio/ecasound/slack-desc @@ -0,0 +1,19 @@ +# 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------------------------------------------------------| +ecasound: Ecasound (multitrack audio processing) +ecasound: +ecasound: Ecasound is a software package designed for multitrack audio +ecasound: processing. It can be used for simple tasks like audio playback, +ecasound: recording and format conversions, as well as for multitrack effect +ecasound: processing, mixing, recording and signal recycling. Ecasound supports +ecasound: a wide range of audio inputs, outputs and effect algorithms. Effects +ecasound: and audio objects can be combined in various ways, and their parameters +ecasound: can be controlled by operator objects like oscillators and MIDI-CCs. A +ecasound: versatile console mode user-interface is included in the package. +ecasound: |