Browse Source

ap/timidity: Added.

slackware-14.2
Damien Goutte-Gattat 13 years ago
parent
commit
4731f50a97
  1. 1
      ap/timidity/TiMidity++-2.13.0.tar.gz.sha1
  2. 12
      ap/timidity/doinst.sh
  3. 1
      ap/timidity/freepats-20060219.tar.bz2.sha1
  4. 37
      ap/timidity/rc.timidity
  5. 12
      ap/timidity/slack-desc
  6. 138
      ap/timidity/timidity.SlackBuild
  7. 2
      ap/timidity/timidity.cfg

1
ap/timidity/TiMidity++-2.13.0.tar.gz.sha1

@ -0,0 +1 @@
fc3687c2db8fe3d7c26def7e96171f59ac44bce3 TiMidity++-2.13.0.tar.gz

12
ap/timidity/doinst.sh

@ -0,0 +1,12 @@
#!/bin/sh
config()
{
NEW="$1"
OLD="`dirname $NEW`/`basename $NEW .new`"
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then
rm $NEW
fi
}
config /etc/timidity.cfg.new

1
ap/timidity/freepats-20060219.tar.bz2.sha1

@ -0,0 +1 @@
a8940516a719460954bb45bb27a15a22fe57de61 freepats-20060219.tar.bz2

37
ap/timidity/rc.timidity

@ -0,0 +1,37 @@
#!/bin/sh
# Start/stop/restart TiMidity++ in daemon mode
timidity_start()
{
timidity -iAD -Os
}
timidity_stop()
{
killall timidity
}
timidity_restart()
{
timidity_stop
sleep 1
timidity_start
}
case $1 in
start)
timidity_start
;;
stop)
timidity_stop
;;
restart)
timidity_restart
;;
*)
echo "usage: $0 start|stop|restart"
;;
esac

12
ap/timidity/slack-desc

@ -0,0 +1,12 @@
|-----handy-ruler------------------------------------------------------|
timidity: TiMidity++ (MIDI-to-WAVE converter and player)
timidity:
timidity: TiMidity++ is a software synthesizer. It can play MIDI files by
timidity: converting them into PCM waveform data; give it a MIDI data along
timidity: with digital instruments data files, then it synthesizes them in
timidity: real-time, and plays. It can not only play sounds, but also can save
timidity: the generated waveforms into hard disks as various audio file
timidity: formats.
timidity:
timidity: This package includes the patch set from the freepats project.
timidity:

138
ap/timidity/timidity.SlackBuild

@ -0,0 +1,138 @@
#!/bin/bash
# Build script for Slackware
# Damien Goutte-Gattat "gouttegd" < damien.goutte-gattat at e.ujf-grenoble.fr >
#
# Redistribution and use of this script, with or without modifications, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# Latest TiMidity++ sourcecode is available at:
# http://timidity.sourceforge.net/
#
# Recommends: ap/jack-audio-connection-kit
# Source package infos
NAMESRC=${NAMESRC:-TiMidity++}
VERSION=${VERSION:-2.13.0}
ARCHIVE=${ARCHIVE:-$NAMESRC-$VERSION.tar.gz}
WGET=${WGET:-http://kent.dl.sourceforge.net/sourceforge/timidity/$ARCHIVE}
PATCHSET=${PATCHSET:-freepats-20060219.tar.bz2}
PATCHSET_WGET=${PATCHSET_WGET:-http://freepats.opensrc.org/$PATCHSET}
# Built package infos
NAMETGZ=${NAMETGZ:-timidity}
BUILD=${BUILD:-1GGD}
ARCH=${ARCH:-i486}
TARGET=${TARGET:-i486}
# Directories
TMP=${TMP:-/tmp}
OUT=${OUT:-$TMP/build}
PKG=${PKG:-$OUT/$NAMETGZ}
CWD=$(pwd)
set -e # Quit if a command returns non-zero
# Sanity checks
if [ $UID -eq 0 ]; then
echo "You should NOT run this script as ROOT!"
exit 1
fi
if [ ! -d $TMP ]; then
echo "$TMP does not exist or is not a directory!"
exit 1
fi
# Compilation flags
case "$ARCH" in
i?86)
CPUOPT="-O2 -march=$ARCH -mtune=i686"
;;
*)
CPUOPT="-O2"
;;
esac
# Get and verify the source archive
if [ ! -r $ARCHIVE ]; then
wget "$WGET"
fi
if [ ! -r $PATCHSET ]; then
wget "$PATCHSET_WGET"
fi
sha1sum -c $ARCHIVE.sha1 $PATCHSET.sha1
NAME=$(tar ft $ARCHIVE | head -n 1 | cut -d / -f 1)
# Compile
cd $TMP
echo "Building $ARCHIVE..."
tar xf $CWD/$ARCHIVE
cd $NAME
sed -i 's|/\* \(#define CONFIG_FILE "/etc/timidity.cfg"\) \*/|\1|' \
timidity/timidity.h
CFLAGS=$CPUOPT \
CXXFLAGS=$CPUOPT \
./configure \
--prefix=/usr \
--disable-dependency-tracking \
--enable-audio=alsa,jack,vorbis \
--enable-interface=alsaseq \
--enable-dynamic=ncurses \
--enable-network \
--enable-spectrogram
make -j 3
make install DESTDIR=$PKG
# Strip binaries
find $PKG | xargs file | grep "ELF 32-bit LSB" | cut -d : -f 1 | \
xargs strip --strip-unneeded 2> /dev/null
# Compress man and info pages
find $(find $PKG -type d -name man -o -name info) -type f | \
xargs gzip -9 2> /dev/null
# Install the documentation
mkdir -p $PKG/usr/doc/$NAME
install -m 644 \
AUTHORS COPYING ChangeLog{,.1} INSTALL NEWS README TODO \
$PKG/usr/doc/$NAME
# Install the patch set
mkdir -p $PKG/usr/share/timidity
tar xf $CWD/$PATCHSET -C $PKG/usr/share/timidity
# Install config file, control script, and package files
mkdir -p $PKG/etc/rc.d $PKG/install
install -m 644 $CWD/timidity.cfg $PKG/etc/timidity.cfg.new
install -m 644 $CWD/rc.timidity $PKG/etc/rc.d/rc.timidity
install -m 644 $CWD/slack-desc $PKG/install/slack-desc
install -m 755 $CWD/doinst.sh $PKG/install/doinst.sh
# Package the tree
cd $PKG
mkdir -p $OUT
PACKAGING="
chown root:root . -R
/sbin/makepkg -l y -c n $OUT/$NAMETGZ-$VERSION-$ARCH-$BUILD.tgz
rm -rf $PKG
rm -rf $TMP/$NAME
"
if type -p fakeroot ; then
echo "$PACKAGING" | fakeroot
else
su -c "$PACKAGING"
fi

2
ap/timidity/timidity.cfg

@ -0,0 +1,2 @@
dir /usr/share/timidity/freepats
source /usr/share/timidity/freepats/crude.cfg
Loading…
Cancel
Save