games/ecwolf: Added (an advanced source port for Wolfenstein 3D).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Hunter Sezen 2016-08-07 18:33:52 +07:00 committed by Willy Sudiarto Raharjo
parent dad329af31
commit 56f75161cc
No known key found for this signature in database
GPG Key ID: 887B8374D7333381
4 changed files with 162 additions and 0 deletions

27
games/ecwolf/README Normal file
View File

@ -0,0 +1,27 @@
ECWolf is an advanced source port for Wolfenstein 3D, Spear of Destiny,
and Super 3D Noah's Ark based off of the Wolf4SDL code base. ECWolf pulls
a substantial amount of code from ZDoom and aims to provide a wide array of
mod editing capabilities without the need to modify the source code. Most
importantly you will no longer need to replace entire data sets. With ECWolf
you could for example add a weapon without needing to distribute every sprite
in the game along with it. Mods will be neatly packaged into a single file
just like they are for Doom.
For players, ECWolf provides many useful features such as better control binding,
support for wide screen resolutions, and unlimited save slots. ECWolf allows you
to keep all of your game data in one directory as one binary plays all supported
games. Support for even more Wolfenstein engine games is planned for the one binary
plays all supported games. Support for even more Wolfenstein engine games is planned
for the binary plays all supported games. Support for even more Wolfenstein engine
games is planned for the future! (I know you're all waiting for Blake Stone support.)
In terms of accuracy to vanilla Wolf, it is about the same as the accuracy of ZDoom
to vanilla Doom.
To play ECWolf the game date will be required, it can be placed in:
/usr/share/games/wolf3d
Wolfenstein 3D fullversion (.wl6) and shareware (.wl1)
Spear of Destiny fullversion (.sod) and demo (.sdm)
Spear of Destiny Mission 2: Return to Danger (.sd2)
Spear of Destiny Mission 3: Ultimate Challenge (.sd3)
Super 3D Noah's Ark (.n3d)

View File

@ -0,0 +1,106 @@
#!/bin/sh
# Slackware build script for ECWolf
# Copyright 2016 Hunter Sezen California, USA
# 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=ecwolf
VERSION=${VERSION:-1.3.2}
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-src
7z x $CWD/$PRGNAM-$VERSION-src.7z
cd $PRGNAM-$VERSION-src
chown -R root:root .
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 {} \;
# data dir hack (From AUR)
sed -e 's|OpenResourceFile(datawad|OpenResourceFile("/usr/share/games/ecwolf/ecwolf.pk3"|' \
-e 's|Push(datawad|Push("/usr/share/games/ecwolf/ecwolf.pk3"|' \
-e 's|/usr/local/share/games/wolf3d|/usr/share/games/wolf3d|' \
-i src/wl_iwad.cpp
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_PATCHUTIL=ON \
-Wno-dev \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
install -m0755 tools/patchutil/patchutil $PKG/usr/bin/$PRGNAM-patchutil
install -Dm0644 $PRGNAM.pk3 $PKG/usr/share/games/$PRGNAM/$PRGNAM.pk3
cd ..
mkdir -p $PKG/usr/share/games/wolf3d
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md docs/*.txt $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}

10
games/ecwolf/ecwolf.info Normal file
View File

@ -0,0 +1,10 @@
PRGNAM="ecwolf"
VERSION="1.3.2"
HOMEPAGE="http://maniacsvault.net/ecwolf/"
DOWNLOAD="http://maniacsvault.net/ecwolf/files/ecwolf/1.x/ecwolf-1.3.2-src.7z"
MD5SUM="ec6ed0a1c1f5081cb788cfe030cf0a9d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="p7zip"
MAINTAINER="Hunter Sezen"
EMAIL="ovariegata@yahoo.com"

19
games/ecwolf/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------------------------------------------------------|
ecwolf: ecwolf (an advanced source port for Wolfenstein 3D)
ecwolf:
ecwolf: ECWolf is an advanced source port for Wolfenstein 3D,
ecwolf: Spear of Destiny, and Super 3D Noah's Ark based off
ecwolf: of the Wolf4SDL code base.
ecwolf:
ecwolf: Homepage: http://maniacsvault.net/ecwolf/
ecwolf:
ecwolf:
ecwolf:
ecwolf: