855bc50894ea48dcb5488dd982407926791d2504
[gentoo-interactive-fiction.git] / games-engines / gargoyle / gargoyle-2011.1.ebuild
1 # Copyright 1999-2011 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 # Regarding licenses: libgarglk is licensed under the GPLv2. Bundled
6 # interpreters are licensed under GPLv2, BSD or MIT license, except:
7 #   - glulxe: custom license, see "terps/glulxle/README"
8 #   - hugo: custom license, see "licenses/HUGO License.txt"
9 # Since we don't compile or install any of the bundled fonts, their licenses
10 # don't apply. (Fonts are installed through dependencies instead.)
11
12 MY_PV="2011.1"
13 MY_P="${PN}-${MY_PV}"
14
15 EAPI=3
16
17 inherit eutils games
18
19 DESCRIPTION="An Interactive Fiction (IF) player supporting all major formats"
20 HOMEPAGE="http://ccxvii.net/gargoyle/"
21 SRC_URI="http://garglk.googlecode.com/files/${MY_P}-sources.zip"
22
23 LICENSE="BSD GPL-2 MIT Hugo Glulxe"
24 SLOT="0"
25 KEYWORDS="amd64 x86"
26
27 RDEPEND="media-libs/freetype:2
28         virtual/jpeg
29         media-libs/libpng
30         media-fonts/liberation-fonts
31         >=media-fonts/libertine-ttf-5
32         sys-libs/zlib
33         x11-libs/gtk+:2
34         media-libs/sdl-mixer
35         media-libs/sdl-sound"
36
37 DEPEND="${RDEPEND}
38         app-arch/unzip
39         dev-util/ftjam"
40
41 src_prepare() {
42         # Substitute custom CFLAGS/LDFLAGS.
43         sed -i -e \
44                 "/^\s*OPTIM = / {
45                         s/ \(-O.*\)\? ;/ ${CFLAGS} ;/
46                         a LINKFLAGS = ${LDFLAGS} ;
47                         a SHRLINKFLAGS = ${LDFLAGS} ;
48                 }" Jamrules || die
49
50         # Convert garglk.ini to UNIX format.
51         edos2unix garglk/garglk.ini
52
53         # The font name of Linux Libertine changed in version 5.
54         sed -i -e 's/Linux Libertine O/Linux Libertine/g' garglk/garglk.ini
55 }
56
57 src_compile() {
58         jam \
59                 -sGARGLKINI="${GAMES_SYSCONFDIR}/garglk.ini" \
60                 -sUSESDL=yes \
61                 -sBUNDLEFONTS=no \
62                 || die
63 }
64
65 src_install() {
66         DESTDIR="${D}" \
67         _BINDIR="${GAMES_PREFIX}/libexec/${PN}" \
68         _APPDIR="${GAMES_PREFIX}/libexec/${PN}" \
69         _LIBDIR="$(games_get_libdir)" \
70         EXEMODE=755 \
71         FILEMODE=755 \
72         jam install || die
73
74         # Install config file.
75         insinto "${GAMES_SYSCONFDIR}"
76         newins garglk/garglk.ini garglk.ini || die
77
78         # Install application entry and icon.
79         insinto /usr/share/applications
80         doins garglk/${PN}.desktop || die
81         doicon garglk/${PN}-house.png || die
82
83         # Symlink binaries to avoid name clashes.
84         for terp in advsys agility alan2 alan3 frotz geas git glulxe hugo jacl \
85                 level9 magnetic nitfol scare tadsr
86         do
87                 dosym "${GAMES_PREFIX}/libexec/${PN}/${terp}" \
88                         "${GAMES_BINDIR}/${PN}-${terp}" || die
89         done
90
91         # Also symlink the main binary since it resides in libexec.
92         dosym "${GAMES_PREFIX}/libexec/${PN}/${PN}" \
93                 "${GAMES_BINDIR}/${PN}" || die
94
95         prepgamesdirs
96 }