blob: 90a4f0a5596d7ff6af0c071b034ce5f6e80ff4e8 (
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-rpg/eternal-lands/eternal-lands-1.0.1.ebuild,v 1.1 2005/01/28 19:59:14 mr_bones_ Exp $
inherit games
TMP_PV=${PV%_p*}
DESCRIPTION="An online MMORPG written in C and SDL"
HOMEPAGE="http://www.eternal-lands.com"
SRC_URI="http://el.tfm.ro/el_${TMP_PV//.}.zip
ftp://ftp.berlios.de/pub/elc/elc_${PV//.}.tgz
mapeditor? ( ftp://ftp.berlios.de/pub/elc/mapedit_${PV//.}.tgz )
!nomusic? ( http://el.tfm.ro/el_music_${PV//.}.zip )"
LICENSE="eternal_lands"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc nomusic mapeditor"
RDEPEND="virtual/x11
virtual/opengl
>=media-libs/libsdl-1.2.5
>=media-libs/sdl-net-1.2.5
>media-libs/openal-20020127
media-libs/libvorbis
>=dev-libs/libxml2-2.6.7
mapeditor? ( <x11-libs/gtk+-1.3 )"
DEPEND="${RDEPEND}
app-arch/unzip
doc? ( >=app-doc/doxygen-1.3.8
>=media-gfx/graphviz-1.10)"
src_unpack() {
OPTIONS="OPTIONS=-DDATA_DIR="\\\\\"${GAMES_DATADIR}/${PN}/\\\\\"" "
S_CLIENT="${WORKDIR}/elc"
S_MAPEDITOR="${WORKDIR}/map_editor"
unpack ${A}
use amd64 && OPTIONS="${OPTIONS} -DX86_64"
cd "${S_CLIENT}"
sed \
-e "s@CFLAGS=\$(PLATFORM) -Wall -O -Werror -ggdb -pipe @CFLAGS=${CFLAGS} @g" \
-e "s@OPTIONS=@${OPTIONS} @g" \
Makefile.linux > Makefile \
|| die "sed failed"
sed \
-e 's/#browser/browser/g' \
-e 's/browser = mozilla/#browser = mozilla/g' \
-e "s@#data_dir = /usr/local/games/el/@#data_dir = ${GAMES_DATADIR}/${PN}/@g" \
el.ini > ../el.ini \
|| die "sed failed"
if use mapeditor; then
cd ${S_MAPEDITOR}
sed \
-e "s@CFLAGS=@CFLAGS=${CFLAGS} @g" \
-e "s@OPTIONS=@${OPTIONS} @g" \
Makefile.linux > Makefile \
|| die "sed failed"
sed \
-e "s@#data_dir = /usr/local/games/el/@#data_dir = ${GAMES_DATADIR}/${PN}/@g" \
mapedit.ini > ../mapedit.ini \
|| die "sed failed"
mv browser.lst ../browser.lst
fi
cd ${WORKDIR}
cp license.txt EULA || die "cp failed"
cp changes.txt ChangeLog || die "cp failed"
}
src_compile() {
cd ${S_CLIENT}
emake || die "emake failed"
cp el.x86.linux.bin ../el.x86.linux.bin || die "cp failed"
if use doc; then
emake docs || die "Failed to create documentation, try with USE=-docs"
mv ./docs/html/ ../client || die "Failed to move documentation directory"
fi
if use mapeditor; then
cd ${S_MAPEDITOR}
emake || die "emake failed"
cp mapedit.x86.linux.bin ../mapedit.x86.linux.bin || die "cp failed"
fi
}
src_install () {
cd "${WORKDIR}"
newgamesbin el.x86.linux.bin el || die "newgamesbin failed"
if use mapeditor; then
newgamesbin mapedit.x86.linux.bin el-mapedit \
|| die "newgamesbin failed"
fi
dodoc ChangeLog EULA
insinto "${GAMES_DATADIR}/${PN}"
doins *.ini entrable.lst harvestable.lst el_icon.png icon.bmp \
global_filters.txt local_ignores.txt e3dlist.txt \
|| die "doins failed"
if use mapeditor; then
doins browser.lst || die "doins failed"
fi
cp -R 2dobjects 3dobjects languages maps md2 particles sound textures tiles \
"${D}/${GAMES_DATADIR}/${PN}" \
|| die "copy failed"
if ! use nomusic; then
cp -R music "${D}/${GAMES_DATADIR}/${PN}" || die "cp failed"
fi
if use doc; then
dohtml -r "${WORKDIR}/client/"*
fi
if use mapeditor; then
dohtml "${WORKDIR}/mapeditor.html"
dohtml -r "${WORKDIR}/mapeditor"
fi
prepgamesdirs
}
pkg_postinst() {
games_pkg_postinst
echo
einfo "To run the game: el"
einfo "Copy ${GAMES_DATADIR}/${PN}/el.ini to ~/.elc/"
einfo "to make per-user changes."
echo
if use mapeditor; then
einfo "To use the map editor: el-mapedit"
einfo "Copy ${GAMES_DATADIR}/${PN}/mapedit.ini to ~/.elc/"
einfo "to make per-user changes."
echo
einfo "To read an introduction to the map editor, read"
einfo "/usr/share/doc/${PF}/html/mapeditor.html"
echo
fi
if use doc; then
einfo "The documentation for the client source can be found"
einfo "in /usr/share/doc/${PF}/html/index.html"
echo
fi
}
|