133 lines
4.2 KiB
Bash
133 lines
4.2 KiB
Bash
#!/bin/bash
|
|
|
|
# Slackware build script for transcribe
|
|
|
|
# Written by B. Watson (yalhcru@gmail.com)
|
|
|
|
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
|
|
|
|
# Notes:
|
|
|
|
# Closed-source software, precompiled binaries for x86 and x86_64,
|
|
# deps are all included in Slackware.
|
|
|
|
# Originally ported from Windows, so it expects to be run from its
|
|
# own directory. We install to /usr/lib(64)?/transcribe, and a wrapper
|
|
# script /usr/bin/transcribe that cd's to the install dir and runs
|
|
# the app from there (this allows the app's help system to work).
|
|
|
|
# Upgrading from the 30-day eval to the registered version is just
|
|
# a matter of entering the license key (no change to the package
|
|
# needed).
|
|
|
|
# The version number doesn't appear in the tarball filename or the URL,
|
|
# so be careful that $VERSION matches the actual version number (found
|
|
# in Help/About)... though starting with v8.80, I host the tarballs
|
|
# and put $VERSION in the filenames.
|
|
|
|
# 20211127 bkw: updated for v8.80 and -current. This is the last
|
|
# version that supports 32-bit. I tried the latest verion (9.10.0)
|
|
# on 64-bit, but it fails to init the audio device, then crashes
|
|
# with a "malloc(): unaligned tcache chunk detected", which means
|
|
# either an actual bug (that I can't fix due to lack of source) or an
|
|
# incompatible library (the 9.10.0 binary is built on XUbuntu 20.4).
|
|
|
|
# 20191211 bkw: updated for v8.73. This is the "older version" upstream
|
|
# provides for OSes where the libraries (including glibc) are too
|
|
# old for the latest (8.74.1) version. v8.74.1 requires glibc-2.27,
|
|
# while Slackware 14.2 only has 2.23. Please don't ask me to update to
|
|
# versions later than 8.73, I won't be able to do that until Slackware
|
|
# 15.0 is released. I'm hosting the download files on my server because
|
|
# at some point, upstream will release a version 8.75. At that point
|
|
# it's likely that 8.73 will disappear from his site.
|
|
|
|
cd $(dirname $0) ; CWD=$(pwd)
|
|
|
|
PRGNAM=transcribe
|
|
VERSION=${VERSION:-8.80}
|
|
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 [ ! -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" -o "$ARCH" = "i686" ]; then
|
|
LIBDIRSUFFIX=""
|
|
BITS=32
|
|
elif [ "$ARCH" = "x86_64" ]; then
|
|
LIBDIRSUFFIX="64"
|
|
BITS=64
|
|
else
|
|
echo "*** Unsupported ARCH '$ARCH', only i586/i686/x86_64 supported."
|
|
exit 1
|
|
fi
|
|
|
|
# The dist tarball's filename has no connection whatsoever to the
|
|
# actual name of the program... The -$VERSION was put there by me (I
|
|
# renamed the file) to allow me to host multiple versions.
|
|
TARNAME=xsc${BITS}setup-$VERSION.tar.gz
|
|
|
|
set -e
|
|
|
|
rm -rf $PKG
|
|
mkdir -p $TMP $PKG $OUTPUT
|
|
cd $TMP
|
|
rm -rf $PRGNAM
|
|
tar xvf $CWD/$TARNAME
|
|
cd $PRGNAM
|
|
|
|
sed "s,/usr/lib,/usr/lib$LIBDIRSUFFIX,g" \
|
|
< $CWD/$PRGNAM.sh \
|
|
> $PRGNAM.sh
|
|
|
|
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM \
|
|
$PKG/usr/doc/$PRGNAM-$VERSION \
|
|
$PKG/usr/bin \
|
|
$PKG/install \
|
|
$PKG/usr/share/applications \
|
|
$PKG/usr/share/pixmaps
|
|
|
|
install -oroot -groot -m0755 $PRGNAM $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/
|
|
install -oroot -groot -m0644 xschelp.htb $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/
|
|
install -oroot -groot -m0644 readme_gtk.html $PKG/usr/doc/$PRGNAM-$VERSION/
|
|
install -oroot -groot -m0755 $PRGNAM.sh $PKG/usr/bin/$PRGNAM
|
|
|
|
for i in gtkicons/*.png; do
|
|
px="$( basename $i | cut -dx -f3 | cut -d. -f1 )"
|
|
size=${px}x${px}
|
|
dir=$PKG/usr/share/icons/hicolor/$size/apps
|
|
mkdir -p $dir
|
|
cat $i > $dir/$PRGNAM.png
|
|
done
|
|
|
|
ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
|
|
|
|
# Starting with v8.70, a gstreamer plugin is included.
|
|
if [ -e libgstvideosection.so ]; then
|
|
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/gstreamer-1.0
|
|
install -m0755 libgstvideosection.so $PKG/usr/lib$LIBDIRSUFFIX/gstreamer-1.0
|
|
fi
|
|
|
|
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
|
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
|
|
cat $CWD/slack-desc > $PKG/install/slack-desc
|
|
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
|
|
|
cd $PKG
|
|
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
|