blob: 11724ef824da0229032a0574a0cccfc2818ea61c [file] [log] [blame]
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit eutils multiprocessing python-any-r1 toolchain-funcs games
REVISION="b177-r50edfd37"
DESCRIPTION="Online multi-player platform 2D shooter"
HOMEPAGE="http://www.teeworlds.com/"
SRC_URI="https://downloads.teeworlds.com/${P}-src.tar.gz"
LICENSE="ZLIB"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="debug dedicated"
RDEPEND="
!dedicated? ( media-libs/pnglite
media-libs/libsdl[X,sound,opengl,video]
media-sound/wavpack
virtual/opengl
app-arch/bzip2
media-libs/freetype
virtual/glu
x11-libs/libX11 )
sys-libs/zlib"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
~dev-util/bam-0.4.0"
S=${WORKDIR}/${P}-src
pkg_setup() {
python-any-r1_pkg_setup
games_pkg_setup
}
src_prepare() {
rm -r src/engine/external/* || die
# 01 & 02 from pull request: https://github.com/oy/teeworlds/pull/493
EPATCH_SOURCE="${FILESDIR}/${PV}" EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" \
epatch
cat <<- __EOF__ > "${S}/gentoo.lua"
function addSettings(settings)
print("Adding Gentoo settings")
settings.optimize = 0
settings.cc.exe_c = "$(tc-getCC)"
settings.cc.exe_cxx = "$(tc-getCXX)"
settings.cc.flags_c:Add("${CFLAGS}")
settings.cc.flags_cxx:Add("${CXXFLAGS}")
settings.link.exe = "$(tc-getCXX)"
settings.link.flags:Add("${LDFLAGS}")
end
__EOF__
sed -i \
-e "s#/usr/share/games/teeworlds/data#${GAMES_DATADIR}/${PN}/data#" \
src/engine/shared/storage.cpp || die
}
src_configure() {
bam -v config || die
}
src_compile() {
local myopt
if use debug; then
myopt=" server_debug"
else
myopt=" server_release"
fi
if ! use dedicated; then
if use debug; then
myopt+=" client_debug"
else
myopt+=" client_release"
fi
fi
bam -v -a -j $(makeopts_jobs) ${myopt} || die
}
src_install() {
if use debug; then
newgamesbin ${PN}_srv_d ${PN}_srv
else
dogamesbin ${PN}_srv
fi
if ! use dedicated; then
if use debug; then
newgamesbin ${PN}_d ${PN}
else
dogamesbin ${PN}
fi
doicon "${FILESDIR}"/${PN}.xpm
make_desktop_entry ${PN} Teeworlds
insinto "${GAMES_DATADIR}"/${PN}/data
doins -r data/*
else
insinto "${GAMES_DATADIR}"/${PN}/data/maps
doins -r data/maps/*
fi
newinitd "${FILESDIR}"/${PN}-init.d ${PN}
insinto "/etc/${PN}"
doins "${FILESDIR}"/teeworlds_srv.cfg
dodoc readme.txt
prepgamesdirs
}