diff options
-rw-r--r-- | games/gzdoom/README | 18 | ||||
-rw-r--r-- | games/gzdoom/README_SBo.txt | 37 | ||||
-rw-r--r-- | games/gzdoom/README_versions.txt | 28 | ||||
-rw-r--r-- | games/gzdoom/gzdoom.SlackBuild | 77 | ||||
-rw-r--r-- | games/gzdoom/gzdoom.info | 8 | ||||
-rw-r--r-- | games/gzdoom/window_title_version.diff | 14 |
6 files changed, 43 insertions, 139 deletions
diff --git a/games/gzdoom/README b/games/gzdoom/README index 372c90f18f..7755b41bfe 100644 --- a/games/gzdoom/README +++ b/games/gzdoom/README @@ -1,19 +1,9 @@ Enhanced OpenGL port of the official DOOM source code that also supports Heretic, Hexen, and Strife. -Optional compile-time dependencies: fluidsynth and OpenAL. These are -auto-detected. +This is the latest version of gzdoom, which may not run well on +older/slower systems. If gzdoom does't run smoothly on your system, +try installing gzdoom-legacy instead. Note that gzdoom and gzdoom-legacy +conflict: only install one or the other. See README_SBo.txt for optional runtime dependencies. - -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 -config file location has changed. To keep your old settings: - - mkdir -p ~/.config/gzdoom - cp ~/.gzdoom/zdoom.ini ~/.config/gzdoom/gzdoom.ini - -If you're upgrading from gzdoom 1.7 or 1.8: - mv ~/.config/gzdoom/zdoom.ini ~/.config/gzdoom/gzdoom.ini diff --git a/games/gzdoom/README_SBo.txt b/games/gzdoom/README_SBo.txt index 66d71b6d5e..1fac7e489e 100644 --- a/games/gzdoom/README_SBo.txt +++ b/games/gzdoom/README_SBo.txt @@ -14,42 +14,23 @@ of these slackbuilds.org packages to get a playable game: - hexen_demo_data - chexquest3 -Sound Backend -------------- -The default sound backend is FMOD. If OpenAL was found when the package -was built, it can be used instead of FMOD. From the main menu: - -Options -> Sound Options -> Sound Backend. - -If you have issues with positional audio, try switching to OpenAL. However, -some mods (notably Brutal Doom) require FMOD for correct audio support. -Unfortunately there are probably some other mods that only work with -OpenAL :( - -If you use FMOD, set "FMOD Options -> Output System" to either "ALSA" -or "PulseAudio". Otherwise, the default is OSS emulation, which doesn't -share the soundcard nicely with other apps. - Music Support ------------- To hear the in-game music, there are several options. In the game menu, select "Options | Sound Options" and set "MIDI Device" to one of the below: -1. FMOD (the default) - Install ff8dls and set the console variable -snd_midipatchset to "/usr/share/sounds/dls/ff8.dls" (from the in-game -console or by editing ~/.config/gzdoom/zdoom.ini). Alternatively, -if you dual-boot with Windows, use something like -/dosC/windows/system32/drivers/gm.dls (replace dosC with the mountpoint -of your C: drive in Windows). - -2. FluidSynth - Install fluidsynth (before building gzdoom) and -fluid-soundfont. +1. FluidSynth - Install fluidsynth and fluid-soundfont. These are runtime +dependencies (no need to rebuild gzdoom). -3. Timidity - Install TiMidity++ and either eawpats or freepats, and -set up /etc/timidity/timidity.cfg to use it. +2. Timidity - Install TiMidity++ and either eawpats or freepats (all +runtime dependencies), and set up /etc/timidity/timidity.cfg to use +it. This uses more CPU than FluidSynth, and may make the framerate +stutter and jerk even on high-end systems. -4. GUS or OPL - Nothing extra required; these are software emulations +3. GUS or OPL - Nothing extra required; these are software emulations of classic soundcards from the early 1990s. They may sound "clunky" to modern ears, but they may also bring back fond memories for long-time Doom players. + +gzdoom also supports WildMIDI, but this is currently not available on SBo. diff --git a/games/gzdoom/README_versions.txt b/games/gzdoom/README_versions.txt deleted file mode 100644 index 5847cfca2e..0000000000 --- a/games/gzdoom/README_versions.txt +++ /dev/null @@ -1,28 +0,0 @@ - -This SlackBuild script can be used to build older versions -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.4.0 - latest version of gzdoom (best choice for fast modern systems). - -By default, 2.4.0 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 -file, and copy the lines below: - -For 1.8.09: - -VERSION="1.8.09" -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 -in the .info file, if you like). - -For 1.9.1: - -VERSION="1.9.1" -DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g1.9.1.tar.gz" -MD5SUM="0fb38fcf73084f9a798f9d3af643d02e" diff --git a/games/gzdoom/gzdoom.SlackBuild b/games/gzdoom/gzdoom.SlackBuild index c024f5d97e..b9f3a6a28d 100644 --- a/games/gzdoom/gzdoom.SlackBuild +++ b/games/gzdoom/gzdoom.SlackBuild @@ -6,53 +6,19 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. -# 20170324 bkw: -# - Updated for 2.4.0. - -# 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 -# fmodapi version on SBo hasn't been upgraded in forever. So this -# build now uses its own dedicated fmodapi, which installs to -# a private directory (won't conflict with system fmodapi, if present). - -# 20160928 bkw: -# - Updated for 2.2.0. 1.9.1 and 1.8.09 still work, too. - -# 20160803 bkw: -# - Updated for 2.1.1. Also for 1.9.1 and 1.8.09 (see README_versions.txt) -# - Update .info for new HOMEPAGE -# - Upstream's now doing releases on github, so README.source is -# no longer needed. -# - Install executable in /usr/games, not /usr/bin -# - Get rid of -j1 on make command (parallel builds work now) -# - Make the game version show up in the window title, instead -# of <unknown version>. -# - Fix VERSIONSTR if it's wrong. -# - i486 => i586 - -# 20140305 bkw: -# - Moved giant block comments about the source to README.source, -# updated them to reflect upstream's change from svn to git. -# - Updated for 1.8.2 (sort-of; see README.source) - -# 20130612 bkw: Updated for 1.8.00 - -# 20130416 bkw: -# - Updated for 1.7.01 -# - Add README note about config file location change -# - Split up giant README -# - Fix CRLF endings in usr/doc/gzdoom-*/* -# - Add WTFPL +# 20170608 bkw: +# - Updated for 3.1.0. fmodapi support has been removed by upstream, so +# it's no longer a dep. +# - Add OpenAL as a dep. Technically it's not required, as gzdoom will +# happily compile & run without it... but it won't be able to make +# any sound at all. Nobody wants this. If you disagree with my decision +# to make OpenAL a hard dep, I don't want to hear about it (you won't +# be able to make sound anyway, so I won't have to...) +# - Stop supporting old versions of gzdoom. The old versions are now +# supported as "gzdoom-legacy" for those that need them. PRGNAM=gzdoom -VERSION=${VERSION:-2.4.0} +VERSION=${VERSION:-3.1.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -101,26 +67,22 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ -# 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 - # gzdoom in windowed mode wants to display its git tag and hash as part # of the window title. For releases this shows up as "<unknown version> 0", # which doesn't hurt anything but is ugly. # This makes the window title appear as e.g. "GZDOOM 2.1.1 (Aug 3 2016)". The # date is the build date. patch -p1 < $CWD/window_title_version.diff - -# Sometimes upstream forgets to bump the version number, so the window -# title will read 1.8.08 for version 1.8.09, eg. -sed -i "/#define *VERSIONSTR/s,\"[^\"]*\",\"$VERSION\"," src/version.h +sed -i "/#define *VERSIONSTR/s,GIT_DESCRIPTION,\"$VERSION\"," src/version.h # This isn't currently used, but was in the past, and will be again I'm sure. [ -e $CWD/compilefix.$VERSION.diff ] && \ patch -p1 < $CWD/compilefix.$VERSION.diff +# 3.1.0 started needing -DNDEBUG. Using ld.gold speeds up the final link +# enough to be worth using (saves 17+ sec on my test box). +SLKCFLAGS="$SLKCFLAGS -DNDEBUG -fuse-ld=gold" + mkdir -p build cd build cmake \ @@ -129,18 +91,11 @@ cd build -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 install -m0755 -s $PRGNAM $PKG/usr/games/$PRGNAM install -m0644 *.pk3 $PKG/usr/share/games/doom/ - - # If fmodapi support was compiled in: - if [ -e liboutput_sdl.so ]; then - mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM - install -m0755 -s liboutput_sdl.so $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/liboutput_sdl.so - fi cd .. # .desktop written for this SlackBuild diff --git a/games/gzdoom/gzdoom.info b/games/gzdoom/gzdoom.info index 503435a8f1..f4f25921f8 100644 --- a/games/gzdoom/gzdoom.info +++ b/games/gzdoom/gzdoom.info @@ -1,10 +1,10 @@ PRGNAM="gzdoom" -VERSION="2.4.0" +VERSION="3.1.0" HOMEPAGE="http://gzdoom.drdteam.org/" -DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g2.4.0/gzdoom-g2.4.0.tar.gz" -MD5SUM="2337388b44cd206ddbb3a2c44c78d3cc" +DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g3.1.0/gzdoom-g3.1.0.tar.gz" +MD5SUM="fe69a6c2251a3a702660c70c71744362" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="SDL2 fmodapi" +REQUIRES="SDL2 OpenAL" MAINTAINER="B. Watson" EMAIL="yalhcru@gmail.com" diff --git a/games/gzdoom/window_title_version.diff b/games/gzdoom/window_title_version.diff index 749b655465..253c88207f 100644 --- a/games/gzdoom/window_title_version.diff +++ b/games/gzdoom/window_title_version.diff @@ -1,7 +1,13 @@ -diff -Naur gzdoom-g2.1.1.orig/src/gitinfo.cpp gzdoom-g2.1.1/src/gitinfo.cpp ---- gzdoom-g2.1.1.orig/src/gitinfo.cpp 2016-02-23 04:20:43.000000000 -0500 -+++ gzdoom-g2.1.1/src/gitinfo.cpp 2016-08-03 15:18:12.164389643 -0400 -@@ -44,22 +44,15 @@ +diff -Naur gzdoom-g3.1.0/src/gitinfo.cpp gzdoom-g3.1.0.patched/src/gitinfo.cpp +--- gzdoom-g3.1.0/src/gitinfo.cpp 2017-05-31 06:11:33.000000000 -0400 ++++ gzdoom-g3.1.0.patched/src/gitinfo.cpp 2017-06-10 16:21:51.138003050 -0400 +@@ -39,27 +39,20 @@ + + const char *GetGitDescription() + { +- return GIT_DESCRIPTION; ++ return VERSIONSTR; + } const char *GetGitHash() { |