aboutsummaryrefslogtreecommitdiff
path: root/games/prboom-plus
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2021-02-24 01:57:52 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2021-02-27 08:24:37 +0700
commit11e081a76223c1e81402dd3d1b13d375c083e9f4 (patch)
treed5e11ee7facd1cfe7fc63e3aa3f107faa5000cc3 /games/prboom-plus
parent296712b5926423e659d52cd74e09fee79fb06ab8 (diff)
games/prboom-plus: Updated for version 2.6um.
Signed-off-by: B. Watson <yalhcru@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games/prboom-plus')
-rw-r--r--games/prboom-plus/README15
-rw-r--r--games/prboom-plus/prboom-plus.SlackBuild65
-rw-r--r--games/prboom-plus/prboom-plus.info8
-rw-r--r--games/prboom-plus/slack-desc4
4 files changed, 55 insertions, 37 deletions
diff --git a/games/prboom-plus/README b/games/prboom-plus/README
index 70ec066d881f1..b42063184fbd4 100644
--- a/games/prboom-plus/README
+++ b/games/prboom-plus/README
@@ -4,14 +4,17 @@ PrBoom+ is a Doom source port developed from the original PrBoom
project.
Features uncapped framerate, widescreen aspect ratios, soundfont
-support, variable gamespeed, re-record, walkcam, chasecam, full full
-mouselook, fov and other features along with full compatibility with
-the original Doom/Doom2 engines.
-
-FluidSynth, needed for soundfont support, is an optional dependency.
+support, variable gamespeed, re-record, walkcam, chasecam, full
+mouselook, variable FOV, and other features along with full
+compatibility with the original Doom/Doom2 engines.
The documentation refers to a directory into which an IWAD
file (doom.wad, doom2.wad, tnt.wad, plutonia.wad, or the
-shareware doom1.wad) may be placed. The IWAD directory is
+shareware doom1.wad) may be placed. The IWAD directory is
/usr/share/games/doom. If you don't have any IWADs, install
doom_shareware_data to play shareware Doom.
+
+Optional dependencies, autodetected:
+
+fluidsynth - for MIDI soundfont support.
+portmidi - for the PortMIDI backend. Most users won't need this.
diff --git a/games/prboom-plus/prboom-plus.SlackBuild b/games/prboom-plus/prboom-plus.SlackBuild
index ed96afa6b7348..aa14bfb9c268c 100644
--- a/games/prboom-plus/prboom-plus.SlackBuild
+++ b/games/prboom-plus/prboom-plus.SlackBuild
@@ -7,6 +7,14 @@
# Original had no license. Modified version released under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20210223 bkw: update for v2.6um. Upstream switched to cmake,
+# so we can't build previous versions any more. A note to myself:
+# SDL2 really is required. SDL2_(net|mixer|image) are technically
+# optional. But I'm keeping them listed as requirements because users
+# will get annoyed if they accidentally build a Doom engine that's
+# incapable of playing music, or joining multiplayer games, or using
+# HQ textures.
+
# 20200416 bkw:
# - take over maintenance
# - i486 => i586
@@ -16,7 +24,7 @@
# - game binaries in /usr/games
PRGNAM=prboom-plus
-VERSION=${VERSION:-2.5.1.7um}
+VERSION=${VERSION:-2.6um}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -49,6 +57,17 @@ fi
set -e
+# If modern cmake is missing, the error message from the old 14.2 cmake
+# doesn't really make it clear why it fails, so add this check to avoid
+# receiving "why won't this build?" emails. This stanza can go away after
+# 15.0 is released.
+if ! [ -x /opt/cmake-202x/bin/cmake ]; then
+ echo "*** Missing required dependency: cmame-202x. Aborting." 1>&2
+ exit 1
+fi
+
+export PATH=/opt/cmake-202x/bin:$PATH
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -60,28 +79,25 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
[ -d prboom2 ] && cd prboom2
-[ -x configure ] || sh bootstrap
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --bindir=/usr/games \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux \
- --datarootdir=/usr \
- --enable-gl
-
-make
-make install-strip DESTDIR=$PKG
-
-# Configure script insists on putting docs in /usr/share/doc, even when told not to.
-# Also, the version number in the doc dir is wrong...
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv $PKG/usr/share/doc/$PRGNAM-*/* $PKG/usr/doc/$PRGNAM-$VERSION
-rm -rf $PKG/usr/share/doc
+
+# upstream hardcoded paths, can't override on cmake command line.
+sed -i '/install/s,/bin,/games,' src/CMakeLists.txt
+sed -i '/^set(CMAKE_INSTALL_DOCDIR/d' CMakeLists.txt
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_BINDIR=games \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
gzip $PKG/usr/man/man?/*.?
@@ -93,8 +109,7 @@ cp ICONS/$PRGNAM.desktop $PKG/usr/share/applications
cp ICONS/$PRGNAM.svg $PKG/usr/share/icons/hicolor/scalable/apps
cp ICONS/$PRGNAM.bash $PKG/usr/share/bash-completion/completions/$PRGNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING README NEWS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/games/prboom-plus/prboom-plus.info b/games/prboom-plus/prboom-plus.info
index a80ee5990d42f..277b1866e848a 100644
--- a/games/prboom-plus/prboom-plus.info
+++ b/games/prboom-plus/prboom-plus.info
@@ -1,10 +1,10 @@
PRGNAM="prboom-plus"
-VERSION="2.5.1.7um"
+VERSION="2.6um"
HOMEPAGE="http://prboom-plus.sourceforge.net"
-DOWNLOAD="https://github.com/coelckers/prboom-plus/archive/v2.5.1.7um/prboom-plus-2.5.1.7um.tar.gz"
-MD5SUM="2c36f7902f837057c7e299adb20e81fb"
+DOWNLOAD="https://github.com/coelckers/prboom-plus/archive/v2.6um/prboom-plus-2.6um.tar.gz"
+MD5SUM="5e294659988c0208fefa292557d8b746"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_net SDL2_image SDL2_mixer"
+REQUIRES="cmake-202x SDL2 SDL2_net SDL2_image SDL2_mixer"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"
diff --git a/games/prboom-plus/slack-desc b/games/prboom-plus/slack-desc
index bd3b0e71f3a53..196aeff751707 100644
--- a/games/prboom-plus/slack-desc
+++ b/games/prboom-plus/slack-desc
@@ -13,7 +13,7 @@ prboom-plus: project.
prboom-plus:
prboom-plus: Features uncapped framerate, widescreen aspect ratios, FluidSynth
prboom-plus: support, variable gamespeed, re-record, walkcam, chasecam, full
-prboom-plus: full mouselook, fov and other features along with full compatibility
-prboom-plus: with the original Doom/Doom2 engines.
+prboom-plus: mouselook, variable fov and other features along with full
+prboom-plus: compatibility with the original Doom/Doom2 engines.
prboom-plus:
prboom-plus: http://prboom-plus.sourceforge.net