summaryrefslogtreecommitdiff
blob: 2116e8f4ac8e0f8b4dea8608ba8ea9859137982b (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-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-strategy/netherearth/netherearth-0.52.ebuild,v 1.8 2010/10/12 07:36:45 tupone Exp $

inherit eutils games

MY_PV="${PV/./}"
DESCRIPTION="A remake of the SPECTRUM game Nether Earth."
HOMEPAGE="http://www.braingames.getput.com/nether/"
SRC_URI="http://www.braingames.getput.com/nether/sources.zip
	http://www.braingames.getput.com/nether/${PN}${MY_PV}.zip"

LICENSE="as-is"
SLOT="0"
KEYWORDS="x86"
IUSE=""

RDEPEND=">=media-libs/libsdl-1.2.6-r3
	>=media-libs/sdl-mixer-1.2.5-r1
	media-libs/freeglut"

DEPEND="${RDEPEND}
	app-arch/unzip"

S=${WORKDIR}/sources

data=../nether\ earth\ v${PV}

src_unpack() {
	DATA_DIR=${GAMES_DATADIR}/${PN}

	unzip -LL "${DISTDIR}/${PN}${MY_PV}.zip" >/dev/null || die "unzip ${PN}${MY_PV} failed"
	unzip -LL "${DISTDIR}/sources.zip" >/dev/null || die "unzip sources.zip failed"
	cd "${S}"
	cp "${FILESDIR}/Makefile" . || die "Makefile copying failed"

	# Fix compilation errors/warnings
	epatch "${FILESDIR}"/${P}-linux.patch

	epatch "${FILESDIR}"/${P}-freeglut.patch \
		"${FILESDIR}"/${P}-glibc-212.patch \
		"${FILESDIR}"/${P}-ldflags.patch

	# Modify dirs and some fopen() permissions
	epatch "${FILESDIR}/${P}-gentoo-paths.patch"
	sed -i \
		-e "s:models:${DATA_DIR}/models:" \
		-e "s:textures:${DATA_DIR}/textures:" \
		-e "s:maps/\*:${DATA_DIR}/maps/\*:" \
		-e "s:\./maps:${DATA_DIR}/maps:" \
		mainmenu.cpp || die "sed mainmenu.cpp failed"
	sed -i \
		-e "s:models:${DATA_DIR}/models:g" \
		-e "s:textures:${DATA_DIR}/textures:" \
		-e "s:sound/:${DATA_DIR}/sound/:" \
		nether.cpp || die "sed nether.cpp failed"
	sed -i -e "s:maps:${DATA_DIR}/maps:" \
		main.cpp || die "sed main.cpp failed"
	sed -i -e "s:textures/:${DATA_DIR}/textures/:" \
		myglutaux.cpp || die "sed myglutaux.cpp failed"

	cd "${data}"
	rm textures/thumbs.db
}

src_install() {
	dogamesbin nether_earth || die "dogamesbin failed"

	cd "${data}"

	# Install all game data
	insinto "${DATA_DIR}"
	doins -r maps models sound textures || die "doins failed"

	dodoc readme.txt

	prepgamesdirs
}