#!/bin/bash # madplay.SlackBuild # Heavily based on the original Slackware build scripts, # Modified by Stuart Winter # 18-Sep-2004 # Paths to skeleton port's source & real Slackware source tree: export CWD=$SLACKSOURCE/$PKGSERIES/$PACKAGE export PORTCWD=$PWD # Temporary build locations: export TMPBUILD=$TMP/build-$PACKAGE export PKG=$TMP/package-$PACKAGE mkpkgdirs # Delete & re-create temporary directories then cd into $TMPBUILD # Determine the CFLAGS for the known architectures: # madplay optimises to -O2 by default so we don't need to override it. # Specifying -march=armv3 causes the build to fail on ARM - it tries to use # smul instructions which don't exist on armv3. case $PORTARCH in arm) export ARCH_CFLAGS="" ;; powerpc) export ARCH_CFLAGS="" ;; sparc) export ARCH_CFLAGS="" ;; esac # Extract source: tar zxvvf $CWD/$PACKAGE-$VERSION.tar.gz cd $PACKAGE-$VERSION slackhousekeeping # Configure: ./configure \ --prefix=/usr \ --disable-debugging \ $ARCH-slackware-linux || failconfig # Add in any optimisations (rather than overriding the sensible defaults with ./configure # and breaking compilation for ARM) sed -i 's/^CFLAGS.*=\(.*\)$/CFLAGS = '"$ARCH_CFLAGS"' \1/' Makefile # Build: make || failmake # Install into package: make install DESTDIR=$PKG # Install docs: mkdir -p $PKG/usr/doc/$PACKAGE-$VERSION cp -a CHANGES COPYING COPYRIGHT CREDITS README TODO VERSION \ $PKG/usr/doc/madplay-$VERSION # Slackware policies: cd $PKG slackstripall # strip all .a archives and all ELFs slackgzpages -i # compress man & info pages and delete usr/info/dir slackslack # chown -R root:root, chmod -R og-w, slackchown (root:bin), slack644docs slackdesc # install slack-desc and doinst.sh # Build the package: if [ $PORTARCH = arm ]; then . $PORTCWD/arm/pkger else makepkg -l y -c n $PKGSTORE/$PKGSERIES/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz fi # Perform any final checks on the package: cd $PKG slackhlinks # search for any hard links