summaryrefslogtreecommitdiff
blob: 37a889de734b8e818ac41f1a179a676ef1bb36b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-simulation/openttd/openttd-0.3.3.ebuild,v 1.2 2004/07/23 22:38:41 mr_bones_ Exp $

inherit games

DESCRIPTION="OpenTTD is a clone of Transport Tycoon Deluxe"
HOMEPAGE="http://www.openttd.com/"
SRC_URI="mirror://sourceforge/openttd/${P}.tar.bz2
	mirror://sourceforge/openttd/openttd-useful.zip"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~ppc"
IUSE="debug png zlib"

DEPEND="virtual/libc
	media-libs/libsdl
	png? ( media-libs/libpng )
	zlib? ( sys-libs/zlib )"
RDEPEND="${DEPEND}
	media-sound/timidity++"
DEPEND="${DEPEND}
	app-arch/unzip"

src_unpack() {
	unpack ${P}.tar.bz2

	# unpack the title screen
	mkdir "${WORKDIR}/useful"
	cd "${WORKDIR}/useful"
	unpack openttd-useful.zip

	# openttd doesn't create ~/.openttd/ so we must do that inside the wrapper
	cat << EOF > "${T}/openttd"
#!/bin/sh
test -d ~/.openttd/ || mkdir -p ~/.openttd
cd ${GAMES_BINDIR}
exec ./ttd -m extmidi "\$@"
EOF

}

src_compile() {
	local myopts="MANUAL_CONFIG=1 UNIX=1 WITH_SDL=1 WITH_NETWORK=1 USE_HOMEDIR=1 PERSONAL_DIR=.openttd GAME_DATA_DIR=${GAMES_DATADIR}/${PN}/"
	use debug && myopts="${myopts} DEBUG=1"
	use png && myopts="${myopts} WITH_PNG=1"
	use zlib && myopts="${myopts} WITH_ZLIB=1"

	emake -j1 ${myopts} || die "emake failed"
}

src_install() {
	dogamesbin "${T}/openttd" ttd || die "dogamesbin failed"

	insinto "${GAMES_DATADIR}/${PN}/data"
	doins data/* "${WORKDIR}/useful/opntitle.dat" || die "doins failed"

	insinto "${GAMES_DATADIR}/${PN}/lang"
	doins lang/*.lng || die "doins failed"

	make_desktop_entry openttd "OpenTTD" openttd.png
	dodoc readme.txt changelog.txt docs/Manual.txt
	prepgamesdirs
}

pkg_postinst() {
	games_pkg_postinst

	einfo "In order to play, you must copy the following 6 files from "
	einfo "the *WINDOWS* version of TTD to ${GAMES_DATADIR}/${PN}/data/"
	echo
	einfo "sample.cat trg1r.grf trgcr.grf trghr.grf trgir.grf trgtr.grf"
	echo
	einfo "If you want music, you must copy the gm/ directory"
	einfo "to ${GAMES_DATADIR}/${PN}/"
	echo
}