Skip to content

Commit

Permalink
games-fps/eduke32: bump to version 20201128.9276
Browse files Browse the repository at this point in the history
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Conrad Kostecki <[email protected]>
  • Loading branch information
ConiKost committed Dec 2, 2020
1 parent 4dfad14 commit 127498c
Show file tree
Hide file tree
Showing 2 changed files with 231 additions and 0 deletions.
1 change: 1 addition & 0 deletions games-fps/eduke32/Manifest
Original file line number Diff line number Diff line change
Expand Up @@ -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_20200907-9257-93f62bbad.tar.xz 19787388 BLAKE2B 932bb679ac83320c56284371967e3f18e9d44b2635c743443a2e73511bd62557fb478c035136fc63276b3ada97736c18d05ed809772266d5b16dfdcaf03104d6 SHA512 43b5fd11382cdbc589a32c5f8f2ef36abcd0a41ba0251d4edf1c45466ad2ff875bc237c304b5a6668a44d01fb8f465a761f9e654b306762fa086b40f8bd75284
DIST eduke32_src_20201128-9276-42c62c58f.tar.xz 19786040 BLAKE2B 5cf8fced61ed5876030a4569e3068ef1e6d2542dbb57528aba0101e37d8233e9c878f1adba7deedd34cbbce37470c47be4d61713c2a4d9eafbcdc65c690a53a3 SHA512 54d2eb3d2caec8ef941796106c60a2cfeb6edc37f1c353cf8acbeacd3c96e4e2ccd037b0c6a9e1adc47406c3572aed816136190161b83948e36b364ec4edd518
230 changes: 230 additions & 0 deletions games-fps/eduke32/eduke32-20201128.9276.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit desktop toolchain-funcs xdg-utils

EGIT_COMMIT="42c62c58f"
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="
https://dukeworld.com/eduke32/synthesis/latest/${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.tar.xz
https://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? ( https://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 ~arm64 ~x86"
IUSE="cdinstall demo fluidsynth gtk hrp offensive opengl opl png psx sc-55 server sdk timidity tools voidsw 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 )
"

# There are no tests,
# instead it tries to build a test game, which does not compile
RESTRICT="bindist test"

S="${WORKDIR}/${PN}_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}"

RDEPEND="
media-libs/flac
media-libs/libsdl2[alsa,joystick,opengl?,sound,video]
media-libs/sdl2-mixer[flac,fluidsynth?,midi,timidity?,vorbis?]
sys-libs/zlib
gtk? ( x11-libs/gtk+:2 )
opengl? (
virtual/glu
virtual/opengl
)
png? ( media-libs/libpng:0= )
vpx? ( media-libs/libvpx:= )
vorbis? (
media-libs/libogg
media-libs/libvorbis
)
xmp? ( media-libs/exempi:2= )
"

DEPEND="
${RDEPEND}
timidity? ( media-sound/timidity++ )
"

BDEPEND="
app-arch/unzip
x86? ( dev-lang/nasm )
"

PDEPEND="
cdinstall? ( games-fps/duke3d-data )
demo? ( games-fps/duke3d-demodata )
"

PATCHES=(
"${FILESDIR}/${PN}-20190820.8043-log-to-tmpdir.patch"
"${FILESDIR}/${PN}-20190820.8043-search-duke3d-path.patch"
"${FILESDIR}/${PN}-20200505.8904-gcc10.patch"
)

src_unpack() {
# Extract only the eduke32 archive
unpack ${PN}_src_${MY_DATE}-${MY_BUILD}-${EGIT_COMMIT}.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=1
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[@]}"

use tools && emake utils "${myemakeopts[@]}"
use voidsw && emake sw "${myemakeopts[@]}"
}

src_install() {
dobin eduke32 mapster32 "${FILESDIR}"/eduke32-bin
use voidsw && dobin voidsw "${FILESDIR}"/voidsw-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

use hrp && doins "${DISTDIR}"/duke3d_hrp-${MY_PV_HRP}.zip
use offensive && doins "${DISTDIR}"/duke3d_xxx-${MY_PV_OFFENSIVE_XXX}.zip
use opl && doins "${DISTDIR}"/duke3d_musopl-${MY_PV_OPL}.zip
use psx && doins "${DISTDIR}"/duke3d_psx-${MY_PV_PSX}.zip
use sc-55 && doins "${DISTDIR}"/duke3d_music-sc55-${MY_PV_SC55}.zip
use sdk && doins -r package/sdk
use voxels && doins "${DISTDIR}"/duke3d_voxels-${MY_PV_VOXELS}.zip

newicon "${DISTDIR}"/eduke32_classic.png eduke32.png

make_desktop_entry eduke32-bin EDuke32 eduke32 Game
make_desktop_entry mapster32 Mapster32 eduke32 Game
use voidsw && make_desktop_entry voidsw-bin VoidSW voidsw Game

local DOCS=( package/sdk/samples/*.txt source/build/doc/*.txt )
use hrp && DOCS+=( "${WORKDIR}"/hrp_readme.txt "${WORKDIR}"/hrp_todo.txt )
use offensive && DOCS+=( "${WORKDIR}"/xxx_readme.txt )
use opl && DOCS+=( "${WORKDIR}"/opl_readme.txt )
use sc-55 && DOCS+=( "${WORKDIR}"/readme/music_readme.txt )
use voxels && DOCS+=( "${WORKDIR}"/voxelpack_readme.txt )

einstalldocs
}

pkg_postinst() {
xdg_icon_cache_update
}

pkg_postrm() {
xdg_icon_cache_update
}

0 comments on commit 127498c

Please sign in to comment.