blob: e525d4829086a1855ada3c2e111774ec4eca2473 (
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
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-action/d1x/d1x-20040118.ebuild,v 1.5 2005/09/25 07:13:41 mr_bones_ Exp $
inherit eutils games
DESCRIPTION="Descent 1 Source Project"
HOMEPAGE="http://d1x.warpcore.org"
SRC_URI="mirror://gentoo/${P}.tar.bz2 mirror://gentoo/descent1.5-patch.tar.bz2"
LICENSE="Descent1 D1X"
SLOT="0"
KEYWORDS="x86"
IUSE="opengl"
RDEPEND="media-libs/libsdl
opengl? (
virtual/opengl
media-libs/libpng
sys-libs/zlib
)"
DEPEND="${RDEPEND}
>=dev-lang/nasm-0.97"
S=${WORKDIR}/${PN}
pkg_setup() {
cdrom_get_cds descent
games_pkg_setup
}
src_unpack() {
unpack ${A}
mkdir "${WORKDIR}/descent1-data" || die
# Copy data files
cd "${CDROM_ROOT}/descent" || die
cp chaos.hog chaos.msn descent.b50 descent.dem descent.hog \
descent.m50 descent.phx descent.pig descent2.adv descentg.ini \
level18.dem miniboss.dem readme.txt descent.faq orderfrm.txt \
devteam.pcx \
"${WORKDIR}/descent1-data" || die
# Apply 1.0 -> 1.5 patch
cd "${WORKDIR}/descent1.5-patch" || die
for x in *.patch; do
if patch "${WORKDIR}/descent1-data/${x%%.patch}" < "${x}" &>/dev/null ; then
einfo "Patched ${x%%.patch} to version 1.5"
fi
done
cd "${S}" || die
epatch "${FILESDIR}/d1x-missiondir.patch" || die
cp defines.in defines.mak || die
epatch "${FILESDIR}/d1x-makefile-linux.patch" || die
if use opengl; then
sed -i -e 's/^#\(SDLGL_IO = 1\)/\1/' defines.mak || die
else
sed -i -e 's/^#\(SDL_IO = 1\)/\1/' defines.mak || die
fi
sed -i \
-e 's/make /$(MAKE) /' \
makefile rules.mak default.mak \
|| die "sed failed"
binname="d1x143"
if use opengl; then
binname="d1x143_ogl"
fi
cat > "${T}"/d1x <<-EOS
#!/bin/sh
if [ ! -e "\${HOME}/.d1x" ]; then
mkdir "\${HOME}/.d1x"
cp "${GAMES_DATADIR}/d1x/d1x.ini" "\${HOME}/.d1x/"
fi
cd "\${HOME}/.d1x/"
exec "${GAMES_LIBDIR}"/${PN}/${binname} -missiondir "${GAMES_DATADIR}/d1x" "\$@"
EOS
}
src_compile() {
emake dep || die
emake -j1 || die
}
src_install() {
# Install D1X documentation
cd "${S}"
dodoc d1x.faq d1x.txt d1x140.txt readme.d1x readme.org todo.txt \
bugs.txt || die
# Copy data files
cd "${WORKDIR}/descent1-data" || die
insinto "${GAMES_DATADIR}/d1x"
doins chaos.hog chaos.msn descent.b50 descent.dem descent.hog \
descent.m50 descent.phx descent.pig descent2.adv descentg.ini \
level18.dem miniboss.dem || die
# Install original documentation files
dodoc "readme.txt" "descent.faq" "orderfrm.txt" "devteam.pcx"
# Copy d1x.ini
cd "${S}"
insinto "${GAMES_DATADIR}/d1x"
doins d1x.ini || die
# Install the binary executable
insinto "${GAMES_LIBDIR}/${PN}"
insopts -m0750
doins "${binname}"
dogamesbin "${T}/d1x" || die "dogamesbin failed"
prepgamesdirs
}
pkg_postinst() {
games_pkg_postinst
echo
einfo "You may want to install the additional map package, which contains"
einfo "popular third-party multiplayer maps."
echo
einfo "To do so, run: emerge games-fps/descent1-maps"
}
|