commit:     765c9019087891ab1663c2b4f4845b7f4c078c51
Author:     Conrad Kostecki <conrad <AT> kostecki <DOT> com>
AuthorDate: Sat Apr 20 13:19:17 2019 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon Apr 22 22:00:45 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=765c9019

games-fps/eduke32: bump to version 20190419.7615

Closes: https://bugs.gentoo.org/683894
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Conrad Kostecki <conrad <AT> kostecki.com>
Closes: https://github.com/gentoo/gentoo/pull/11757
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-fps/eduke32/Manifest                         |   1 +
 games-fps/eduke32/eduke32-20190419.7615.ebuild     | 247 +++++++++++++++++++++
 .../eduke32-20190419.7615-wad2map-buildfix.patch   |  19 ++
 3 files changed, 267 insertions(+)

diff --git a/games-fps/eduke32/Manifest b/games-fps/eduke32/Manifest
index 03decaa5f79..bcfad3bdf93 100644
--- a/games-fps/eduke32/Manifest
+++ b/games-fps/eduke32/Manifest
@@ -6,3 +6,4 @@ DIST duke3d_voxels-1.21.zip 2997999 BLAKE2B 
dcb3103a82b45cfcf906d00147a57fe47997
 DIST duke3d_xxx-1.33.zip 26586453 BLAKE2B 
7e3c46172d3db1b2eb49eb07f243a9ead4f260d6b1dcae9f8bd599b8e9ba3a19068032afeb4ec2cf61742b6216e3a06c24f2b7e8903f9636f9d00f4d57ada47f
 SHA512 
4783d159610fc178e748446b7a5f9c13d90e1aca3cef34deb82e99655b7f4a254f1130e16dbcfad9013b95bc07161d5c5dccfcc552fbb7a88404b4b9cedbadbf
 DIST eduke32_classic.png 5129 BLAKE2B 
332ad44b7f6b4f51362387aa6870e7db54423ca5a1f0586cb5019322fb72317d8e88e0bbf46ac89b56290db7e2e4a8442179a6eb87a615fd741b5f00ce96a1c8
 SHA512 
b41dece8f1ddcadde3367a83f6029ffdc5805811b40380e270169684fb3b368258bd8caeb55623dadffb6fb9d72faf9a3d75907722623f4fac94a4347f8ce833
 DIST eduke32_src_20190406-7490.tar.xz 14740360 BLAKE2B 
c7285e74b857a36d5bcddded9ae56f65be9d3a45146c21d5171f56538ba35ebfdc0b96f2eab84dbaf7179a1a336e5cd8cc2cfdd25f3524998382fc9e505142a4
 SHA512 
b43cd3bc4a26ef14ebb8db5b4ed0520544afff34970fadb459b0413eef9937e7ec70e32a51b92438f23d036806d436a429cf34ac61ec3353411f5491d6cbab45
+DIST eduke32_src_20190419-7615.tar.xz 14740500 BLAKE2B 
462a93789c0c096f85f889769ca3bf642c33cd997e1b2cfb821060aa2dbd0040b0dbd910d33da09e2be8b6610d62fbb06fed2dd62aeaa619fa23c17b6a538feb
 SHA512 
ca496c0f6478cb246e0746de1ecf171e46762d65fdb6906c8174f610b8f52362d84c48e0f4095fe00a41e4c73cbb7298ec3446d4bc0be68ed0f9a52a768183fe

diff --git a/games-fps/eduke32/eduke32-20190419.7615.ebuild 
b/games-fps/eduke32/eduke32-20190419.7615.ebuild
new file mode 100644
index 00000000000..d70f5ef8c30
--- /dev/null
+++ b/games-fps/eduke32/eduke32-20190419.7615.ebuild
@@ -0,0 +1,247 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop toolchain-funcs xdg-utils
+
+MY_BUILD="$(ver_cut 2)"
+MY_DATE="$(ver_cut 1)"
+
+MY_PV_HRP="5.4"
+MY_PV_OFFENSIVE_XXX="1.33"
+MY_PV_OPL="2.01"
+MY_PV_PSX="1.11"
+MY_PV_SC55="4.02"
+MY_PV_VOXELS="1.21"
+
+DESCRIPTION="An open source engine port of the classic PC first person shooter 
Duke Nukem 3D"
+HOMEPAGE="http://www.eduke32.com/";
+SRC_URI="
+       
http://dukeworld.com/eduke32/synthesis/${MY_DATE}-${MY_BUILD}/${PN}_src_${MY_DATE}-${MY_BUILD}.tar.xz
+       http://www.eduke32.com/images/eduke32_classic.png
+       hrp? ( http://www.duke4.org/files/nightfright/hrp/duke3d_hrp.zip -> 
duke3d_hrp-${MY_PV_HRP}.zip )
+       offensive? ( 
http://www.duke4.org/files/nightfright/related/duke3d_xxx.zip -> 
duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip )
+       opl? ( 
http://www.moddb.com/downloads/mirror/95750/102/ce9e8f422c6cccdb297852426e96740a
 -> duke3d_musopl-${MY_PV_OPL}.zip )
+       psx? ( http://www.duke4.org/files/nightfright/related/duke3d_psx.zip -> 
duke3d_psx-${MY_PV_PSX}.zip )
+       sc-55? ( 
http://www.duke4.org/files/nightfright/music/duke3d_music-sc55.zip -> 
duke3d_music-sc55-${MY_PV_SC55}.zip )
+       voxels? ( https://www.dropbox.com/s/yaxfahyvskyvt4r/duke3d_voxels.zip 
-> duke3d_voxels-${MY_PV_VOXELS}.zip )
+"
+
+LICENSE="BUILDLIC GPL-2 HRP"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~x86"
+IUSE="cdinstall demo flac fluidsynth gtk hrp offensive opengl opl png psx 
sc-55 server sdk timidity tools vorbis voxels vpx xmp"
+REQUIRED_USE="
+       cdinstall? ( !demo )
+       demo? ( !cdinstall )
+       hrp? ( ^^ ( demo cdinstall )
+               !voxels )
+       offensive? ( ^^ ( demo cdinstall ) )
+       opl? ( ^^ ( demo cdinstall )
+               !sc-55 )
+       psx? ( ^^ ( demo cdinstall ) )
+       sc-55? ( ^^ ( demo cdinstall )
+               !opl )
+       voxels? ( !hrp )
+       vpx? ( opengl )
+"
+
+S="${WORKDIR}/${PN}_${MY_DATE}-${MY_BUILD}"
+
+MY_DEPEND_RDEPEND="
+       media-libs/libsdl2[joystick,opengl?,sound,video]
+       media-libs/sdl2-mixer[flac?,fluidsynth?,midi,timidity?,vorbis?]
+       sys-libs/zlib:=
+       flac? ( media-libs/flac )
+               gtk? ( x11-libs/gtk+:2 )
+       opengl? ( virtual/glu
+               virtual/opengl )
+       png? ( media-libs/libpng:0= )
+       timidity? ( media-sound/timidity-freepats )
+       vpx? ( media-libs/libvpx:= )
+       vorbis? ( media-libs/libogg
+               media-libs/libvorbis )
+       xmp? ( media-libs/exempi:= )
+"
+
+RDEPEND="
+       ${MY_DEPEND_RDEPEND}
+       cdinstall? ( games-fps/duke3d-data )
+       demo? ( games-fps/duke3d-demodata )
+"
+
+DEPEND="
+       ${MY_DEPEND_RDEPEND}
+       app-arch/unzip
+       x86? ( dev-lang/nasm )
+"
+
+PATCHES=(
+       "${FILESDIR}/${P}-wad2map-buildfix.patch"
+       "${FILESDIR}/log-to-tmpdir.patch"
+       "${FILESDIR}/search-duke3d-path.patch"
+)
+
+src_unpack() {
+       # Extract only the eduke32 archive
+       unpack ${PN}_src_${MY_DATE}-${MY_BUILD}.tar.xz
+
+       # Unpack only the documentation
+       if use hrp; then
+               unzip -q "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip 
hrp_readme.txt hrp_todo.txt || die
+       fi
+       if use offensive; then
+               unzip -q "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip 
xxx_readme.txt || die
+       fi
+       if use opl; then
+               unzip -q "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip readme.txt 
|| die
+               mv readme.txt opl_readme.txt || die
+       fi
+       if use sc-55; then
+               unzip -q "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip 
readme/music_readme.txt || die
+       fi
+       if use voxels; then
+               unzip -q "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip 
voxelpack_readme.txt || die
+       fi
+}
+
+src_compile() {
+       local myemakeopts=(
+               ALLOCACHE_AS_MALLOC=0
+               AS=$(tc-getAS)
+               CC=$(tc-getCC)
+               CXX=$(tc-getCXX)
+               CLANG=0
+               CPLUSPLUS=1
+               CUSTOMOPT=""
+               DEBUGANYWAY=0
+               F_JUMP_TABLES=""
+               FORCEDEBUG=0
+               HAVE_FLAC=$(usex flac 1 0)
+               HAVE_GTK2=$(usex gtk 1 0)
+               HAVE_VORBIS=$(usex vorbis 1 0)
+               HAVE_XMP=$(usex xmp 1 0)
+               LINKED_GTK=$(usex gtk 1 0)
+               LTO=1
+               LUNATIC=0
+               KRANDDEBUG=0
+               MEMMAP=0
+               MIXERTYPE=SDL
+               NETCODE=$(usex server 1 0)
+               NOASM=0
+               OPTLEVEL=0
+               OPTOPT=""
+               PACKAGE_REPOSITORY=1
+               POLYMER=$(usex opengl 1 0)
+               PRETTY_OUTPUT=0
+               PROFILER=0
+               RELEASE=1
+               RENDERTYPE=SDL
+               SDL_TARGET=2
+               SIMPLE_MENU=0
+               STRIP=""
+               TANDALONE=0
+               STARTUP_WINDOW=$(usex gtk 1 0)
+               USE_OPENGL=$(usex opengl 1 0)
+               USE_LIBVPX=$(usex vpx 1 0)
+               USE_LIBPNG=$(usex png 1 0)
+               USE_LUAJIT_2_1=0
+               WITHOUT_GTK=$(usex gtk 0 1)
+       )
+
+       emake "${myemakeopts[@]}"
+
+       if use tools; then
+               emake utils "${myemakeopts[@]}"
+       fi
+}
+
+src_test() {
+       # There are no tests
+       # Instead it tries to build a test game, which does not compile
+       :;
+}
+
+src_install() {
+       dobin eduke32 mapster32 "${FILESDIR}"/eduke32-bin
+
+       if use tools; then
+               local tools=(
+                       arttool
+                       bsuite
+                       cacheinfo
+                       generateicon
+                       givedepth
+                       ivfrate
+                       kextract
+                       kgroup
+                       kmd2tool
+                       makesdlkeytrans
+                       map2stl
+                       md2tool
+                       mkpalette
+                       transpal
+                       unpackssi
+                       wad2art
+                       wad2map
+               )
+
+               dobin "${tools[@]}"
+       fi
+
+       keepdir /usr/share/games/eduke32
+       insinto /usr/share/games/eduke32
+       if use hrp; then
+               doins "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip
+       fi
+       if use offensive; then
+               doins "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip
+       fi
+       if use opl; then
+               doins "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip
+       fi
+       if use psx; then
+               doins "${DISTDIR}"/duke3d_psx-${MY_PV_PSX}.zip
+       fi
+       if use sc-55; then
+               doins "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip
+       fi
+       if use sdk; then
+               doins -r package/sdk
+       fi
+       if use voxels; then
+               doins "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip
+       fi
+
+       newicon "${DISTDIR}"/eduke32_classic.png eduke32.png
+
+       make_desktop_entry eduke32-bin EDuke32 eduke32 Game
+       make_desktop_entry mapster32 Mapster32 eduke32 Game
+
+       local DOCS=( package/sdk/samples/*.txt source/build/doc/*.txt 
source/duke3d/src/lunatic/doc/*.txt )
+       if use hrp; then
+               DOCS+=( "${WORKDIR}"/hrp_readme.txt "${WORKDIR}"/hrp_todo.txt )
+       fi
+       if use offensive; then
+               DOCS+=( "${WORKDIR}"/xxx_readme.txt )
+       fi
+       if use opl; then
+               DOCS+=( "${WORKDIR}"/opl_readme.txt )
+       fi
+       if use sc-55; then
+               DOCS+=( "${WORKDIR}"/readme/music_readme.txt )
+       fi
+       if use voxels; then
+               DOCS+=( "${WORKDIR}"/voxelpack_readme.txt )
+       fi
+       einstalldocs
+}
+
+pkg_postinst() {
+       xdg_icon_cache_update
+}
+
+pkg_postrm() {
+       xdg_icon_cache_update
+}

diff --git 
a/games-fps/eduke32/files/eduke32-20190419.7615-wad2map-buildfix.patch 
b/games-fps/eduke32/files/eduke32-20190419.7615-wad2map-buildfix.patch
new file mode 100644
index 00000000000..611f7a9d1ee
--- /dev/null
+++ b/games-fps/eduke32/files/eduke32-20190419.7615-wad2map-buildfix.patch
@@ -0,0 +1,19 @@
+--- a/source/tools/src/wad2map.cpp     2019-04-08 08:29:24.000000000 +0200
++++ b/source/tools/src/wad2map.cpp     2019-04-20 15:07:38.684542190 +0200
+@@ -7,6 +7,7 @@
+ 
+ #include "compat.h"
+ #include "pragmas.h"
++#include "vfs.h"
+ 
+ #define MAXWADS 4096
+ #define MAXPOINTS 8192
+@@ -313,7 +314,7 @@
+         Bprintf("Could not find %s\n",scriptname);
+         exit(0);
+     }
+-    filpos = 0; fileng = filelength(filhandle);
++    filpos = 0; fileng = buildvfs_length(filhandle);
+     while (readline() != 0)
+     {
+         i = 0; j = 0; lasti = 0;

Reply via email to