diff options
author | B. Watson <yalhcru@gmail.com> | 2018-07-09 08:46:56 +0100 |
---|---|---|
committer | David Spencer <idlemoor@slackbuilds.org> | 2018-07-09 08:46:56 +0100 |
commit | 3b015fee6acefa6c23ada34455b14febff0f921b (patch) | |
tree | dfc126517c0e7a19d492bcc723757da0d9e810e9 /libraries/remglk | |
parent | 6a28e5460391346f66840f64742b9e03f83a5d14 (diff) |
libraries/remglk: Added (RPC implementation of the Glk IF API).
Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
Diffstat (limited to 'libraries/remglk')
-rw-r--r-- | libraries/remglk/README | 9 | ||||
-rw-r--r-- | libraries/remglk/remglk.SlackBuild | 84 | ||||
-rw-r--r-- | libraries/remglk/remglk.info | 10 | ||||
-rw-r--r-- | libraries/remglk/slack-desc | 19 |
4 files changed, 122 insertions, 0 deletions
diff --git a/libraries/remglk/README b/libraries/remglk/README new file mode 100644 index 000000000000..9fb859416837 --- /dev/null +++ b/libraries/remglk/README @@ -0,0 +1,9 @@ +remglk (remote-procedure-call implementation of the Glk IF API) + +remglk is an implementation of the Glk Interactive Fiction library which +supports structured input and output. + +RemGlk does not provide a user interface. Instead, it wraps up the +application's output as a JSON data structure and sends it to stdout. It +then waits for input to arrive from stdin; the input data must also be +encoded as JSON. diff --git a/libraries/remglk/remglk.SlackBuild b/libraries/remglk/remglk.SlackBuild new file mode 100644 index 000000000000..f485f9a57708 --- /dev/null +++ b/libraries/remglk/remglk.SlackBuild @@ -0,0 +1,84 @@ +#!/bin/sh + +# Slackware build script for remglk + +# Written by B. Watson (yalhcru@gmail.com) + +# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. + +PRGNAM=remglk +VERSION=${VERSION:-0.2.6} +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} + +# Note: Using -Os here rather than -O2, since we're building a static +# library. Upstream doesn't do shared libs, and this de-bloats the +# static lib by around 15%. Please don't change this. +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-Os -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-Os -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-Os -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-Os" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$PRGNAM-$VERSION + +# no subdirs, no need for template find stuff +chown -R root:root . +chmod 644 * + +make OPTIONS="$SLKCFLAGS" + +# Cuidado! strip strips too much from a static lib by default. +strip --strip-unneeded lib$PRGNAM.a + +# Headers go in /usr/include/remglk, because glktermw installs +# identically-named (but slightly different) headers. +# Make.remglk really shouldn't go in /usr/include, it's *not* a C +# include (it's a Makefile include), but that's where upstream wants it, +# and where stuff that builds with glktermw looks for it (?) +# The Makefile says we only need to install glk.h and glkstart.h, +# but fizmo wants to include gi_blorb.h. Also gi_dispa.h looks like +# public API stuff. +mkdir -p $PKG/usr/lib$LIBDIRSUFFIX $PKG/usr/include/$PRGNAM +cat lib$PRGNAM.a > $PKG/usr/lib$LIBDIRSUFFIX/lib$PRGNAM.a +for i in glk.h glkstart.h Make.$PRGNAM gi_*.h; do + cat $i > $PKG/usr/include/$PRGNAM/$i +done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a *.txt *.html LICENSE $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/libraries/remglk/remglk.info b/libraries/remglk/remglk.info new file mode 100644 index 000000000000..4de8ac272b18 --- /dev/null +++ b/libraries/remglk/remglk.info @@ -0,0 +1,10 @@ +PRGNAM="remglk" +VERSION="0.2.6" +HOMEPAGE="https://github.com/erkyrath/remglk/" +DOWNLOAD="https://github.com/erkyrath/remglk/archive/remglk-0.2.6/remglk-remglk-0.2.6.tar.gz" +MD5SUM="cfe14824773f1e078404a239edf6247d" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" diff --git a/libraries/remglk/slack-desc b/libraries/remglk/slack-desc new file mode 100644 index 000000000000..17c386b9e6fe --- /dev/null +++ b/libraries/remglk/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------------------------------------------------------| +remglk: remglk (remote-procedure-call implementation of the Glk IF API) +remglk: +remglk: remglk is an implementation of the Glk Interactive Fiction library +remglk: which supports structured input and output. +remglk: +remglk: RemGlk does not provide a user interface. Instead, it wraps up +remglk: the application's output as a JSON data structure and sends it to +remglk: stdout. It then waits for input to arrive from stdin; the input data +remglk: must also be encoded as JSON. +remglk: +remglk: |