games-roguelike/nethack: Update to the newest PR version
[gentoo.git] / games-roguelike / mangband / mangband-1.1.3.ebuild
1 # Copyright 1999-2016 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5 inherit eutils flag-o-matic user
6
7 DESCRIPTION="Online multiplayer real-time roguelike game, derived from Angband."
8 HOMEPAGE="http://www.mangband.org"
9 SRC_URI="http://www.mangband.org/download/${P}.tar.gz"
10
11 #RESTRICT=nomirror # for ebuild debugging
12
13 LICENSE="Moria"
14 SLOT="0"
15 KEYWORDS="~amd64 ~x86"
16 IUSE="ncurses sdl X"
17
18 # Remove this once we hit MAngband 1.2:
19 S="${WORKDIR}/${P}"/src
20
21 RDEPEND="
22         ncurses? ( sys-libs/ncurses:= )
23         sdl? ( media-libs/libsdl )
24         X? ( x11-libs/libX11 )"
25 DEPEND="${RDEPEND}"
26
27 PATCHES=( "${FILESDIR}/${P}-strchr.patch"
28           "${FILESDIR}/${P}-paths.patch" )
29
30 MY_DATADIR=/usr/share/"${PN}"
31 MY_STATEDIR=/var/lib/"${PN}"
32 MY_SYSCONFDIR=/etc
33
34 src_configure() {
35         append-cflags "-DDEFAULT_PATH='\"${MY_DATADIR}\"' -DDEFAULT_PATH_W='\"${MY_STATEDIR}\"'"
36         econf \
37                 $(use_with ncurses gcu) \
38                 $(use_with X x11) \
39                 $(use_with sdl)
40 }
41
42 pkg_setup() {
43         # mangband server uses own user/group:
44         enewgroup mangband
45         enewuser mangband -1 -1 -1 "mangband"
46 }
47
48 src_install() {
49 # Newer versions of MAngband have "make install", so we could use..
50 #    emake DESTDIR="${D}" install
51 #    dodoc NEWS README INSTALL AUTHORS
52 #..but not yet
53
54         dobin mangband mangclient
55
56         # Read-only data
57         insinto "${MY_DATADIR}"
58         doins -r "${WORKDIR}/${P}"/lib/{edit,file,help,text,xtra,user}
59
60         # Server config
61         insinto "${MY_SYSCONFDIR}"
62         doins "${WORKDIR}/${P}"/mangband.cfg
63
64         # Read-write data
65         insinto "${MY_STATEDIR}"
66         doins -r "${WORKDIR}/${P}"/lib/{data,save,user}
67
68         fowners -R mangband:mangband "${MY_STATEDIR}"/{data,save,user}
69         fperms -R 2664 "${MY_STATEDIR}"/{data,save,user}
70         fperms 2775 "${MY_STATEDIR}"/{data,save,user}
71
72         # Docs
73         #dodoc ${WORKDIR}/${P}/LICENSE
74 }
75
76 pkg_postinst() {
77         echo
78         elog "Make sure LibDir is either unset in ~/.mangrc or points to"
79         elog " ${MY_DATADIR} for 'mangclient' to pick it up."
80         elog "Server binary is called 'mangband', and must be run under user"
81         elog " mangband, i.e. 'sudo -u mangband mangband' "
82         echo
83 }