aboutsummaryrefslogtreecommitdiff
path: root/games
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2019-12-21 07:48:17 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2019-12-21 07:48:17 +0700
commita5f77799a9aec4a77865613664935544a5278593 (patch)
tree74d7e048139efffd71f4d37eae4d77c43e3c080d /games
parent5c0f315791282ffc0b9c537c75010601108a7919 (diff)
games/qtads: Added (a multimedia interpreter for TADS games).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games')
-rw-r--r--games/qtads/README13
-rw-r--r--games/qtads/doinst.sh14
-rw-r--r--games/qtads/qtads.SlackBuild94
-rw-r--r--games/qtads/qtads.info10
-rw-r--r--games/qtads/slack-desc19
5 files changed, 150 insertions, 0 deletions
diff --git a/games/qtads/README b/games/qtads/README
new file mode 100644
index 000000000000..1a2804a78bad
--- /dev/null
+++ b/games/qtads/README
@@ -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.
diff --git a/games/qtads/doinst.sh b/games/qtads/doinst.sh
new file mode 100644
index 000000000000..7443749d1cd3
--- /dev/null
+++ b/games/qtads/doinst.sh
@@ -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
diff --git a/games/qtads/qtads.SlackBuild b/games/qtads/qtads.SlackBuild
new file mode 100644
index 000000000000..3081bb9e17c8
--- /dev/null
+++ b/games/qtads/qtads.SlackBuild
@@ -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}
diff --git a/games/qtads/qtads.info b/games/qtads/qtads.info
new file mode 100644
index 000000000000..9cf5ea117cd7
--- /dev/null
+++ b/games/qtads/qtads.info
@@ -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"
diff --git a/games/qtads/slack-desc b/games/qtads/slack-desc
new file mode 100644
index 000000000000..dffec7d40acb
--- /dev/null
+++ b/games/qtads/slack-desc
@@ -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: