games/mininim: Added (Prince of Persia rewrite).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2017-03-18 05:34:33 +07:00 committed by Willy Sudiarto Raharjo
parent a58f639ff2
commit c00145fa3a
6 changed files with 178 additions and 0 deletions

15
games/mininim/README Normal file
View file

@ -0,0 +1,15 @@
mininim (Prince of Persia rewrite)
MININIM is the Advanced Prince of Persia Engine - a childhood dream,
the free software implementation of Jordan Mechner's masterpiece game,
developed from scratch by Bruno Felix Rezende Ribeiro (oitofelix). In
addition to being already a complete replacement for the original game
with several improvements, MININIM aims to have detailed documentation
on all matters concerning the original Prince of Persia world, ranging
from its design concepts to the engine's practical use and development.
The docs are installed in "/usr/doc/mininim-$VERSION/mininim.html/",
as separate HTML pages. If you plan to print the documentation,
set PDF=yes in the script's environment, and print the file
"/usr/doc/mininim-$VERSION/mininim.pdf". This uses an extra 870K of
disk space.

3
games/mininim/doinst.sh Normal file
View file

@ -0,0 +1,3 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

View file

@ -0,0 +1,123 @@
#!/bin/sh
# Slackware build script for mininim
# Written by B. Watson (yalhcru@gmail.com)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20170317 bkw: If I'd known about mininim before discovering sdlpop,
# probably I would have submitted a build for mininim and never touched
# sdlpop. As it stands, we have both (choice is good). mininim is a lot
# more unix-friendly, easier to package.
PRGNAM=mininim
VERSION=${VERSION:-201701122309}
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.gz
cd $PRGNAM-$VERSION
chown -R root:root .
# using \+ instead of \; for this find makes it run 10x as fast!
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Slack 14.2's makeinfo chokes on this, I dunno what version upstream
# uses.
sed -i 's,@arrow@,@arrow{}@,' doc/$PRGNAM.texi
# this takes a minute due to the gnulib stuff...
./bootstrap
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--bindir=/usr/games \
--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-strip DESTDIR=$PKG
# man page is in the wrong section. easier to fix after the fact than
# futz around with doc/man/Makefile.am and such.
mkdir -p $PKG/usr/man/man6
sed '/^\.TH/s,"1","6",' $PKG/usr/man/man1/$PRGNAM.1 | \
gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
rm -rf $PKG/usr/man/man1/
make html MAKEINFO="makeinfo --no-validate"
make install-html DESTDIR=$PKG
# why doesn't install-html install these?
cp -a doc/$PRGNAM-figures $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.html/
# this stuff belongs in /usr/doc but isn't built by default:
DOCS="ANNOUNCEMENT DONORS NEWS README THANKS TODO"
for i in $DOCS; do
make $i
cat $i > $PKG/usr/doc/$PRGNAM-$VERSION/$i
done
# if we wanted PDF docs:
if [ "${PDF:-no}" = "yes" ]; then
make pdf
install -m0644 doc/$PRGNAM.pdf $PKG/usr/doc/$PRGNAM-$VERSION/
fi
# .desktop file written by SlackBuild author.
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
ln -s ../$PRGNAM/data/icons/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
# docs already installed.
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
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:-tgz}

View file

@ -0,0 +1,8 @@
[Desktop Entry]
Name=mininim
Comment=MININIM: Prince of Persia I
Exec=mininim
Icon=mininim
Terminal=false
Type=Application
Categories=Game;ActionGame;

View file

@ -0,0 +1,10 @@
PRGNAM="mininim"
VERSION="201701122309"
HOMEPAGE="http://oitofelix.github.io/mininim/"
DOWNLOAD="https://github.com/oitofelix/mininim/archive/v201701122309/mininim-201701122309.tar.gz"
MD5SUM="da4e45c0aa08f689cd4848dcc8de9214"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gnulib allegro"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"

19
games/mininim/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------------------------------------------------------|
mininim: mininim (Prince of Persia rewrite)
mininim:
mininim: MININIM is the Advanced Prince of Persia Engine - a childhood dream,
mininim: the free software implementation of Jordan Mechner's masterpiece game,
mininim: developed from scratch by Bruno Felix Rezende Ribeiro (oitofelix). In
mininim: addition to being already a complete replacement for the original game
mininim: with several improvements, MININIM aims to have detailed documentation
mininim: on all matters concerning the original Prince of Persia world,
mininim: ranging from its design concepts to the engine's practical use
mininim: and development.
mininim: