aboutsummaryrefslogtreecommitdiff
path: root/games/gzdoom
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2017-02-07 12:07:59 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2017-02-11 07:23:58 +0700
commitbb1b973ce9151f2d8c660693e227fe35ab0f28bc (patch)
tree10aecced560943b0cbd8fa0d4276b7647e84f02e /games/gzdoom
parent557658ecc42a23d7561e753b8834e787d7659c2d (diff)
games/gzdoom: Use system fmodapi.
Diffstat (limited to 'games/gzdoom')
-rw-r--r--games/gzdoom/README2
-rw-r--r--games/gzdoom/README_SBo.txt6
-rw-r--r--games/gzdoom/README_versions.txt6
-rw-r--r--games/gzdoom/gzdoom.SlackBuild63
-rw-r--r--games/gzdoom/gzdoom.info8
5 files changed, 24 insertions, 61 deletions
diff --git a/games/gzdoom/README b/games/gzdoom/README
index 7ddc5bb1339b..372c90f18f58 100644
--- a/games/gzdoom/README
+++ b/games/gzdoom/README
@@ -6,7 +6,7 @@ auto-detected.
See README_SBo.txt for optional runtime dependencies.
-This script can be used to build gzdoom 1.8.09, 1.9.1, or 2.1.1. For
+This script can be used to build gzdoom 1.8.09, 1.9.1, or 2.3.2. For
more information, see README_versions.txt.
*Note: if you're upgrading from gzdoom-1.5.x to 1.9.x or 2.0.x, the
diff --git a/games/gzdoom/README_SBo.txt b/games/gzdoom/README_SBo.txt
index 9841cc83c522..66d71b6d5e47 100644
--- a/games/gzdoom/README_SBo.txt
+++ b/games/gzdoom/README_SBo.txt
@@ -8,7 +8,11 @@ and Strife. Place the .wad file(s) in /usr/share/games/doom.
If you don't own any of the supported games, you can install one or more
of these slackbuilds.org packages to get a playable game:
-freedoom, doom_shareware_data, heretic_shareware_data, hexen_demo_data
+- freedoom
+- doom_shareware_data
+- heretic_shareware_data
+- hexen_demo_data
+- chexquest3
Sound Backend
-------------
diff --git a/games/gzdoom/README_versions.txt b/games/gzdoom/README_versions.txt
index d9a7fa942440..586f7efa4177 100644
--- a/games/gzdoom/README_versions.txt
+++ b/games/gzdoom/README_versions.txt
@@ -4,9 +4,9 @@ of gzdoom. Supported versions:
1.8.09 - last version to use SDL1 (good for older/slower systems).
1.9.1 - last version to not require OpenGL 3.0 (good for nouveau).
-2.2.0 - latest version of gzdoom (best choice for fast modern systems).
+2.3.2 - latest version of gzdoom (best choice for fast modern systems).
-By default, 2.2.0 is built (as per the .info file). If you'd like to
+By default, 2.3.2 is built (as per the .info file). If you'd like to
try one of the others, download the source, save it in the SlackBuild
directory, and run gzdoom.SlackBuild with VERSION=1.8.09 or VERSION=1.9.1
set in the environment. If you use sbopkg, you can create a custom .info
@@ -15,7 +15,7 @@ file, and copy the lines below:
For 1.8.09:
VERSION="1.8.09"
-DOWNLOAD="https://github.com/coelckers/gzdoom/archive/1.8.09.tar.gz"
+DOWNLOAD="http://urchlay.naptime.net/~urchlay/src/g1.8.09.tar.gz"
MD5SUM="ddc1dd8aef254312031184be6dec21e6"
Note that SDL2 is not required for 1.8.09 (you can remove it from REQUIRES
diff --git a/games/gzdoom/gzdoom.SlackBuild b/games/gzdoom/gzdoom.SlackBuild
index 2976aa808b34..d71615c7d6b5 100644
--- a/games/gzdoom/gzdoom.SlackBuild
+++ b/games/gzdoom/gzdoom.SlackBuild
@@ -6,6 +6,12 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20170207 bkw:
+# - BUILD=2
+# - Get rid of private fmodapi, now that the SBo fmodapi has been updated
+# to a new enough version. Re-add fmodapi to REQUIRES.
+# - Fix download link so we always get the correct filename.
+
# 20170113 bkw:
# - Updated for 2.3.2. 1.9.1 and 1.8.09 still work, too.
# - Use newer version of fmodapi. Due to licensing confusion, the
@@ -44,7 +50,7 @@
PRGNAM=gzdoom
VERSION=${VERSION:-2.3.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -85,56 +91,14 @@ tar xvf $CWD/$PRGNAM-g$VERSION.tar.gz || \
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || \
tar xvf $CWD/$VERSION.tar.gz
cd $PRGNAM-g$VERSION || cd $PRGNAM-$VERSION
-
-# See if fmodapi tarball is in script dir. If so, use it. We
-# currently support 2 versions of it: 4.44.50 and 4.44.61. These
-# are newer than the SBo fmodapi package, which is 4.28.17. You
-# could try a different fmodapi here (by editing the 'for' args),
-# but only for recent-ish fmodapi versions because this stuff
-# depends on both x86 and x86_64 being included in the fmodapi
-# tarball (which wasn't the case for 4.28.17 and earlier).
-for i in 44450 44461; do
- [ -e $CWD/fmodapi${i}linux.tar.gz ] && fmodver=$i
-done
-
-[ -n "$fmodver" ] && tar xvf $CWD/fmodapi${fmodver}linux.tar.gz
-
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 \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Set up fmodapi, if present.
-if [ -n "$fmodver" ]; then
- fmoddir=fmodapi${fmodver}linux
-
- mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM $PKG/usr/include/tmp
-
- mv $fmoddir/api/lib/libfmodex$LIBDIRSUFFIX-*.so \
- $fmoddir/api/lib/libfmodexL$LIBDIRSUFFIX-*.so \
- $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
-
- mv $fmoddir/api/inc/* $PKG/usr/include/tmp
-
- cd $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
- ln -s libfmodex$LIBDIRSUFFIX-*.so libfmodex$LIBDIRSUFFIX.so
- ln -s libfmodexL$LIBDIRSUFFIX-*.so libfmodexL$LIBDIRSUFFIX.so
- cd -
-
- # These cmake args will cause cmake to ignore any fmodapi installed in
- # the standard system locations. The -Wl,-rpath stuff is needed to get
- # gzdoom to use the fmod we include here (at runtime), instead of the
- # system-wide one in /usr/lib$LIBDIRSUFFIX.
- fmod_cmake="\
- -DFMOD_INCLUDE_DIR=$PKG/usr/include/tmp \
- -DFMOD_LIBRARY=$PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/libfmodex$LIBDIRSUFFIX.so \
- -DCMAKE_EXE_LINKER_FLAGS='-Wl,-rpath=/usr/lib$LIBDIRSUFFIX/$PRGNAM'
- -DCMAKE_MODULE_LINKER_FLAGS='-Wl,-rpath=/usr/lib$LIBDIRSUFFIX/$PRGNAM'"
-fi
+ -exec chmod 644 {} \+
-# fmodapi MIDI support tries to find its lib in the current dir, fix it:
+# fmodapi support tries to find its lib in the current dir, fix it:
sed -i \
"s,setPluginPath(progdir),setPluginPath(\"/usr/lib$LIBDIRSUFFIX/$PRGNAM\")," \
src/sound/fmodsound.cpp
@@ -157,12 +121,12 @@ sed -i "/#define *VERSIONSTR/s,\"[^\"]*\",\"$VERSION\"," src/version.h
mkdir -p build
cd build
cmake \
- $fmod_cmake \
-DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS -DSHARE_DIR=\\\"/usr/share/games/doom\\\"" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS -DSHARE_DIR=\\\"/usr/share/games/doom\\\"" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMAN_INSTALL_DIR=/usr/man \
+ -DFMOD_LIBRARY=/usr/lib${LIBDIRSUFFIX}/libfmodex${LIBDIRSUFFIX}.so \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
mkdir -p $PKG/usr/games $PKG/usr/share/games/doom
@@ -176,9 +140,6 @@ cd build
fi
cd ..
-# gzdoom doesn't install any headers; this is for the fmod hackery.
-rm -rf $PKG/usr/include
-
# .desktop written for this SlackBuild
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
@@ -192,7 +153,7 @@ cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README_SBo.txt > $PKG/usr/doc/$PRGNAM-$VERSION/README_SBo.txt
-# Fix DOS CRLF line endings. The stuff in licenses/ is already OK, for 2.2.0.
+# Fix DOS CRLF line endings. The stuff in licenses/ is already OK, for 2.3.2.
sed -i 's/\r//' $PKG/usr/doc/$PRGNAM-$VERSION/*.*
mkdir -p $PKG/install
diff --git a/games/gzdoom/gzdoom.info b/games/gzdoom/gzdoom.info
index e1047f41ea49..b75429cdf732 100644
--- a/games/gzdoom/gzdoom.info
+++ b/games/gzdoom/gzdoom.info
@@ -1,12 +1,10 @@
PRGNAM="gzdoom"
VERSION="2.3.2"
HOMEPAGE="http://gzdoom.drdteam.org/"
-DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g2.3.2.tar.gz \
- http://ponce.cc/slackware/sources/repo/fmodapi44461linux.tar.gz"
-MD5SUM="5e270c82c4e3f7b1620199aee41f7b56 \
- 9f770e797c39192ff6cdb88dc05dd028"
+DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g2.3.2/gzdoom-g2.3.2.tar.gz"
+MD5SUM="5e270c82c4e3f7b1620199aee41f7b56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES="SDL2 fmodapi"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"