blob: 251e2eed1766b22fa8639d9e2b9eec8b94e4c481 (
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
|
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-action/d1x/d1x-20040118.ebuild,v 1.1 2004/02/17 18:22:34 mr_bones_ Exp $
inherit games eutils
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"
DEPEND=">=dev-lang/nasm-0.97
media-libs/libsdl
opengl? (
virtual/opengl
media-libs/libpng
sys-libs/zlib
)"
S=${WORKDIR}/${PN}
pkg_setup () {
cdrom_get_cds descent
games_pkg_setup
}
src_unpack () {
unpack ${A}
local dir="${WORKDIR}/descent1-data"
mkdir "${dir}" || die
# Copy data files
local src="${CDROM_ROOT}/descent"
cd "${src}" || die
for x in 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; do
cp "${x}" "${dir}" || die
done
# Apply 1.0 -> 1.5 patch
cd "${WORKDIR}/descent1.5-patch" || die
for x in *.patch; do
if patch "${dir}/${x%%.patch}" < "${x}" \
>/dev/null 2>/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
}
src_compile () {
make dep || die
make || die
}
src_install() {
# Install D1X documentation
cd "${S}"
dodoc d1x.faq d1x.txt d1x140.txt readme.d1x readme.org todo.txt \
bugs.txt || die
dodir
# Copy data files
local src="${WORKDIR}/descent1-data"
local dir="${GAMES_DATADIR}/d1x"
cd "${src}" || die
dodir "${dir}"
insinto "${dir}"
for x in chaos.hog chaos.msn descent.b50 descent.dem descent.hog \
descent.m50 descent.phx descent.pig descent2.adv descentg.ini \
level18.dem miniboss.dem; do
doins "${x}" || die
done
# Install original documentation files
dodoc "readme.txt" "descent.faq" "orderfrm.txt" "devteam.pcx" || die
# Copy d1x.ini
cd "${S}" || die
insinto "${dir}"
doins d1x.ini || die
# Install the binary executable
local binname
if use opengl; then
binname="d1x143_ogl"
else
binname="d1x143"
fi
insinto "${GAMES_LIBDIR}/${PN}"
insopts -m0750
doins "${binname}"
# Install the shell script wrapper
local tempbin
tempbin="${T}/d1x"
echo -en "#!/bin/sh\n" > "${tempbin}"
echo -en "if [ ! -e \"\${HOME}/.d1x\" ]; then\n" >> "${tempbin}"
echo -en " mkdir \"\${HOME}/.d1x\"\n" >> "${tempbin}"
echo -en " cp \"${dir}/d1x.ini\" \"\${HOME}/.d1x/\"\n" >> "${tempbin}"
echo -en "fi\n\n" >> "${tempbin}"
echo -en "cd \"\${HOME}/.d1x/\"\n" >> "${tempbin}"
echo -en "exec ${GAMES_LIBDIR}/${PN}/${binname} " >> "${tempbin}"
echo -en "-missiondir \"${dir}\" \"\$@\"\n" >> "${tempbin}"
dogamesbin "${tempbin}"
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"
}
|