]> Pileus Git - ~andy/sunrise/blob - games-fps/assaultcube/assaultcube-1.0.4.ebuild
sunrise/ net-nntp/nzbperl/Manifest: Update copyright line to satisfy repoman
[~andy/sunrise] / games-fps / assaultcube / assaultcube-1.0.4.ebuild
1 # Copyright 1999-2012 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 EAPI=2
6
7 inherit eutils games multilib toolchain-funcs
8
9 DESCRIPTION="Fast and fun first-person-shooter based on the Cube fps"
10 HOMEPAGE="http://assault.cubers.net"
11 MY_PN="AssaultCube"
12 MY_PV_BASE=1.0.2
13 SRC_URI="mirror://sourceforge/actiongame/${MY_PN}_v${MY_PV_BASE}.tar.bz2
14         mirror://sourceforge/actiongame/${MY_PN}_v${PV}-Update.tar.bz2"
15
16 LICENSE="ZLIB"
17 SLOT="0"
18 KEYWORDS="~amd64 ~x86"
19 IUSE="dedicated doc opengl"
20
21 RDEPEND="opengl? (
22                 media-libs/libsdl
23                 media-libs/libogg
24                 media-libs/libvorbis
25                 media-libs/openal
26                 media-libs/sdl-image
27                 virtual/opengl
28                 x11-libs/libX11 )"
29 DEPEND="${RDEPEND}
30         media-libs/netpbm
31         >=net-libs/enet-1.2.1"
32
33 S=${WORKDIR}/${MY_PN}_v${MY_PV_BASE}
34
35 pkg_setup() {
36         if ! use dedicated && ! use opengl ; then
37                 eerror "You need to set USE=dedicated for game server or USE=opengl for game client."
38                 die
39         fi
40 }
41
42 src_unpack() {
43         unpack ${MY_PN}_v${MY_PV_BASE}.tar.bz2
44         cd "${S}" || die
45         unpack ${MY_PN}_v${PV}-Update.tar.bz2
46 }
47
48 src_prepare() {
49         rm -r bin_unix/* source/include || die
50         find packages -name readme.txt -exec rm -f {} + || die
51         winicontoppm icon.ico | ppmtoxpm > ${PN}.xpm || die
52
53         sed -i -e "/^CUBE_DIR=/d ; 2iCUBE_DIR=$(games_get_libdir)/${PN}" ${PN}.sh server.sh || die
54         sed -i -e "s:bin_unix/\${SYSTEM_NAME}\${MACHINE_NAME}:ac_:" ${PN}.sh server.sh || die
55         sed -i -e "s:cd \${CUBE_DIR}:cd ${GAMES_DATADIR}/${PN}:" ${PN}.sh server.sh || die
56 }
57
58 src_compile() {
59         tc-export CXX
60         emake -C source/src CXXOPTFLAGS="${CXXFLAGS}" libenet || die
61         if use opengl ; then
62                 emake -C source/src CXXOPTFLAGS="${CXXFLAGS}" client || die
63         fi
64         if use dedicated ; then
65                 emake -C source/src CXXOPTFLAGS="${CXXFLAGS}" server || die
66         fi
67 }
68
69 src_install() {
70         insinto "${GAMES_DATADIR}/${PN}"
71         doins -r bot config packages || die
72
73         exeinto "$(games_get_libdir)/${PN}"
74         if use opengl ; then
75                 doexe source/src/ac_client || die
76                 newgamesbin ${PN}.sh ${PN} || die
77                 make_desktop_entry ${PN} ${MY_PN} ${PN}
78         fi
79         if use dedicated ; then
80                 doexe source/src/ac_server || die
81                 newgamesbin server.sh ${PN}-server || die
82                 make_desktop_entry ${PN}-server "${MY_PN} Server" ${PN}
83         fi
84         insinto /usr/share/pixmaps
85         doins ${PN}.xpm || die
86
87         if use doc ; then
88                 rm -r docs/autogen || die
89                 dohtml -r docs/* || die
90         fi
91
92         prepgamesdirs
93 }