summaryrefslogtreecommitdiffstats
path: root/audio/samplv1/samplv1.SlackBuild
blob: 14be95a120f75d1673881ec6f4b1360cc63cf2d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#!/bin/bash

# Slackware build script for samplv1

# Written by B. Watson (yalhcru@gmail.com)

# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.

# 20201106 bkw: update for 0.9.18
# 20200114 bkw: update for 0.9.12
# 20191210 bkw: update for 0.9.11, document optional liblo dep, have slack-desc
#               tell user whether or not optional deps are included.
# 20181216 bkw: update for 0.9.4, which now requires qt5 :(
# 20180615 bkw: update for 0.9.2
# 20180702 bkw: update for 0.9.1, install French man page correctly.
# 20180615 bkw: update for 0.9.0
# 20180101 bkw: update for 0.8.6
# 20171220 bkw: updated for v0.8.5. Skipped 0.8.4 due to compile errors.
# 20170627 bkw: update for 0.8.3
# 20170614 bkw: update for 0.8.2, drop qt5 dep, build with qt4

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=samplv1
VERSION=${VERSION:-0.9.18}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -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 -L .  -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
        \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+

export PATH=/usr/lib$LIBDIRSUFFIX/qt5/bin:$PATH

LDFLAGS="-Wl,-s" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG

# 20180702 bkw: See comments in synthv1.SlackBuild to understand this.

# I dunno what this is actually for, but as of 0.8.5 it got moved. Move
# it back to where it belongs, for Slack 14.2.
[ -d $PKG/usr/share/metainfo ] && \
  mv $PKG/usr/share/metainfo $PKG/usr/share/appdata

mkdir -p $PKG/usr/man/fr.UTF-8/man1
mv $PKG/usr/man/fr/man1/$PRGNAM.1.gz $PKG/usr/man/fr.UTF-8/man1/$PRGNAM.1.gz
zcat $PKG/usr/man/fr.UTF-8/man1/$PRGNAM.1.gz | \
  iconv -f UTF-8 -t ISO-8859-1 | \
  gzip -9c \
  > $PKG/usr/man/fr/man1/$PRGNAM.1.gz

# binaries already stripped, man page already gzipped. make symlink
# to man page, to match the actual name of the binary.
for i in man1 fr/man1 fr.UTF-8/man1; do
  ln -s $PRGNAM.1.gz $PKG/usr/man/$i/${PRGNAM}_jack.1.gz
done

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

LIBLO=no
LV2=no
ldd $PKG/usr/bin/${PRGNAM}_jack | grep -q liblo && LIBLO=yes
[ -e $PKG/usr/lib$LIBDIRSUFFIX/lv2/$PRGNAM.lv2 ] && LV2=yes

mkdir -p $PKG/install
sed -e "s,@LIBLO@,$LIBLO," -e "s,@LV2@,$LV2," $CWD/slack-desc \
  > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

if [ "${SETCAP:-yes}" = "yes" ]; then
  cat $CWD/setcap.sh >> $PKG/install/doinst.sh
  chown root:audio $PKG/usr/bin/${PRGNAM}_jack
  chmod 0750 $PKG/usr/bin/${PRGNAM}_jack
fi

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE