0
0
Fork 0
haikuports/games-engines/dragengine/dragengine-1.6.recipe

109 lines
3.8 KiB
Bash

SUMMARY="Drag[en]gine Game Engine"
DESCRIPTION="Provides the game engine and launchers required to run games and other \
projects based on the Drag[en]gine Game Engine. Games do not compile directly against \
the game engine. Instead there is one shared installation on the system relying on \
launchers to handle all the initialization and maintenance work.
This package provides one launcher.
'delauncher-console' is a console based launcher. It is the most basic launcher just \
able to run the game without providing any additional tools. It can be used to run \
games without overhead or in headless mode for server operation."
HOMEPAGE="https://dragondreams.ch
https://github.com/LordOfDragons/dragengine"
COPYRIGHT="2020-2021 DragonDreams"
LICENSE="GNU GPL v3
GNU LGPL v3"
REVISION="3"
HAIKU_PATCH="-haiku3"
SOURCE_URI="https://github.com/LordOfDragons/dragengine/archive/v$portVersion$HAIKU_PATCH.tar.gz"
CHECKSUM_SHA256="8592ce66859e45434cc633c9c5b92c36a8d4d40be7fb9e575d45e0af95c1817d"
SOURCE_FILENAME="dragengine-$portVersion.tar.gz"
SOURCE_DIR="dragengine-$portVersion$HAIKU_PATCH"
ADDITIONAL_FILES="custom.py"
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
# sources contain various external library distributions for in-tree building.
# this creates vary large sources package. since the URL to the GitHub repository
# is included in the recipe there is no need for such a large source package.
DISABLE_SOURCE_PACKAGE="yes"
PROVIDES="
dragengine$secondaryArchSuffix = $portVersion
lib:libdragengine$secondaryArchSuffix = $portVersion compat >= $portVersion
lib:libdelauncher$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:delauncher_console$secondaryArchSuffix = $portVersion
"
PROVIDES_devel="
dragengine${secondaryArchSuffix}_devel = $portVersion
devel:libdragengine$secondaryArchSuffix = $portVersion compat >= $portVersion
devel:libdelauncher$secondaryArchSuffix = $portVersion compat >= $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libtheora$secondaryArchSuffix
lib:libz$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libusb_1.0$secondaryArchSuffix
lib:libsoundtouch$secondaryArchSuffix
"
REQUIRES_devel="
dragengine$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libgl$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libopenal$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libtheora$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:libusb_1.0$secondaryArchSuffix
devel:libsoundtouch$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:scons
cmd:patch
cmd:gawk
cmd:make
"
BUILD()
{
cp -f $portDir/additional-files/custom.py custom.py
echo "" >>custom.py
echo "# package builder injected path" >>custom.py
echo "prefix = '$prefix'" >>custom.py
echo "libdir = '$libDir'" >>custom.py
echo "includedir = '$includeDir'" >>custom.py
echo "datadir = '$dataDir'" >>custom.py
echo "sysconfdir = '$settingsDir'" >>custom.py
echo "execdir = '$binDir'" >>custom.py
echo "docdir = '$manDir'" >>custom.py
# scons $jobArgs build
# scons crashes with multi-thread in some situations. this is a python problem especially with version 3 onwards
scons -j 1 build
}
INSTALL()
{
scons --config=cache -j 1 install_engine_runtime dragengine_develop
scons --config=cache -j 1 delauncher_runtime delauncher_develop
# scons --config=cache -j 1 install_igde_runtime deigde_shared_develop
prepareInstalledDevelLib libdragengine
prepareInstalledDevelLib libdelauncher
packageEntries devel $developDir
}