dragengine-1.30.1 with GUI launcher (#13784)

This commit is contained in:
Plüss Roland
2026-03-03 14:46:38 +00:00
committed by GitHub
parent 4b3ab80b83
commit bcf7680e3f
2 changed files with 20 additions and 125 deletions

View File

@@ -4,11 +4,18 @@ projects based on the Drag[en]gine Game Engine. Games do not compile directly ag
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.
This package provides two launchers.
'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."
games without overhead or in headless mode for server operation.
'delauncher-gui' is a graphical launcher. It allows to examine known games, examine game \
engine modules and manage game profiles allowing to customize launching games. Furthermore \
'.delga' and '.degame' files are linked to the GUI launcher. You can simply double click \
a '.delga' file to run it.
'delauncher-gui' is the recommended launcher to use."
HOMEPAGE="https://dragondreams.ch
https://github.com/LordOfDragons/dragengine"
COPYRIGHT="2020-2024 DragonDreams"
@@ -16,7 +23,7 @@ LICENSE="GNU GPL v3
GNU LGPL v3"
REVISION="1"
SOURCE_URI="https://github.com/LordOfDragons/dragengine/archive/v$portVersion-haiku1.tar.gz"
CHECKSUM_SHA256="0f7c5e6653040ff90f1d493228e8cd11371317d9574d7073fcfe2b3418cb9203"
CHECKSUM_SHA256="df7d5124ed69955dc8e563786a9c4b40c8c77610f5bc9cef4ac877cb95d40d5e"
SOURCE_FILENAME="dragengine-$portVersion-haiku1.tar.gz"
SOURCE_DIR="dragengine-$portVersion-haiku1"
ADDITIONAL_FILES="custom.py"
@@ -34,10 +41,11 @@ PROVIDES="
lib:libdragengine$secondaryArchSuffix = $portVersion compat >= $portVersion
lib:libdelauncher$secondaryArchSuffix = $portVersion compat >= $portVersion
cmd:delauncher_console$secondaryArchSuffix = $portVersion
cmd:delauncher_gui$secondaryArchSuffix = $portVersion
"
# TODO: add "lib:libvpx$secondaryArchSuffix" once package version is updated
REQUIRES="
haiku$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
@@ -47,6 +55,7 @@ REQUIRES="
lib:libtheora$secondaryArchSuffix
lib:libusb_1.0$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libvpx$secondaryArchSuffix
lib:libwebm$secondaryArchSuffix
lib:libwebp$secondaryArchSuffix
lib:libz$secondaryArchSuffix
@@ -61,9 +70,9 @@ REQUIRES_devel="
dragengine$secondaryArchSuffix == $portVersion base
"
# TODO: add "devel:libvpx$secondaryArchSuffix" once package version is updated
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libfreetype$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
@@ -73,6 +82,7 @@ BUILD_REQUIRES="
devel:libtheora$secondaryArchSuffix
devel:libusb_1.0$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libvpx$secondaryArchSuffix
devel:libwebm$secondaryArchSuffix
devel:libwebp$secondaryArchSuffix
devel:libz$secondaryArchSuffix
@@ -85,6 +95,8 @@ BUILD_PREREQUIRES="
cmd:make
cmd:nasm
cmd:patch
cmd:pkg_config$secondaryArchSuffix
cmd:python3.10
cmd:scons
"
@@ -112,7 +124,10 @@ 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
mimeset -f $binDir/delauncher-gui
}

View File

@@ -1,120 +0,0 @@
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-2024 DragonDreams"
LICENSE="GNU GPL v3
GNU LGPL v3"
REVISION="2"
SOURCE_URI="https://github.com/LordOfDragons/dragengine/archive/v$portVersion-haiku2.tar.gz"
CHECKSUM_SHA256="4eab9039b0429cb85628fc9e4a8f2161e7553fe669ab52dec7c5cf47cbccfbd5"
SOURCE_FILENAME="dragengine-$portVersion-haiku2.tar.gz"
SOURCE_DIR="dragengine-$portVersion-haiku2"
ADDITIONAL_FILES="custom.py"
ARCHITECTURES="all !x86_gcc2"
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
"
REQUIRES="
haiku$secondaryArchSuffix
lib:freetype$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:libogg$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libsoundtouch$secondaryArchSuffix
lib:libtheora$secondaryArchSuffix
lib:libusb_1.0$secondaryArchSuffix
lib:libvorbis$secondaryArchSuffix
lib:libvpx1.15$secondaryArchSuffix
lib:libwebm$secondaryArchSuffix
lib:libwebp$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
dragengine${secondaryArchSuffix}_devel = $portVersion
devel:libdragengine$secondaryArchSuffix = $portVersion compat >= $portVersion
devel:libdelauncher$secondaryArchSuffix = $portVersion compat >= $portVersion
"
REQUIRES_devel="
dragengine$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:freetype$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:libogg$secondaryArchSuffix
devel:libopenal$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libsoundtouch$secondaryArchSuffix
devel:libtheora$secondaryArchSuffix
devel:libusb_1.0$secondaryArchSuffix
devel:libvorbis$secondaryArchSuffix
devel:libvpx1.15$secondaryArchSuffix
devel:libwebm$secondaryArchSuffix
devel:libwebp$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:diff
cmd:gawk
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:nasm
cmd:patch
cmd:scons
"
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
}