diff options
Diffstat (limited to 'games/jfsw/jfsw.SlackBuild')
-rw-r--r-- | games/jfsw/jfsw.SlackBuild | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/games/jfsw/jfsw.SlackBuild b/games/jfsw/jfsw.SlackBuild index 2d2fa28a3bd91..bf783c30a5e93 100644 --- a/games/jfsw/jfsw.SlackBuild +++ b/games/jfsw/jfsw.SlackBuild @@ -7,13 +7,21 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. -# 20180710 bkw: +# 20180710 bkw: BUILD=2 # - updated for 20180424_8fc2d54 (latest git). # - finally fix long-standing segfault bug. # - document new optional deps in README. # - make slack-desc show runtime library deps. -# - remove freepats from REQUIRES. I've never been able to get the -# music to play in jfsw anyway. +# - remove freepats from REQUIRES. I've never been able to get +# jfsw to play music using them anyway. +# - expand the section on the full-version sw.grp, move to +# separate README_game_data.txt. Found out about Wanton Destruction, +# it's now documented there too. +# - add README_music.txt, explaining how to get the music working. +# turned out to be quite a lengthy project... +# - expand README a bit, mention gog.com free download. +# - allow fluidsynth builds to work even if fluidsynth built with JACK. +# - add SDL2=no and FLUID=no build options. # When updating to the latest commit of jfsw, we gotta make sure we # get the correct commits of the other 3 sources (jfaudiolib, jfbuild, @@ -30,7 +38,7 @@ PRGNAM=jfsw VERSION=${VERSION:-20180424_8fc2d54} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -112,7 +120,29 @@ find -L . \ # I came up with a band-aid to work around the segfault. Stops the # fire button from working the same as a Y keypress (or at all), in Y/N # prompts. Patch was sent upstream: https://github.com/jonof/jfsw/issues/14 -patch -p1 < $CWD/fixsegfault.diff +patch -p1 < $CWD/patches/fixsegfault.diff + +# 20180712 bkw: one liner attempt to get SDL (1.2 only) CD-audio support +# working. It turns out there's something worse wrong, I can't even get +# the example code from libsdl.org to play a CD (it'll list the tracks, +# but SDL_CDPlayTracks() doesn't work, the drive won't even spin up). +# Since this is SDL 1.2, not 2.x, any attempt to ask for help from an +# SDL developer or expert is going to be answered with "port your code to +# SDL 2.x!", so I'm just documenting CD support in jfsw as being broken. +#patch -p1 < $CWD/patches/sdl_cdrom_fix.diff + +# 20180712 bkw: if fluidsynth happens to have been built with optional +# JACK support, it'll be the default driver and jfsw will try to use it. +# This doesn't actually work, so: +patch -p1 < $CWD/patches/dont_use_jack.diff + +# 20180712 bkw: we have sdl.pc (not sdl1.pc) for SDL 1.2.x: +patch -p1 < $CWD/patches/sdl1_fix.diff + +# 20180712 bkw: upstream doesn't provide a way to override autodetection +# of SDL2 and fluidsynth, so I do it with a couple of patches: +[ "${SDL2:-yes}" = "no" ] && patch -p1 < $CWD/patches/disable_sdl2.diff +[ "${FLUID:-yes}" = "no" ] && patch -p1 < $CWD/patches/disable_fluid.diff # 20180711 bkw: The -Wno-return-type isn't needed for gcc but does no # harm. Left in place in case someone wants to build this with clang @@ -120,7 +150,7 @@ patch -p1 < $CWD/fixsegfault.diff # 20180711 bkw: JFAUDIOLIB_USE_SDLMIXER=1 doesn't work (build fail due # to missing driver_sdlmixer.c). Maybe someday it'll work and then we -# can maybe hear the in-game music? (or not?) +# hear the demo music without having to install fluidsynth? make \ RELEASE=1 \ @@ -128,8 +158,7 @@ make \ CFLAGS="$SLKCFLAGS -Wno-return-type" \ CXXFLAGS="$SLKCFLAGS" -# So far, we haven't got options to disable the optional stuff, but -# at least document what the binary package needs in its slack-desc. +# Document what the binary package needs in its slack-desc. BIN_NAME=sw SDLVER=1.2 WITHFLUID=without |