games/qtads: Added (a multimedia interpreter for TADS games).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2019-12-21 07:48:17 +07:00 committed by Willy Sudiarto Raharjo
parent 5c0f315791
commit a5f77799a9
5 changed files with 150 additions and 0 deletions

13
games/qtads/README Normal file
View file

@ -0,0 +1,13 @@
qtads (a multimedia interpreter for TADS games)
QTads is a so called "interpreter" for games created with the Text
Adventure Development System, or "Tads" for short, a C-like object
oriented programming language for authoring Interactive Fiction (similar
to the Infocom or Legend Entertainment games, like "Zork"). Yes, we are
talking about text adventures here.
Both Tads 2 (*.gam) as well as Tads 3 (*.t3) games are supported. You can
find a selection of games at http://www.ifarchive.org/if-archive/games/tads/
By default, Qt4 is used for the user interface. If you prefer Qt5, install
libraries/qt5 and run this script with QT5=yes in the environment.

14
games/qtads/doinst.sh Normal file
View file

@ -0,0 +1,14 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
if [ -x /usr/bin/update-mime-database ]; then
/usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
fi
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
/usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
fi
fi

View file

@ -0,0 +1,94 @@
#!/bin/sh
# Slackware build script for qtads
# Written by B. Watson (yalhcru@gmail.com)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# Both qt4 and qt5 are supported by upstream, so this script allows for
# both. Not sure why anyone really cares (I'm pretty much GUI-insensitive,
# plus I hate waiting for qt5 to build), but eventually Pat will probably
# replace qt4 with qt5 in Slackware. When that happens, this script will
# still be usable.
PRGNAM=qtads
VERSION=${VERSION:-2.1.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
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.bz2
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 {} \+
if [ "${QT5:-no}" = "yes" ]; then
[ "$QT5DIR" = "" ] && source /etc/profile.d/qt5.sh
# qt5 uses the CFLAGS qt5 was built with.
qmake-qt5
else
qmake
# qt4 needs CFLAGS forced. easier to do it this way than deal with qmake:
sed -i "s,-O2,$SLKCFLAGS," Makefile
fi
# Setting CC/CXX shows the actual compile commands. Using gold speeds
# up linking enough to be worth the effort.
make CC=gcc CXX=g++ LINK="g++ -fuse-ld=gold"
mkdir -p $PKG/usr/games
# No 'make install' target, but things are laid out nicely in the source.
install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share
mv share/man $PKG/usr
gzip -9 $PKG/usr/man/man6/$PRGNAM.6
mv share/* $PKG/usr/share
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING HTML_TADS_LICENSE NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# for use in the slack-desc:
ldd $PRGNAM | grep -q Qt5 && QTVER=5 || QTVER=4
mkdir -p $PKG/install
sed "s,@QTVER@,$QTVER," $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:-tgz}

10
games/qtads/qtads.info Normal file
View file

@ -0,0 +1,10 @@
PRGNAM="qtads"
VERSION="2.1.7"
HOMEPAGE="https://github.com/realnc/qtads"
DOWNLOAD="https://github.com/realnc/qtads/releases/download/2.1.7/qtads-2.1.7.tar.bz2"
MD5SUM="32139431f08ce157eb385f1894c18f24"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SDL_sound"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"

19
games/qtads/slack-desc Normal file
View file

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
qtads: qtads (a multimedia interpreter for TADS games)
qtads:
qtads: QTads is a so called "interpreter" for games created with the Text
qtads: Adventure Development System, or "Tads" for short, a C-like object
qtads: oriented programming language for authoring Interactive Fiction
qtads: (similar to the Infocom or Legend Entertainment games, like
qtads: "Zork"). Yes, we are talking about text adventures here.
qtads:
qtads: This package built for Qt@QTVER@.
qtads:
qtads: