Gentoo Archives: gentoo-commits

From: Alexander Turenko <totktonada.ru@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gamerlay:master commit in: games-action/dxx-rebirth/, games-action/dxx-rebirth/files/
Date: Thu, 29 Dec 2016 23:30:18
Message-Id: 1483054117.f614d06cffc32da0b8e76570ad2a1e1035a80e60.totktonada@gentoo
1 commit: f614d06cffc32da0b8e76570ad2a1e1035a80e60
2 Author: Alexander Turenko <totktonada.ru <AT> gmail <DOT> com>
3 AuthorDate: Thu Dec 29 23:19:16 2016 +0000
4 Commit: Alexander Turenko <totktonada.ru <AT> gmail <DOT> com>
5 CommitDate: Thu Dec 29 23:28:37 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/gamerlay.git/commit/?id=f614d06c
7
8 games-action/dxx-rebirth: version bump: 0.59.100
9
10 This is the first release shipped d1x-rebirth and d2x-rebirth as the
11 single package (but with two executables), so rather then update two
12 ebuilds separately I merged it into this one. For more information see
13 the release announcement:
14 * http://www.dxx-rebirth.com/news/dxx-rebirth-v0-60-beta-1-released/
15
16 Changes
17 -------
18
19 Merged {d1x,d2x}-rebirth ebuilds into one named dxx-rebirth (this follows up
20 upstream's code bases merging). Added "descent1" and "descent2" USE flags for
21 controlling which game(s) install.
22
23 Updated from EAPI 5 to 6. Dropped "games" eclass using.
24 * https://bugs.gentoo.org/show_bug.cgi?id=574082
25
26 Migrate from LINGUAS to L10N:
27 * https://github.com/gentoo/gentoo/commit/05275527fc624b00a9aa42cc2f6d4b480af463f4
28
29 Replaced games herd in metadata.xml with me as the maintainer:
30 * https://github.com/gentoo/gentoo/commit/cfd93d768e79a349f1e762b92773190295c36980
31 * https://github.com/gentoo/gentoo/commit/8849b098c085c07e4ac1257e5b39df35d98c3c58
32
33 Updated `SConstruct` file patch to get rid of hardcoded CXXFLAGS="-g -O2".
34
35 Added `SConstruct` file patch and prefix='/usr' scons argument to looking
36 games' data in `/usr/share/games/{d1x,d2x}` instead of default
37 `/usr/local/share/games/{d1x,d2x}-rebirth` (not sure how to achieve this on the
38 recent version w/o patching).
39
40 Moved documentation installing to the appropriate stage (from prepare to install).
41
42 Changed dependency type for game data ebuilds from PDEPEND to RDEPEND as
43 devmanual suggests.
44
45 Added `doc` USE flag (disabled by default).
46
47 Added the message about necessary of libsdl alsa/oss/pulseaudio USE
48 flag.
49
50 .../dxx-rebirth/dxx-rebirth-0.59.100.ebuild | 127 +++++++++++++++++++++
51 .../files/dxx-rebirth-0.59.100-flags.patch | 10 ++
52 .../files/dxx-rebirth-0.59.100-sharepath.patch | 11 ++
53 games-action/dxx-rebirth/metadata.xml | 35 ++++++
54 4 files changed, 183 insertions(+)
55
56 diff --git a/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild b/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild
57 new file mode 100644
58 index 0000000..be99ee8
59 --- /dev/null
60 +++ b/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild
61 @@ -0,0 +1,127 @@
62 +# Copyright 1999-2016 Gentoo Foundation
63 +# Distributed under the terms of the GNU General Public License v2
64 +# $Header: $
65 +
66 +EAPI=6
67 +
68 +inherit eutils scons-utils
69 +
70 +MY_P=${PN}_v${PV}-src
71 +DESCRIPTION="Descent Rebirth - enhanced Descent 1 & 2 engine"
72 +HOMEPAGE="http://www.dxx-rebirth.com/"
73 +SRC_URI="http://www.dxx-rebirth.com/download/dxx/${MY_P}.tar.gz
74 + opl3-musicpack? (
75 + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-opl3-music.dxa )
76 + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-opl3-music.dxa ) )
77 + sc55-musicpack? (
78 + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-sc55-music.dxa )
79 + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-sc55-music.dxa ) )
80 + l10n_de? (
81 + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-briefings-ger.dxa )
82 + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-briefings-ger.dxa ) )
83 + textures? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-hires.dxa )"
84 +
85 +RESTRICT=mirror
86 +
87 +LICENSE="D1X GPL-2 public-domain"
88 +SLOT="0"
89 +KEYWORDS="~amd64 ~x86"
90 +IUSE="+data debug +descent1 +descent2 doc ipv6 l10n_de +music +opengl opl3-musicpack sc55-musicpack +textures"
91 +
92 +REQUIRED_USE="|| ( descent1 descent2 )
93 + ?? ( opl3-musicpack sc55-musicpack )
94 + opl3-musicpack? ( music )
95 + sc55-musicpack? ( music )
96 + textures ( descent1 )"
97 +
98 +DEPEND="dev-games/physfs[hog,mvl,zip]
99 + media-libs/libsdl:0[X,sound,joystick,opengl?,video]
100 + music? (
101 + media-libs/sdl-mixer:0[midi,timidity,vorbis]
102 + )
103 + opengl? (
104 + virtual/opengl
105 + virtual/glu
106 + )"
107 +RDEPEND="data? (
108 + descent1? ( || ( games-action/descent1-data games-action/descent1-demodata ) )
109 + descent2? ( || ( games-action/descent2-data games-action/descent2-demodata ) ) )"
110 +
111 +S="${WORKDIR}/${MY_P}"
112 +
113 +src_unpack() {
114 + unpack ${MY_P}.tar.gz
115 +}
116 +
117 +src_prepare() {
118 + # * flags patch -- remove hardcoded '-g -O2'
119 + # * sharepath patch -- change location of games' data from
120 + # /usr/share/games/{d1x,d2x}-rebirth to /usr/share/games/{d1x,d2x}
121 + PATCHES=("${FILESDIR}"/${P}-{flags,sharepath}.patch)
122 + default
123 +}
124 +
125 +src_compile() {
126 + escons \
127 + verbosebuild=1 \
128 + prefix='/usr' \
129 + debug=$(usex debug 1 0) \
130 + ipv6=$(usex ipv6 1 0) \
131 + sdlmixer=$(usex music 1 0) \
132 + opengl=$(usex opengl 1 0)
133 +}
134 +
135 +src_install() {
136 + if use doc; then
137 + docs=({CHANGELOG,INSTALL,README,RELEASE-NOTES}.txt)
138 + dodoc COPYING.txt
139 + fi
140 +
141 + for DV in 1 2; do
142 + if ! use descent${DV}; then
143 + continue
144 + fi
145 +
146 + PROGRAM=d${DV}x-rebirth
147 +
148 + if use doc; then
149 + docinto $PROGRAM
150 + for d in ${docs[@]}; do
151 + edos2unix $PROGRAM/${d}
152 + dodoc $PROGRAM/${d}
153 + done
154 + fi
155 +
156 + insinto "/usr/share/games/d${DV}x"
157 + use opl3-musicpack && doins "${DISTDIR}"/d${DV}xr-opl3-music.dxa
158 + use sc55-musicpack && doins "${DISTDIR}"/d${DV}xr-sc55-music.dxa
159 + use l10n_de && doins "${DISTDIR}"/d${DV}xr-briefings-ger.dxa
160 +
161 + dobin $PROGRAM/$PROGRAM
162 + make_desktop_entry $PROGRAM "Descent ${DV} Rebirth" $PROGRAM
163 + doicon $PROGRAM/$PROGRAM.xpm
164 + done
165 +
166 + insinto "/usr/share/games/d1x"
167 + use textures && doins "${DISTDIR}"/d1xr-hires.dxa
168 +}
169 +
170 +pkg_postinst() {
171 + if ! use data; then
172 + elog
173 + elog "To play the game enable USE=\"data\" or manually "
174 + elog "copy the files to /usr/share/{d1x,d2x}."
175 + elog "See /usr/share/doc/${PF}/INSTALL.txt.bz2 for details."
176 + elog
177 + fi
178 + if use music; then
179 + elog
180 + elog "You need to enable one of alsa/oss/pulseaudio USE flags for"
181 + elog "media-libs/libsdl package according to your sound system choice,"
182 + elog "if this USE flag isn't set globally."
183 + elog
184 + elog "For example:"
185 + elog "echo 'media-libs/libsdl alsa' >> /etc/portage/package.use/alsa"
186 + elog
187 + fi
188 +}
189
190 diff --git a/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch
191 new file mode 100644
192 index 0000000..75c3a64
193 --- /dev/null
194 +++ b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch
195 @@ -0,0 +1,10 @@
196 +--- dxx-rebirth_v0.59.100-src/SConstruct 2016-12-12 02:47:40.000000000 +0300
197 ++++ dxx-rebirth_v0.59.100-src/SConstruct 2016-12-28 02:11:16.657874914 +0300
198 +@@ -3488,7 +3488,6 @@
199 + env = self.env
200 + user_settings = self.user_settings
201 +
202 +- env.Prepend(CXXFLAGS = ['-g', '-O2'])
203 + # Raspberry Pi?
204 + if user_settings.raspberrypi:
205 + rpi_vc_path = user_settings.rpi_vc_path
206
207 diff --git a/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch
208 new file mode 100644
209 index 0000000..ee1b6bb
210 --- /dev/null
211 +++ b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch
212 @@ -0,0 +1,11 @@
213 +--- dxx-rebirth_v0.59.100-src/SConstruct 2016-12-12 02:47:40.000000000 +0300
214 ++++ dxx-rebirth_v0.59.100-src/SConstruct 2016-12-29 19:26:58.987760410 +0300
215 +@@ -2875,7 +2875,7 @@
216 + return 'GLESv2'
217 + return self.default_OGLES_LIB
218 + def __default_DATA_DIR(self):
219 +- return '%s/share/games/%s' % (self.prefix, self._program.target)
220 ++ return '%s/share/games/%s' % (self.prefix, self._program.shortname)
221 + def _generic_variable(key,help,default):
222 + return (key, help, default)
223 + def __get_configure_tests(tests,_filter=lambda s: s.name[0] != '_'):
224
225 diff --git a/games-action/dxx-rebirth/metadata.xml b/games-action/dxx-rebirth/metadata.xml
226 new file mode 100644
227 index 0000000..8d5766f
228 --- /dev/null
229 +++ b/games-action/dxx-rebirth/metadata.xml
230 @@ -0,0 +1,35 @@
231 +<?xml version="1.0" encoding="UTF-8"?>
232 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
233 +<pkgmetadata>
234 + <maintainer type="person">
235 + <email>totktonada.ru@×××××.com</email>
236 + <name>Alexander Turenko</name>
237 + </maintainer>
238 + <longdescription>
239 + Descent 1 is a classic first-person shooter released in 1995 by Interplay
240 + and Parallax. Descent 2 released for the PC in 1996. It, along with its
241 + predecessor, was one of the first games with true 3-dimensional graphics,
242 + 6 degrees of freedom in movement, light sourcing, and the capability to
243 + join multiplayer games on-the-fly. D1X-Rebirth and DXX-Rebirth are
244 + modifications of the original Descent 1 and 2 sources that was released
245 + by Parallax (and are based on the D1X and D2X sources). It offering
246 + OpenGL graphics, advanced multiplayer, new features, and cross-platform
247 + compatibility. Now code bases of D1X-Rebirth and DXX-Rebirth merged and
248 + released as DXX-Rebirth.
249 + </longdescription>
250 + <use>
251 + <flag name="descent1">Install Descent 1 resources and executable</flag>
252 + <flag name="descent2">Install Descent 2 resources and executable</flag>
253 + <flag name="l10n_de">Provides German translations for the game's
254 + briefings, robot descriptions, and outro of the original campaign</flag>
255 + <flag name="opl3-musicpack">Include alternate version of the game's
256 + music, recorded with the Yamaha YMF262 OPL3 soundchip</flag>
257 + <flag name="sc55-musicpack">Include alternate version of the game's
258 + music, recorded with the Roland Sound Canvas SC-55 MIDI module</flag>
259 + <flag name="textures">Include high resolution (640x480) backgrounds,
260 + briefing images and fonts (Descent 1)</flag>
261 + <flag name="music">Adds music support</flag>
262 + <flag name="data">Install data files</flag>
263 + <flag name="doc">Install documentation files (README.txt, INSTALL.txt, etc)</flag>
264 + </use>
265 +</pkgmetadata>