From e7142676893d0c59161f0997b4b5d077ef8ef43b Mon Sep 17 00:00:00 2001 From: Manuel Mantilla Date: Fri, 2 Jul 2010 23:39:25 -0500 Subject: games/prboom: Added (a port of the classic fps game Doom by id Software) Signed-off-by: Erik Hanson --- games/prboom/README | 20 ++++++++ games/prboom/libpng-1.4.patch | 21 +++++++++ games/prboom/prboom.SlackBuild | 104 +++++++++++++++++++++++++++++++++++++++++ games/prboom/prboom.info | 10 ++++ games/prboom/slack-desc | 19 ++++++++ 5 files changed, 174 insertions(+) create mode 100644 games/prboom/README create mode 100644 games/prboom/libpng-1.4.patch create mode 100644 games/prboom/prboom.SlackBuild create mode 100644 games/prboom/prboom.info create mode 100644 games/prboom/slack-desc diff --git a/games/prboom/README b/games/prboom/README new file mode 100644 index 0000000000..cee6080859 --- /dev/null +++ b/games/prboom/README @@ -0,0 +1,20 @@ +PrBoom is a modern doom game engine or "doom-port" to play id Software's Doom, +Doom II, Doom expansion packs and custom "iwads" or mods (It doesn't include +the game itself). It aims to be the most stable Doom port with the highest +compatibility to the major Doom versions. + +If you don't own any of the Doom games, get the shareware doom1.wad from +http://www.libsdl.org/projects/doom/data/doom1.wad.zip, unzip it, and +rename it to lowercase: mv DOOM1.WAD doom1.wad +Then copy doom1.wad to /usr/share/games/doom/ + +If you have one or all of the main Doom data files from idSoftware - +either doom.wad, doom2.wad, tnt.wad, or plutonia.wad from one of the +commercial Doom games, copy them there too. + +Highly recommended to play the Doom background music: +TiMidity++ with eawpats or freepats (all available at SlackBuilds.org) + +Suggested: Take a look at the docs, man pages, or visit BahdKo at +http://www.doom2.net to learn how to watch demos, info, files, etc. +A great help for newcomers. (You may need a proxy to visit this url) diff --git a/games/prboom/libpng-1.4.patch b/games/prboom/libpng-1.4.patch new file mode 100644 index 0000000000..a2215e37b1 --- /dev/null +++ b/games/prboom/libpng-1.4.patch @@ -0,0 +1,21 @@ +diff -Naur prboom-2.5.0-orig/src/SDL/i_sshot.c prboom-2.5.0/src/SDL/i_sshot.c +--- prboom-2.5.0-orig/src/SDL/i_sshot.c 2010-01-24 23:26:03.000000000 -0500 ++++ prboom-2.5.0/src/SDL/i_sshot.c 2010-01-24 23:28:42.000000000 -0500 +@@ -231,7 +231,7 @@ + if (fp) + { + png_struct *png_ptr = png_create_write_struct( +- PNG_LIBPNG_VER_STRING, png_error_ptr_NULL, error_fn, warning_fn); ++ PNG_LIBPNG_VER_STRING, NULL, error_fn, warning_fn); + + if (png_ptr) + { +@@ -279,7 +279,7 @@ + break; + } + } +- png_destroy_write_struct(&png_ptr, png_infopp_NULL); ++ png_destroy_write_struct(&png_ptr, NULL); + } + fclose(fp); + } diff --git a/games/prboom/prboom.SlackBuild b/games/prboom/prboom.SlackBuild new file mode 100644 index 0000000000..32808e0f28 --- /dev/null +++ b/games/prboom/prboom.SlackBuild @@ -0,0 +1,104 @@ +#!/bin/sh + +# Slackware build script for prboom + +# Copyright 2009-2010 Manuel Mantilla, Veracruz, Mexico +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=prboom +VERSION=${VERSION:-2.5.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -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 + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP || exit 1 +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1 +cd $PRGNAM-$VERSION || exit 1 +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# patch thanks to Arch Linux +patch -p1 < $CWD/libpng-1.4.patch || exit 1 + +# --disable-i386-asm fixes the "exit with signal 8" crash on the x86 arch +# --enable-gl allows to launch game with: prboom -vidmode gl +# default is software video mode. +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --build=$ARCH-slackware-linux \ + --disable-i386-asm \ + --enable-gl || exit 1 + +make || exit 1 +make install-strip DESTDIR=$PKG || exit 1 + +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +mv $PKG/usr/share/doc $PKG/usr +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a TODO INSTALL $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/games/prboom/prboom.info b/games/prboom/prboom.info new file mode 100644 index 0000000000..d3ee48dd2f --- /dev/null +++ b/games/prboom/prboom.info @@ -0,0 +1,10 @@ +PRGNAM="prboom" +VERSION="2.5.0" +HOMEPAGE="http://prboom.sourceforge.net" +DOWNLOAD="http://downloads.sourceforge.net/prboom/prboom-2.5.0.tar.gz" +MD5SUM="a8a15f61fa2626ab98051ab2703378c4" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Manuel Mantilla" +EMAIL="mannynix@megared.net.mx" +APPROVED="Erik Hanson" diff --git a/games/prboom/slack-desc b/games/prboom/slack-desc new file mode 100644 index 0000000000..489fed9b0f --- /dev/null +++ b/games/prboom/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 ':'. + + |-----handy-ruler------------------------------------------------------| +prboom: prboom (a port of the classic fps game Doom by id Software) +prboom: +prboom: Aims to be the most stable Doom port with the highest compatibility +prboom: to the major Doom versions. Highres software and nice OpenGL +prboom: rendering. Full Boom and most if not all MBF features. +prboom: +prboom: +prboom: Homepage: http://prboom.sourceforge.net +prboom: +prboom: +prboom: -- cgit v1.2.3