You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/games-arcade/jazz2/jazz2-0.6.6.ebuild

82 lines
1.9 KiB

# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit desktop dotnet wrapper
DESCRIPTION="Open source reimplementation of Jazz Jackrabbit 2"
HOMEPAGE="http://deat.tk/jazz2/"
SRC_URI="https://github.com/deathkiller/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="gles2-only server"
RDEPEND="
dev-lang/mono
media-libs/libopenmpt
media-libs/libsdl2[video]
media-libs/openal
gles2-only? ( media-libs/mesa[gles2] )
!gles2-only? ( virtual/opengl )
"
FRAMEWORK="4.5.2"
DIR="/usr/share/${PN}"
src_prepare() {
default
# Android/WASM only.
rm -r Content/Shaders.ES30/ || die
if use gles2-only; then
rm -r Content/Shaders/ || die
mv Content/_ES20/* Content/ || die
else
rm -r Content/_ES20/ || die
fi
}
src_compile() {
local TARGET
MAIN_TARGETS="Jazz2 $(usex server Jazz2.Server '') Tools/Import"
EXT_TARGETS="OpenTKBackend $(usex gles2-only Es20Backend GL21Backend)"
for TARGET in ${MAIN_TARGETS}; do
cd "${S}/${TARGET}" || die
exbuild "${TARGET##*/}.csproj"
done
for TARGET in ${EXT_TARGETS}; do
cd "${S}/Extensions/${TARGET}" || die
exbuild "${TARGET##*/}.csproj"
done
}
src_install() {
local TARGET
insinto "${DIR}"
# TODO: Package OpenTK.
doins -r Content/ Packages/AdamsLair.OpenTK.*/lib/net*/*
for TARGET in ${MAIN_TARGETS}; do
doins "${TARGET}/Bin/Release/${TARGET##*/}.exe"
done
insinto "${DIR}"/Extensions
for TARGET in ${EXT_TARGETS}; do
doins "Extensions/${TARGET}/Jazz2/Bin/Release/Extensions/${TARGET}.core.dll"
done
make_wrapper ${PN} "mono '${EPREFIX}${DIR}/Jazz2.exe'"
make_wrapper ${PN}-import "mono '${EPREFIX}${DIR}/Import.exe'"
use server && make_wrapper ${PN}-server "mono '${EPREFIX}${DIR}/Jazz2.Server.exe'"
newicon Jazz2/Icon.ico ${PN}.ico
make_desktop_entry ${PN} "Jazz² Resurrection" ${PN}.ico
}