aboutsummaryrefslogtreecommitdiff
path: root/games/eduke32
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2023-01-17 17:35:16 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-01-21 10:22:10 +0700
commita1141cfdbb6effdf60b587fe15087d401eb7d40f (patch)
tree3a6635f2f0040f2bfa922d5f643dd945ce6eaa37 /games/eduke32
parent7ee0aef33b08e1a283ce49809ce30c6f4103d458 (diff)
games/eduke32: Updated for version 20221225_10166_122aee012.
Signed-off-by: B. Watson <urchlay@slackware.uk> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'games/eduke32')
-rw-r--r--games/eduke32/README4
-rw-r--r--games/eduke32/eduke32.SlackBuild29
-rw-r--r--games/eduke32/eduke32.info6
-rw-r--r--games/eduke32/tools.diff145
4 files changed, 20 insertions, 164 deletions
diff --git a/games/eduke32/README b/games/eduke32/README
index 75f9511c0bd9..267cd8e038f9 100644
--- a/games/eduke32/README
+++ b/games/eduke32/README
@@ -20,6 +20,10 @@ If you want to play the HRP (High Resolution Pack) in eduke32, install
the eduke32_hires_pack package from slackbuilds.org. There's also a
jfsw_hires_pack that works with voidsw.
+WARNING: on the SlackBuild maintainer's system, eduke32 segfaults when
+starting a game, if a USB gamepad is plugged in (even if the joystick
+option is disabled in eduke32).
+
Notes:
[1] Despite the "32" in the name, this software builds and runs just
diff --git a/games/eduke32/eduke32.SlackBuild b/games/eduke32/eduke32.SlackBuild
index a8c95c17c836..a15f7f6145d7 100644
--- a/games/eduke32/eduke32.SlackBuild
+++ b/games/eduke32/eduke32.SlackBuild
@@ -10,6 +10,12 @@
# TODO: man page(s). eduke32.6 is ancient.
+# 20230117 bkw: update for 20221225_10166_122aee012.
+# - no more need for tools.diff
+# - voidsw mouse sensitivity is more-or-less OK now, remove hack.
+# - add note to README about the game crashing when joystick plugged in.
+# - fix PRINT_PACKAGE_NAME.
+
# 20211108 bkw:
# - update for 20211102_9751_8970754aa.
# - include voidsw (shadow warrior), wangulator (sw map editor), and
@@ -45,16 +51,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=eduke32
-VERSION=${VERSION:-20211102_9751_8970754aa}
+VERSION=${VERSION:-20221225_10166_122aee012}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
- exit 0
-fi
-
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,6 +68,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
@@ -127,12 +133,6 @@ sed -i '/OSD_SetLogFile/d' \
# the log output.
sed -i '/"Error: glGetTexLevelParameteriv/d' source/build/src/texcache.cpp
-# voidsw's in-game menus don't let you crank the mouse sensitivity up high
-# enough. the mouse barely does anything at the default setting, and it's
-# still too slow-moving to be usable at the max.
-sed -i 's,8192,660,g' source/sw/src/config.cpp source/sw/src/menus.cpp
-sed -i '/MouseAnalogScale/s,65536,131071,' source/sw/src/config.cpp
-
# Our twin dragon is a different repack from the ones voidsw knows
# about. Also, upstream incorrectly says the Wanton Destruction
# wd.grp requires sw.grp as a dependency. Actually, it's a
@@ -153,10 +153,6 @@ mkdir -p $PKG/usr/games
installbins $PRGNAM mapster32 voidsw wangulator
# the tools:
-# patch is upstream commit a7a6cd043749947773cbf3e85ed66ffd6273f659,
-# thanks to willysr for tracking it down.
-patch -p1 < $CWD/tools.diff
-
runmake tools
installbins arttool bsuite cacheinfo givedepth ivfrate kextract kgroup \
kmd2tool makesdlkeytrans map2stl md2tool mkpalette transpal \
@@ -164,6 +160,7 @@ installbins arttool bsuite cacheinfo givedepth ivfrate kextract kgroup \
# fury (which would fail without the 'make clean' first):
make clean
+sed -i '/SDL_STATIC *:=/d' GNUmakefile # grrr.
runmake fury FURY=1
installbins fury
diff --git a/games/eduke32/eduke32.info b/games/eduke32/eduke32.info
index b7a7240dfe8e..05ac8a8ff26b 100644
--- a/games/eduke32/eduke32.info
+++ b/games/eduke32/eduke32.info
@@ -1,8 +1,8 @@
PRGNAM="eduke32"
-VERSION="20211102_9751_8970754aa"
+VERSION="20221225_10166_122aee012"
HOMEPAGE="https://www.eduke32.com/"
-DOWNLOAD="https://dukeworld.duke4.net/eduke32/synthesis/20211102-9751-8970754aa/eduke32_src_20211102-9751-8970754aa.tar.xz"
-MD5SUM="2a3aa3e991a411a3018068a6b97043a3"
+DOWNLOAD="https://dukeworld.duke4.net/eduke32/synthesis/20221225-10166-122aee012/eduke32_src_20221225-10166-122aee012.tar.xz"
+MD5SUM="884e413dd8d391254b922b279fedb9a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/eduke32/tools.diff b/games/eduke32/tools.diff
deleted file mode 100644
index da638e62ee8b..000000000000
--- a/games/eduke32/tools.diff
+++ /dev/null
@@ -1,145 +0,0 @@
-From a7a6cd043749947773cbf3e85ed66ffd6273f659 Mon Sep 17 00:00:00 2001
-From: Richard Gobeille <richard@voidpoint.com>
-Date: Mon, 20 Dec 2021 02:58:04 -0800
-Subject: [PATCH] tools: fix compilation of Build utilities
-
----
- GNUmakefile | 2 +-
- source/build/include/baselayer.h | 3 +--
- source/build/include/compat.h | 13 +++++++++++++
- source/build/include/sjson.h | 2 --
- source/build/src/baselayer.cpp | 12 ++----------
- source/build/src/sdlayer.cpp | 2 +-
- source/build/src/winlayer.cpp | 2 +-
- source/tools/src/generateicon.cpp | 1 +
- 8 files changed, 20 insertions(+), 17 deletions(-)
-
-diff --git a/GNUmakefile b/GNUmakefile
-index 7ebbd71a8..c8c174fb3 100644
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -437,7 +437,7 @@ tools_obj := $(obj)/$(tools)
-
- tools_cflags := $(engine_cflags)
-
--tools_deps := engine_tools
-+tools_deps := engine_tools mimalloc
-
- tools_targets := \
- arttool \
-diff --git a/source/build/include/baselayer.h b/source/build/include/baselayer.h
-index 008318003..b6d61135c 100644
---- a/source/build/include/baselayer.h
-+++ b/source/build/include/baselayer.h
-@@ -19,8 +19,7 @@ extern int app_main(int argc, char const * const * argv);
- extern const char* AppProperName;
- extern const char* AppTechnicalName;
-
--void engineCreateAllocator(void);
--void engineDestroyAllocator(void);
-+void engineSetupAllocator(void);
-
- #ifdef DEBUGGINGAIDS
- # define DEBUG_MASK_DRAWING
-diff --git a/source/build/include/compat.h b/source/build/include/compat.h
-index 5dd6d0b1d..fd536253a 100644
---- a/source/build/include/compat.h
-+++ b/source/build/include/compat.h
-@@ -1297,6 +1297,19 @@ void *handle_memerr(void);
-
- extern sm_allocator g_sm_heap;
-
-+static FORCE_INLINE void engineCreateAllocator(void)
-+{
-+ // 8 buckets of 2MB each--we don't really need to burn a lot of memory here for this thing to do its job
-+ g_sm_heap = _sm_allocator_create(SMM_MAX_BUCKET_COUNT, 2097152);
-+ _sm_allocator_thread_cache_create(g_sm_heap, sm::CACHE_HOT, { 20480, 32768, 32768, 1536, 4096, 8192, 128, 4096 });
-+}
-+
-+static FORCE_INLINE void engineDestroyAllocator(void)
-+{
-+ _sm_allocator_thread_cache_destroy(g_sm_heap);
-+ _sm_allocator_destroy(g_sm_heap);
-+}
-+
- #ifdef BITNESS64
- # define ALLOC_ALIGNMENT 16
- #else
-diff --git a/source/build/include/sjson.h b/source/build/include/sjson.h
-index b691bca2a..74a98ea05 100644
---- a/source/build/include/sjson.h
-+++ b/source/build/include/sjson.h
-@@ -144,8 +144,6 @@
- #ifndef SJSON_H_
- #define SJSON_H_
-
--extern "C" void engineDestroyAllocator(void);
--
- #ifdef _MSC_VER
- # ifndef __cplusplus
-
-diff --git a/source/build/src/baselayer.cpp b/source/build/src/baselayer.cpp
-index c1fe589ee..bc81e0616 100644
---- a/source/build/src/baselayer.cpp
-+++ b/source/build/src/baselayer.cpp
-@@ -139,17 +139,9 @@ static int osdfunc_heapinfo(osdcmdptr_t UNUSED(parm))
- return OSDCMD_OK;
- }
-
--void engineDestroyAllocator(void)
-+void engineSetupAllocator(void)
- {
-- _sm_allocator_thread_cache_destroy(g_sm_heap);
-- _sm_allocator_destroy(g_sm_heap);
--}
--
--void engineCreateAllocator(void)
--{
-- // 8 buckets of 2MB each--we don't really need to burn a lot of memory here for this thing to do its job
-- g_sm_heap = _sm_allocator_create(SMM_MAX_BUCKET_COUNT, 2097152);
-- _sm_allocator_thread_cache_create(g_sm_heap, sm::CACHE_HOT, { 20480, 32768, 32768, 1536, 4096, 8192, 128, 4096 });
-+ engineCreateAllocator();
-
- #ifdef SMMALLOC_STATS_SUPPORT
- OSD_RegisterFunction("bucketlist", "bucketlist: list bucket statistics", osdfunc_bucketlist);
-diff --git a/source/build/src/sdlayer.cpp b/source/build/src/sdlayer.cpp
-index 27ab392ea..fa76bebf8 100644
---- a/source/build/src/sdlayer.cpp
-+++ b/source/build/src/sdlayer.cpp
-@@ -452,7 +452,7 @@ int SDL_main(int argc, char *argv[])
- int main(int argc, char *argv[])
- #endif
- {
-- engineCreateAllocator();
-+ engineSetupAllocator();
-
- #if SDL_MAJOR_VERSION >= 2 && (SDL_MINOR_VERSION > 0 || SDL_PATCHLEVEL >= 8)
- if (EDUKE32_SDL_LINKED_PREREQ(linked, 2, 0, 8))
-diff --git a/source/build/src/winlayer.cpp b/source/build/src/winlayer.cpp
-index 367c0ec03..ccf9fa25f 100644
---- a/source/build/src/winlayer.cpp
-+++ b/source/build/src/winlayer.cpp
-@@ -281,7 +281,7 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nC
- _CrtSetDbgFlag(_CRTDBG_CHECK_ALWAYS_DF);
- #endif
-
-- engineCreateAllocator();
-+ engineSetupAllocator();
-
- mutex_init(&m_initprintf);
-
-diff --git a/source/tools/src/generateicon.cpp b/source/tools/src/generateicon.cpp
-index 16f7096e3..81f46b28b 100644
---- a/source/tools/src/generateicon.cpp
-+++ b/source/tools/src/generateicon.cpp
-@@ -61,6 +61,7 @@ int main(int argc, char **argv)
-
- memset(&icon, 0, sizeof(icon));
-
-+ engineCreateAllocator();
- kpzload(argv[1], (intptr_t*)&icon.pixels, &icon.width, &icon.height);
- if (!icon.pixels) {
- Bfprintf(stderr, "Failure loading %s\n", argv[1]);
---
-GitLab
-