Gentoo Archives: gentoo-commits

From: Conrad Kostecki <conikost@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-fps/eduke32/
Date: Sat, 30 Jan 2021 22:00:43
Message-Id: 1612043948.84cbb13645614b3f69eb2bea504151fa1add1370.conikost@gentoo
1 commit: 84cbb13645614b3f69eb2bea504151fa1add1370
2 Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 30 21:59:08 2021 +0000
4 Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 30 21:59:08 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84cbb136
7
8 games-fps/eduke32: bump to version 20210127.9308
9
10 This versions drops 'vorbis' use flag, as it's now mandatory and can't
11 be disabled anymore.
12
13 Closes: https://bugs.gentoo.org/766803
14 Package-Manager: Portage-3.0.14, Repoman-3.0.2
15 Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
16
17 games-fps/eduke32/Manifest | 1 +
18 games-fps/eduke32/eduke32-20210127.9308.ebuild | 219 +++++++++++++++++++++++++
19 2 files changed, 220 insertions(+)
20
21 diff --git a/games-fps/eduke32/Manifest b/games-fps/eduke32/Manifest
22 index fa7f41d8fdb..81bd6f66d79 100644
23 --- a/games-fps/eduke32/Manifest
24 +++ b/games-fps/eduke32/Manifest
25 @@ -6,3 +6,4 @@ DIST duke3d_voxels-1.21.zip 2997999 BLAKE2B dcb3103a82b45cfcf906d00147a57fe47997
26 DIST duke3d_xxx-1.33.zip 26586453 BLAKE2B 7e3c46172d3db1b2eb49eb07f243a9ead4f260d6b1dcae9f8bd599b8e9ba3a19068032afeb4ec2cf61742b6216e3a06c24f2b7e8903f9636f9d00f4d57ada47f SHA512 4783d159610fc178e748446b7a5f9c13d90e1aca3cef34deb82e99655b7f4a254f1130e16dbcfad9013b95bc07161d5c5dccfcc552fbb7a88404b4b9cedbadbf
27 DIST eduke32_classic.png 5129 BLAKE2B 332ad44b7f6b4f51362387aa6870e7db54423ca5a1f0586cb5019322fb72317d8e88e0bbf46ac89b56290db7e2e4a8442179a6eb87a615fd741b5f00ce96a1c8 SHA512 b41dece8f1ddcadde3367a83f6029ffdc5805811b40380e270169684fb3b368258bd8caeb55623dadffb6fb9d72faf9a3d75907722623f4fac94a4347f8ce833
28 DIST eduke32_src_20210109-9300-a32832192.tar.xz 19941188 BLAKE2B 0aa7657384fb92352a4f1cd4bbe4b403ccacc4a77e50aa78f3cd44f9e8fcddc38dfc44897c8f768d9a4c1ae701188fc781b54491f310e2162723aa714231dae4 SHA512 4c54f83f08f150506b76ffa73a41de81a7719c14c14adadbf90bfc93f0fb48ef64f4fd43081e5f49726f8c71137b2e4f567251ff9b83a9a25fb09ffb2ab48315
29 +DIST eduke32_src_20210127-9308-421b54a8a.tar.xz 19944696 BLAKE2B 196ff6f81e5b87de3c5111c192c1c27c37afca786341eb03c8f704639291e182f2e14a7dd042c92a19fc6b0b5d8639356974a609bade614c4c33f42e04c1f017 SHA512 99299dded2874df996ef00e458ea644a769b46969d296ed5596838978d8835d12d6123445dfa3fd3a6a9e9eefc447fe4af8d2a9c36c000a76a515681bbded636
30
31 diff --git a/games-fps/eduke32/eduke32-20210127.9308.ebuild b/games-fps/eduke32/eduke32-20210127.9308.ebuild
32 new file mode 100644
33 index 00000000000..7ae2cbd8524
34 --- /dev/null
35 +++ b/games-fps/eduke32/eduke32-20210127.9308.ebuild
36 @@ -0,0 +1,219 @@
37 +# Copyright 1999-2021 Gentoo Authors
38 +# Distributed under the terms of the GNU General Public License v2
39 +
40 +EAPI=7
41 +
42 +inherit desktop toolchain-funcs xdg-utils
43 +
44 +EGIT_COMMIT="421b54a8a"
45 +MY_BUILD="$(ver_cut 2)"
46 +MY_DATE="$(ver_cut 1)"
47 +MY_PV_HRP="5.4"
48 +MY_PV_OFFENSIVE_XXX="1.33"
49 +MY_PV_OPL="2.01"
50 +MY_PV_PSX="1.11"
51 +MY_PV_SC55="4.02"
52 +MY_PV_VOXELS="1.21"
53 +
54 +DESCRIPTION="An open source engine port of the classic PC first person shooter Duke Nukem 3D"
55 +HOMEPAGE="http://www.eduke32.com/"
56 +SRC_URI="
57 + http://dukeworld.com/eduke32/synthesis/latest/${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.tar.xz
58 + https://www.eduke32.com/images/eduke32_classic.png
59 + hrp? ( http://www.duke4.org/files/nightfright/hrp/duke3d_hrp.zip -> duke3d_hrp-${MY_PV_HRP}.zip )
60 + offensive? ( http://www.duke4.org/files/nightfright/related/duke3d_xxx.zip -> duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip )
61 + opl? ( https://www.moddb.com/downloads/mirror/95750/102/ce9e8f422c6cccdb297852426e96740a -> duke3d_musopl-${MY_PV_OPL}.zip )
62 + psx? ( http://www.duke4.org/files/nightfright/related/duke3d_psx.zip -> duke3d_psx-${MY_PV_PSX}.zip )
63 + sc-55? ( http://www.duke4.org/files/nightfright/music/duke3d_music-sc55.zip -> duke3d_music-sc55-${MY_PV_SC55}.zip )
64 + voxels? ( https://www.dropbox.com/s/yaxfahyvskyvt4r/duke3d_voxels.zip -> duke3d_voxels-${MY_PV_VOXELS}.zip )
65 +"
66 +
67 +LICENSE="BUILDLIC GPL-2 HRP"
68 +SLOT="0"
69 +KEYWORDS="~amd64 ~arm ~arm64 ~x86"
70 +IUSE="duke3d fluidsynth gtk hrp offensive opengl opl png psx sc-55 server sdk timidity tools voidsw voxels vpx xmp"
71 +REQUIRED_USE="
72 + hrp? ( duke3d !voxels )
73 + offensive? ( duke3d )
74 + opl? ( duke3d !sc-55 )
75 + psx? ( duke3d )
76 + sc-55? ( duke3d !opl )
77 + voxels? ( !hrp )
78 + vpx? ( opengl )
79 +"
80 +
81 +# There are no tests,
82 +# instead it tries to build a test game, which does not compile
83 +RESTRICT="bindist test"
84 +
85 +S="${WORKDIR}/${PN}_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}"
86 +
87 +RDEPEND="
88 + media-libs/flac
89 + media-libs/libogg
90 + media-libs/libsdl2[alsa,joystick,opengl?,sound,video]
91 + media-libs/libvorbis
92 + media-libs/sdl2-mixer[flac,fluidsynth?,midi,timidity?,vorbis]
93 + sys-libs/zlib
94 + gtk? ( x11-libs/gtk+:2 )
95 + opengl? (
96 + virtual/glu
97 + virtual/opengl
98 + )
99 + png? ( media-libs/libpng:0= )
100 + vpx? ( media-libs/libvpx:= )
101 + xmp? ( media-libs/exempi:2= )
102 +"
103 +
104 +DEPEND="
105 + ${RDEPEND}
106 + timidity? ( media-sound/timidity++ )
107 +"
108 +
109 +BDEPEND="
110 + app-arch/unzip
111 + x86? ( dev-lang/nasm )
112 +"
113 +
114 +PDEDEND="duke3d? ( games-fps/duke3d-data )"
115 +
116 +PATCHES=(
117 + "${FILESDIR}/${PN}-20190820.8043-log-to-tmpdir.patch"
118 + "${FILESDIR}/${PN}-20190820.8043-search-duke3d-path.patch"
119 + "${FILESDIR}/${PN}-20200505.8904-gcc10.patch"
120 +)
121 +
122 +src_unpack() {
123 + # Extract only the eduke32 archive
124 + unpack ${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.tar.xz
125 +
126 + # Unpack only the documentation
127 + if use hrp; then
128 + unzip -q "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip hrp_readme.txt hrp_todo.txt || die
129 + fi
130 + if use offensive; then
131 + unzip -q "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip xxx_readme.txt || die
132 + fi
133 + if use opl; then
134 + unzip -q "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip readme.txt || die
135 + mv readme.txt opl_readme.txt || die
136 + fi
137 + if use sc-55; then
138 + unzip -q "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip readme/music_readme.txt || die
139 + fi
140 + if use voxels; then
141 + unzip -q "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip voxelpack_readme.txt || die
142 + fi
143 +}
144 +
145 +src_compile() {
146 + local myemakeopts=(
147 + ALLOCACHE_AS_MALLOC=0
148 + AS=$(tc-getAS)
149 + CC=$(tc-getCC)
150 + CXX=$(tc-getCXX)
151 + CLANG=0
152 + CPLUSPLUS=1
153 + CUSTOMOPT=""
154 + DEBUGANYWAY=0
155 + F_JUMP_TABLES=""
156 + FORCEDEBUG=0
157 + HAVE_FLAC=1
158 + HAVE_GTK2=$(usex gtk 1 0)
159 + HAVE_XMP=$(usex xmp 1 0)
160 + LINKED_GTK=$(usex gtk 1 0)
161 + LTO=1
162 + LUNATIC=0
163 + KRANDDEBUG=0
164 + MEMMAP=0
165 + MIXERTYPE=SDL
166 + NETCODE=$(usex server 1 0)
167 + NOASM=0
168 + OPTLEVEL=0
169 + OPTOPT=""
170 + PACKAGE_REPOSITORY=1
171 + POLYMER=$(usex opengl 1 0)
172 + PRETTY_OUTPUT=0
173 + PROFILER=0
174 + RELEASE=1
175 + RENDERTYPE=SDL
176 + SDL_TARGET=2
177 + SIMPLE_MENU=0
178 + STRIP=""
179 + TANDALONE=0
180 + STARTUP_WINDOW=$(usex gtk 1 0)
181 + USE_OPENGL=$(usex opengl 1 0)
182 + USE_LIBVPX=$(usex vpx 1 0)
183 + USE_LIBPNG=$(usex png 1 0)
184 + USE_LUAJIT_2_1=0
185 + WITHOUT_GTK=$(usex gtk 0 1)
186 + )
187 +
188 + emake "${myemakeopts[@]}"
189 +
190 + use tools && emake utils "${myemakeopts[@]}"
191 + use voidsw && emake sw "${myemakeopts[@]}"
192 +}
193 +
194 +src_install() {
195 + dobin eduke32 mapster32 "${FILESDIR}"/eduke32-bin
196 + use voidsw && dobin voidsw "${FILESDIR}"/voidsw-bin
197 +
198 + if use tools; then
199 + local tools=(
200 + arttool
201 + bsuite
202 + cacheinfo
203 + generateicon
204 + givedepth
205 + ivfrate
206 + kextract
207 + kgroup
208 + kmd2tool
209 + makesdlkeytrans
210 + map2stl
211 + md2tool
212 + mkpalette
213 + transpal
214 + unpackssi
215 + wad2art
216 + wad2map
217 + )
218 +
219 + dobin "${tools[@]}"
220 + fi
221 +
222 + keepdir /usr/share/games/eduke32
223 + insinto /usr/share/games/eduke32
224 +
225 + use hrp && doins "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip
226 + use offensive && doins "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip
227 + use opl && doins "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip
228 + use psx && doins "${DISTDIR}"/duke3d_psx-${MY_PV_PSX}.zip
229 + use sc-55 && doins "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip
230 + use sdk && doins -r package/sdk
231 + use voxels && doins "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip
232 +
233 + newicon "${DISTDIR}"/eduke32_classic.png eduke32.png
234 +
235 + make_desktop_entry eduke32-bin EDuke32 eduke32 Game
236 + make_desktop_entry mapster32 Mapster32 eduke32 Game
237 + use voidsw && make_desktop_entry voidsw-bin VoidSW voidsw Game
238 +
239 + local DOCS=( package/sdk/samples/*.txt source/build/doc/*.txt )
240 + use hrp && DOCS+=( "${WORKDIR}"/hrp_readme.txt "${WORKDIR}"/hrp_todo.txt )
241 + use offensive && DOCS+=( "${WORKDIR}"/xxx_readme.txt )
242 + use opl && DOCS+=( "${WORKDIR}"/opl_readme.txt )
243 + use sc-55 && DOCS+=( "${WORKDIR}"/readme/music_readme.txt )
244 + use voxels && DOCS+=( "${WORKDIR}"/voxelpack_readme.txt )
245 +
246 + einstalldocs
247 +}
248 +
249 +pkg_postinst() {
250 + xdg_icon_cache_update
251 +}
252 +
253 +pkg_postrm() {
254 + xdg_icon_cache_update
255 +}