#!/bin/sh
#
# Slackware build script for PortAudio
# Copyright (C) 2010-2016 Georgi D. Sotirov <gdsotirov@dir.bg>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
#
# Visit SlackPack at http://sotirov-bg.net/slackpack/
#
# $Id: portaudio.SlackBuild,v 1.5 2016/08/24 15:48:57 gsotirov Exp $
#

. ../../slack-package.conf

NAME=portaudio
VERSION=19
VDATE=20111121
BUILD=${BUILD:-1}
ARCH=${ARCH:-i486}

CWD=${CWD:-`pwd`}
TMP=${TMP:-/tmp}

if [ ! -e $TMP ]; then
  mkdir -p $TMP # location to build the source
fi

SRC=$TMP/$NAME-${VERSION}.${VDATE}
if [ -e $SRC -a -d $SRC ]; then
  echo "Source directory '$SRC' already exists! Plaese, move it or remove it."
  exit 1
fi

PKG=$TMP/package-$NAME
if [ -e $PKG -a -d $PKG ]; then
  echo "Package creation directory '$PKG' already exists! Please, move it or remove it."
  exit 2
fi
mkdir -p $PKG

# Extract the sources
cd $TMP
tar -xvf $CWD/pa_stable_v${VERSION}_${VDATE}.tar.gz || exit 3
mv $NAME $NAME-${VERSION}.${VDATE}
cd $SRC
fix_source

# Configure
CFLAGS=$SLKCFLAGS \
CXXFLAGS=$SLKCFLAGS \
./configure --build=$ARCH-slackware-linux \
            --host=$ARCH-slackware-linux \
            --prefix=/usr \
            --libdir=/usr/lib${LIBDIRSUFFIX} \
            --sysconfdir=/etc \
            --mandir=/usr/man \
            --enable-cxx \
            --enable-shared=yes \
            --enable-static=no \
            --with-alsa \
            --with-oss || exit 4

# Build & install
make -j4 || exit 5
make DESTDIR=$PKG install || exit 6

# Prepare
bin_perms $PKG
( cd $PKG; strip_bin; strip_lib )
DOCFILES="$DOCFILES COMPILING.DARWIN LICENSE.txt V19-devel-readme.txt"
( cd $SRC; create_docs $PKG $NAME-${VERSION}.${VDATE} )
( cd $PKG/usr/doc/$NAME-${VERSION}.${VDATE}
  cp -a LICENSE.txt COPYING )

install -m 755 -d $PKG/install
install -m 644 $CWD/slack-desc     $PKG/install/slack-desc
install -m 644 $CWD/slack-required $PKG/install/slack-required

SBDIR=$PKG/usr/src/slackbuilds/$NAME-${VERSION}.${VDATE}
install -m 755 -d $SBDIR
install -m 644 $CWD/slack-desc         $SBDIR/slack-desc
install -m 644 $CWD/slack-required     $SBDIR/slack-required
install -m 644 $CWD/$NAME.SlackBuild   $SBDIR/$NAME.SlackBuild

# Assemble
PKGNAME=$NAME-${VERSION}.${VDATE}-$ARCH-$BUILD$MYIN
cd $PKG
makepkg -l y -c n $PKG_DIR/$PKGNAME.txz
cd $PKG_DIR
md5sum $PKGNAME.txz > $PKGNAME.txz.md5
cp $CWD/slack-desc $PKGNAME.txt

# Clean up (optionally)
if [ "$1" = "--cleanup" ]; then
  rm -rf $SRC
  rm -rf $PKG
fi

