forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: portage-2.2.26
- Loading branch information
Michael Sterrett
committed
Apr 7, 2016
1 parent
f152070
commit f71073f
Showing
2 changed files
with
184 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST doomsday-1.14.5.tar.gz 14081857 SHA256 019cd0cf89e69d80cd8f6fbbd3e3fd57b8ae4d0bcdf4285e8a71caad9f46417e SHA512 f8ecf7d213ab57081858226ab4078fcf8f250271be19a3ce5883c01e53c43b5c0e7afc16085703fe19c0cbccb795c7fd1b651e3efb8a8e854160131c6374cd9a WHIRLPOOL 2351129c6dba951ca4975e6f6e92d78c75ad3e8f9648e9129a9f5a3a22c295b25c4fdb87d5208b2d3fe9c0af94c4ff968730929fbc645da9171018a672cfc60e | ||
DIST doomsday-stable-1.15.7.tar.gz 52055761 SHA256 9d833e458e72df7723b7a1b209cc53dc868d070ce7912a53c8c7887b1df933f3 SHA512 8b0ea09a46d88dd7bb8213878401d0eccca960ac08da1b77fb359f92b9a519b3e474007c5e0a42dd44684e909be529710be52b8fabbf62975536a99385fc4d66 WHIRLPOOL 78d40bb932072e2f3380f0a64f807d251ea64efe8e5eca0c7a3360b43be51988ea2b06264a7f7bd1c89e15c4d330dcba4a0c57b612f399a0e15c2c4567d14601 | ||
DIST doomsday-stable-1.15.8.tar.gz 52054238 SHA256 4c7b1dfdb7f0a44257f47322fe58fd1befba8dac10f44594e1be5dac582f43bf SHA512 6d1b86c6e364cbd043b0714eb351113c8bbaf98daddde1bf615fe663c15a763e26d3e478d1adeb6d8a75ed4c89a5a19f3a891e12ea5937ff2fc54b84118f642c WHIRLPOOL 0f660a430c4b036c92d02f5f84be16fb658b4963bcd694ca2cc92476218afcea367c7ff9d159b9cb63d753d5d10b443dbfdc0684c2c28ce78217d92764f7bdb5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,183 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
# TODO: fmod support broken (deng_fmod) | ||
|
||
EAPI=5 | ||
PYTHON_COMPAT=( python2_7 ) | ||
inherit python-r1 eutils qmake-utils games | ||
|
||
DESCRIPTION="A modern gaming engine for Doom, Heretic, and Hexen" | ||
HOMEPAGE="http://www.dengine.net/" | ||
SRC_URI="mirror://sourceforge/deng/Doomsday%20Engine/${PV}/${PN}-stable-${PV}.tar.gz" | ||
|
||
LICENSE="GPL-3+ LGPL-3+" | ||
SLOT="0" | ||
KEYWORDS="~amd64 ~x86" | ||
IUSE="dedicated fluidsynth openal snowberry +doom demo freedoom heretic hexen resources tools" | ||
# we need python at build time, so | ||
# snowberry? ( ${PYTHON_REQUIRED_USE} ) | ||
# could break the build | ||
REQUIRED_USE="${PYTHON_REQUIRED_USE} | ||
demo? ( doom ) freedoom? ( doom ) resources? ( doom )" | ||
|
||
DEPEND=" | ||
dev-qt/qtnetwork:5 | ||
dev-qt/qtopengl:5 | ||
dev-qt/qtwidgets:5 | ||
dev-qt/qtx11extras:5 | ||
dev-qt/qtgui:5 | ||
dev-qt/qtcore:5 | ||
net-misc/curl | ||
sys-libs/zlib | ||
media-libs/assimp | ||
!dedicated? ( | ||
media-libs/libsdl2[joystick,sound] | ||
media-libs/sdl2-mixer | ||
media-libs/libpng:0 | ||
virtual/opengl | ||
virtual/glu | ||
x11-libs/libX11 | ||
x11-libs/libXrandr | ||
x11-libs/libXxf86vm | ||
) | ||
fluidsynth? ( media-sound/fluidsynth ) | ||
openal? ( media-libs/openal ) | ||
tools? ( sys-libs/ncurses:0 )" | ||
RDEPEND="${DEPEND} | ||
!dedicated? ( | ||
snowberry? ( | ||
${PYTHON_DEPS} | ||
dev-lang/python-exec:2[${PYTHON_USEDEP}] | ||
dev-python/wxpython[${PYTHON_USEDEP}] | ||
) | ||
)" | ||
DEPEND="${DEPEND} | ||
${PYTHON_DEPS} | ||
virtual/pkgconfig" | ||
PDEPEND=" | ||
!dedicated? ( | ||
demo? ( games-fps/doom-data ) | ||
freedoom? ( games-fps/freedoom ) | ||
resources? ( games-fps/doomsday-resources ) | ||
)" | ||
|
||
S=${WORKDIR}/${PN}-stable-${PV}/${PN} | ||
|
||
pkg_setup() { | ||
games_pkg_setup | ||
python_setup | ||
} | ||
|
||
src_prepare() { | ||
sed -i \ | ||
-e '/readme.path/s#$$PREFIX#/usr#' \ | ||
client/client.pro server/server.pro || die | ||
|
||
sed -i \ | ||
-e "/DENG_BASE_DIR =/s:\$\$PREFIX/share:${GAMES_DATADIR}:" \ | ||
config_unix.pri || die | ||
|
||
{ | ||
echo "CONFIG += nostrip" | ||
echo "PREFIX=${GAMES_PREFIX}" | ||
|
||
if use dedicated ; then | ||
echo "CONFIG += deng_noclient" | ||
echo "CONFIG += deng_nosnowberry" | ||
else | ||
echo "CONFIG += deng_$(usex snowberry '' no)snowberry" | ||
fi | ||
|
||
use fluidsynth && echo "CONFIG += deng_fluidsynth" | ||
|
||
use tools || echo "CONFIG += deng_notools" | ||
|
||
use openal && echo "CONFIG += deng_openal" | ||
true | ||
|
||
} > config_user.pri || die | ||
} | ||
|
||
#Usage: doom_make_wrapper <name> <game> <icon> <desktop entry title> [args] | ||
doom_make_wrapper() { | ||
local name=$1 game=$2 icon=$3 de_title=$4 | ||
shift 4 | ||
games_make_wrapper $name "doomsday -game ${game} $@" | ||
make_desktop_entry $name "${de_title}" ${icon} | ||
} | ||
|
||
src_configure() { | ||
eqmake5 doomsday.pro | ||
} | ||
|
||
src_install() { | ||
emake INSTALL_ROOT="${D}" install | ||
dodoc "${S}"/../README.md | ||
|
||
mv "${D}/${GAMES_DATADIR}"/{${PN}/data/jdoom,doom-data} || die | ||
dosym "${GAMES_DATADIR}"/doom-data "${GAMES_DATADIR}"/${PN}/data/jdoom | ||
|
||
if use !dedicated ; then | ||
if use snowberry ; then | ||
python_replicate_script "${D}"/"${GAMES_BINDIR}"/launch-doomsday | ||
|
||
installmodules() { | ||
# relocate snowberry module directory recursively into site-packages | ||
python_domodule "${D}/${GAMES_DATADIR}"/${PN}/snowberry | ||
# hack around improper path handling | ||
sed -i \ | ||
-e "s:os.chdir.*$:os.chdir('$(python_get_sitedir)/snowberry'):" \ | ||
"${D%/}$(python_get_scriptdir)"/launch-doomsday || die | ||
} | ||
python_foreach_impl installmodules | ||
# remove old module dir | ||
rm -r "${D}/${GAMES_DATADIR}"/${PN}/snowberry || die | ||
|
||
make_desktop_entry launch-doomsday "Snowberry DoomsDay" snowberry | ||
doicon ../snowberry/graphics/snowberry.png | ||
fi | ||
|
||
if use doom; then | ||
local res_arg | ||
|
||
if use resources; then | ||
res_arg="-def \"${GAMES_DATADIR}\"/${PN}/defs/jdoom/jDRP.ded" | ||
fi | ||
|
||
doicon ../snowberry/graphics/orb-doom.png | ||
doom_make_wrapper jdoom doom1 orb-doom "DoomsDay Engine: Doom 1" "${res_arg}" | ||
elog "Created jdoom launcher. To play Doom place your doom.wad to" | ||
elog "\"${GAMES_DATADIR}\"/doom-data" | ||
elog | ||
|
||
if use demo; then | ||
doom_make_wrapper jdoom-demo doom1-share orb-doom "DoomsDay Engine: Doom 1 Demo" \ | ||
"-iwad \"${GAMES_DATADIR}\"/doom-data/doom1.wad ${res_arg}" | ||
fi | ||
if use freedoom; then | ||
doom_make_wrapper jdoom-freedoom doom1-share orb-doom "DoomsDay Engine: FreeDoom" \ | ||
"-iwad \"${GAMES_DATADIR}\"/doom-data/freedoom/doom1.wad" | ||
fi | ||
fi | ||
if use hexen; then | ||
doicon ../snowberry/graphics/orb-hexen.png | ||
doom_make_wrapper jhexen hexen orb-hexen "DoomsDay Engine: Hexen" | ||
|
||
elog "Created jhexen launcher. To play Hexen place your hexen.wad to" | ||
elog "\"${GAMES_DATADIR}\"/${PN}/data/jhexen" | ||
elog | ||
fi | ||
if use heretic; then | ||
doicon ../snowberry/graphics/orb-heretic.png | ||
doom_make_wrapper jheretic heretic orb-heretic "DoomsDay Engine: Heretic" | ||
|
||
elog "Created jheretic launcher. To play Heretic place your heretic.wad to" | ||
elog "\"${GAMES_DATADIR}\"/${PN}/data/jheretic" | ||
elog | ||
fi | ||
fi | ||
|
||
prepgamesdirs | ||
} |