Files
haikuports/games-fps/chocolate-doom/chocolate_doom-3.1.1.recipe
2026-01-07 07:40:26 +01:00

104 lines
3.1 KiB
Bash

SUMMARY="Doom source port that accurately reproduces the experience of Doom"
DESCRIPTION="Chocolate Doom is a source port of the game Doom, by id Software. \
The purpose of Chocolate Doom is to be as compatible as possible with the \
original DOS version of Doom.
Chocolate Doom also provides Chocolate Heretic, Hexen and Strife, accurate \
source ports of their respective games.
The binaries will look for .wad files in:
* ~/config/non-packaged/data/chocolate-doom
* ~/config/non-packaged/data/doomdata
* ~/config/non-packaged/data/doom
* ~/config/non-packaged/data/games/doom
* ~/doom
* /boot/system/non-packaged/data/doomdata
* Any compatible game data package
The binaries can be also used via command-line with the -iwad command.
Example: 'chocolate-doom -iwad /path/to/doom.wad'"
HOMEPAGE="https://www.chocolate-doom.org/"
COPYRIGHT="Id Software Inc. 1993-1996
Simon Howard
James Haley
Samuel Villarreal"
LICENSE="GNU GPL v2"
REVISION="2"
SOURCE_URI="https://github.com/chocolate-doom/chocolate-doom/archive/refs/tags/chocolate-doom-$portVersion.tar.gz"
CHECKSUM_SHA256="1edcc41254bdc194beb0d33e267fae306556c4d24110a1d3d3f865717f25da23"
SOURCE_DIR="chocolate-doom-chocolate-doom-$portVersion"
PATCHES="chocolate_doom-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
chocolate_doom$secondaryArchSuffix = $portVersion
cmd:chocolate_doom = $portVersion
cmd:chocolate_doom_setup = $portVersion
cmd:chocolate_heretic = $portVersion
cmd:chocolate_heretic_setup = $portVersion
cmd:chocolate_hexen = $portVersion
cmd:chocolate_hexen_setup = $portVersion
cmd:chocolate_server = $portVersion
cmd:chocolate_strife = $portVersion
cmd:chocolate_strife_setup = $portVersion
engine:doom
engine:doom_extra
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libsamplerate$secondaryArchSuffix
lib:libsdl2_2.0$secondaryArchSuffix
lib:libsdl2_mixer_2.0$secondaryArchSuffix
lib:libsdl2_net_2.0$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
#devel:libfluidsynth$secondaryArchSuffix # Optional, isn't found during build
devel:libpng16$secondaryArchSuffix
devel:libsamplerate$secondaryArchSuffix
devel:libsdl2_2.0$secondaryArchSuffix
devel:libsdl2_mixer_2.0$secondaryArchSuffix
devel:libsdl2_net_2.0$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoreconf
cmd:awk
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python3
"
BUILD()
{
# Avoid "multiple definition" linker errors under "src/hexen/"
export LDFLAGS="-z muldefs"
# "__dummy__" is just a placeholder, because the makefiles use "$docdir/../chocolate_xxx"
docdir=$prefix/documentation/packages/chocolate_doom/__dummy__
autogen.sh
runConfigure --omit-dirs "binDir docDir" ./configure \
--bindir=$prefix/bin \
--docdir=$docdir
make $jobArgs
}
INSTALL()
{
# Unused install targets are: install-data (contains icons)
make install install-exec install-man
# clean-up
rm -rf $prefix/share
rm -rf $prefix/documentation/packages/chocolate_doom/__dummy__
}