git: ea1fc6506da1 - main - games/keeperrl: Remove expired port

From: Rene Ladan <rene_at_FreeBSD.org>
Date: Wed, 31 Dec 2025 11:58:10 UTC
The branch main has been updated by rene:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ea1fc6506da1a60c0a0cc17628bb43c2ed0d5701

commit ea1fc6506da1a60c0a0cc17628bb43c2ed0d5701
Author:     Rene Ladan <rene@FreeBSD.org>
AuthorDate: 2025-12-31 11:54:38 +0000
Commit:     Rene Ladan <rene@FreeBSD.org>
CommitDate: 2025-12-31 11:54:38 +0000

    games/keeperrl: Remove expired port
    
    2025-12-31 games/keeperrl: Very outdated, fails to build and unmaintained in tree for years
---
 MOVED                                         |  1 +
 games/Makefile                                |  1 -
 games/keeperrl/Makefile                       | 58 -----------------------
 games/keeperrl/distinfo                       |  5 --
 games/keeperrl/files/patch-main.cpp           | 43 -----------------
 games/keeperrl/files/patch-stack__printer.cpp | 20 --------
 games/keeperrl/pkg-descr                      |  7 ---
 games/keeperrl/pkg-plist                      | 68 ---------------------------
 8 files changed, 1 insertion(+), 202 deletions(-)

diff --git a/MOVED b/MOVED
index 16571fc79684..62b31636efe3 100644
--- a/MOVED
+++ b/MOVED
@@ -4966,3 +4966,4 @@ www/unit-wasm||2025-12-31|Has expired: Upstream repo archived on Oct 8 2025
 devel/libstatgrab0|devel/libstatgrab|2025-12-31|Has expired: Use devel/libstatgrab instead
 www/shellinabox|sysutils/ttyd|2025-12-31|Has expired: Abandonware and outdated, last release in 2016. Use sysutils/ttyd instead
 security/krb5-120||2025-12-31|Has expired: Now that MIT KRB5 1.22 is GA 1.20 is EOL
+games/keeperrl||2025-12-31|Has expired: Very outdated, fails to build and unmaintained in tree for years
diff --git a/games/Makefile b/games/Makefile
index 4140a1a7b213..9870c1f5d474 100644
--- a/games/Makefile
+++ b/games/Makefile
@@ -434,7 +434,6 @@
     SUBDIR += kbreakout
     SUBDIR += kdegames
     SUBDIR += kdiamond
-    SUBDIR += keeperrl
     SUBDIR += kevedit
     SUBDIR += kfourinline
     SUBDIR += kgoldrunner
diff --git a/games/keeperrl/Makefile b/games/keeperrl/Makefile
deleted file mode 100644
index c5c0aa75849d..000000000000
--- a/games/keeperrl/Makefile
+++ /dev/null
@@ -1,58 +0,0 @@
-PORTNAME=	keeperrl
-PORTVERSION=	0.0.${ALPHA_VERSION}
-PORTREVISION=	6
-CATEGORIES=	games
-
-PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
-PATCHFILES=	c0fc69cbee72.patch:-p1
-
-MAINTAINER=	ports@FreeBSD.org
-COMMENT=	Ambitious dungeon builder with roguelike elements
-WWW=		https://keeperrl.com/
-
-LICENSE=	GPLv2 OFL11
-LICENSE_COMB=	multi
-LICENSE_FILE_GPLv2=	${WRKSRC}/COPYING.txt
-LICENSE_FILE_OFL11=	${WRKSRC}/data_contrib/SIL_Open_Font_License.txt
-
-BROKEN=		Fails to build, error: a template argument list is expected after a name prefixed by the template keyword
-DEPRECATED=	Very outdated, fails to build and unmaintained in tree for years
-EXPIRATION_DATE=2025-12-31
-
-LIB_DEPENDS=	libvorbis.so:audio/libvorbis \
-		libcurl.so:ftp/curl
-
-USES=		compiler:c++14-lang gl gmake localbase openal sdl
-
-USE_GITHUB=	yes
-GH_ACCOUNT=	miki151
-GH_TAGNAME=	alpha${ALPHA_VERSION}
-USE_GL=		gl
-USE_SDL=	sdl2 image2
-
-ALPHA_VERSION=	23
-LIBS+=		-lexecinfo
-MAKE_ARGS=	DATA_DIR="${DATADIR}" GCC="${CXX}" \
-		LDFLAGS="${LDFLAGS}" RELEASE=true
-# USE_GCC adds -Wl,-rpath=${_GCC_RUNTIME} which breaks -x c++-header
-MAKE_ARGS+=	PCH= PCHINC=
-
-LDFLAGS_i386=	-Wl,-znotext
-
-DESKTOP_ENTRIES="KeeperRL" "" "" "keeper" \
-		"Game;Simulation;" false
-
-post-patch:
-	@${REINPLACE_CMD} -e '/^CFLAGS =/ s|=|= ${CFLAGS}|' \
-		-e '/^LIBS =/ s|$$| ${LIBS}|' \
-		-e 's|bash|sh|' \
-		${WRKSRC}/Makefile
-	@${REINPLACE_CMD} 's|bash|sh|' ${WRKSRC}/check_serial.sh
-
-do-install:
-	${INSTALL_PROGRAM} ${WRKSRC}/keeper ${STAGEDIR}${PREFIX}/bin
-	@${MKDIR} ${STAGEDIR}${DATADIR}
-	cd ${WRKSRC} && ${COPYTREE_SHARE} "data_contrib data_free" \
-		${STAGEDIR}${DATADIR} "! -name *License.txt"
-
-.include <bsd.port.mk>
diff --git a/games/keeperrl/distinfo b/games/keeperrl/distinfo
deleted file mode 100644
index 5ce396c39470..000000000000
--- a/games/keeperrl/distinfo
+++ /dev/null
@@ -1,5 +0,0 @@
-TIMESTAMP = 1516986107
-SHA256 (miki151-keeperrl-0.0.23-alpha23_GH0.tar.gz) = 046cba3c8834f52f9e796d2deece8770b833d351eb222c216fdf65b0c1869979
-SIZE (miki151-keeperrl-0.0.23-alpha23_GH0.tar.gz) = 3252139
-SHA256 (c0fc69cbee72.patch) = ca2a3158182b1bcab2c9ec0d9e9525800d49c62f2d544c9a3b6c01fbee75750b
-SIZE (c0fc69cbee72.patch) = 533
diff --git a/games/keeperrl/files/patch-main.cpp b/games/keeperrl/files/patch-main.cpp
deleted file mode 100644
index cc3ca4a0157f..000000000000
--- a/games/keeperrl/files/patch-main.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
---- main.cpp.orig	2018-01-31 20:31:47 UTC
-+++ main.cpp
-@@ -22,6 +22,7 @@
- #include "extern/ProgramOptions.h"
- 
- #include <exception>
-+#include <sys/stat.h>
- 
- #include "view.h"
- #include "options.h"
-@@ -285,18 +286,8 @@ static int keeperMain(po::parser& commandLineFlags) {
-   DirectoryPath userPath([&] () -> string {
-     if (commandLineFlags["user_dir"].was_set())
-       return commandLineFlags["user_dir"].get().string;
--#ifdef USER_DIR
--    else if (const char* userDir = USER_DIR)
--      return userDir;
--#endif // USER_DIR
--#ifndef WINDOWS
--    else if (const char* localPath = std::getenv("XDG_DATA_HOME"))
--      return localPath + string("/KeeperRL");
--#endif
--#ifdef ENABLE_LOCAL_USER_DIR // Some environments don't define XDG_DATA_HOME
-     else if (const char* homePath = std::getenv("HOME"))
--      return homePath + string("/.local/share/KeeperRL");
--#endif // ENABLE_LOCAL_USER_DIR
-+      return homePath + string("/.KeeperRL");
-     else
-       return ".";
-   }());
-@@ -311,8 +302,10 @@ static int keeperMain(po::parser& commandLineFlags) {
- #else
-     uploadUrl = "http://localhost/~michal/" + serverVersion;
- #endif
--  //userPath.createIfDoesntExist();
--  CHECK(userPath.exists()) << "User directory \"" << userPath << "\" doesn't exist.";
-+  if (!userPath.exists()) {
-+    auto configDir = userPath.file("");
-+    ::mkdir(configDir.getPath(), 0775);
-+  }
-   auto settingsPath = userPath.file("options.txt");
-   if (commandLineFlags["restore_settings"].was_set())
-     remove(settingsPath.getPath());
diff --git a/games/keeperrl/files/patch-stack__printer.cpp b/games/keeperrl/files/patch-stack__printer.cpp
deleted file mode 100644
index 4562459edd99..000000000000
--- a/games/keeperrl/files/patch-stack__printer.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-https://svnweb.freebsd.org/changeset/base/294930
-
-stack_printer.cpp:329:18: error: assigning to 'char *' from incompatible type 'void *'
-      ss.ss_sp = (void*)alternate_stack;
-                 ^~~~~~~~~~~~~~~~~~~~~~
-
---- stack_printer.cpp.orig	2017-10-24 09:45:42 UTC
-+++ stack_printer.cpp
-@@ -326,7 +326,11 @@ int printStacktraceWithGdb() {
-       stack_t ss = {};
-       /* malloc is usually used here, I'm not 100% sure my static allocation
-          is valid but it seems to work just fine. */
-+#if defined(__DragonFly__)
-+      ss.ss_sp = (char*)alternate_stack;
-+#else
-       ss.ss_sp = (void*)alternate_stack;
-+#endif
-       ss.ss_size = SIGSTKSZ;
-       ss.ss_flags = 0;
- 
diff --git a/games/keeperrl/pkg-descr b/games/keeperrl/pkg-descr
deleted file mode 100644
index 7d3eaac456ea..000000000000
--- a/games/keeperrl/pkg-descr
+++ /dev/null
@@ -1,7 +0,0 @@
-Take the role of an evil wizard and seek the ultimate knowledge of destruction.
-Explore the world, murder innocent villagers and burn their homes. Build your
-dungeon, lay traps and prepare for an assault of angry heroes.
-
-When you control your minions the game becomes a classic roguelike, with
-turn-based and very tactical combat. You can also play as an adventurer and
-assault dungeons made by you or other players.
diff --git a/games/keeperrl/pkg-plist b/games/keeperrl/pkg-plist
deleted file mode 100644
index e9a6c549b730..000000000000
--- a/games/keeperrl/pkg-plist
+++ /dev/null
@@ -1,68 +0,0 @@
-bin/keeper
-%%DATADIR%%/data_contrib/Lato-Bol.ttf
-%%DATADIR%%/data_contrib/Symbola.ttf
-%%DATADIR%%/data_free/credits.txt
-%%DATADIR%%/data_free/images/frame.png
-%%DATADIR%%/data_free/images/icons.png
-%%DATADIR%%/data_free/images/morale_icons.png
-%%DATADIR%%/data_free/images/mouse_cursor.png
-%%DATADIR%%/data_free/images/mouse_cursor2.png
-%%DATADIR%%/data_free/images/spells.png
-%%DATADIR%%/data_free/images/splash2.png
-%%DATADIR%%/data_free/images/splash2a.png
-%%DATADIR%%/data_free/images/splash2b.png
-%%DATADIR%%/data_free/images/splash2c.png
-%%DATADIR%%/data_free/images/splash2d.png
-%%DATADIR%%/data_free/images/splash2e.png
-%%DATADIR%%/data_free/images/splash2f.png
-%%DATADIR%%/data_free/images/stat_icons.png
-%%DATADIR%%/data_free/images/team_icons.png
-%%DATADIR%%/data_free/images/ui/barthin.png
-%%DATADIR%%/data_free/images/ui/corner1.png
-%%DATADIR%%/data_free/images/ui/corner2X.png
-%%DATADIR%%/data_free/images/ui/corner2X_highlight.png
-%%DATADIR%%/data_free/images/ui/cornerBOTTOMR.png
-%%DATADIR%%/data_free/images/ui/cornerTOPL.png
-%%DATADIR%%/data_free/images/ui/cornerTOPR.png
-%%DATADIR%%/data_free/images/ui/cornermini.png
-%%DATADIR%%/data_free/images/ui/cornermini2.png
-%%DATADIR%%/data_free/images/ui/down.png
-%%DATADIR%%/data_free/images/ui/horibar.png
-%%DATADIR%%/data_free/images/ui/horibarmini.png
-%%DATADIR%%/data_free/images/ui/horibarmini2.png
-%%DATADIR%%/data_free/images/ui/horicorner1.png
-%%DATADIR%%/data_free/images/ui/horicorner2.png
-%%DATADIR%%/data_free/images/ui/horiline.png
-%%DATADIR%%/data_free/images/ui/horiline2.png
-%%DATADIR%%/data_free/images/ui/horimiddle.png
-%%DATADIR%%/data_free/images/ui/immigrant2bg.png
-%%DATADIR%%/data_free/images/ui/immigrantbg.png
-%%DATADIR%%/data_free/images/ui/menu_highlight.png
-%%DATADIR%%/data_free/images/ui/scrollbar.png
-%%DATADIR%%/data_free/images/ui/scrollmark.png
-%%DATADIR%%/data_free/images/ui/ui_highlight.png
-%%DATADIR%%/data_free/images/ui/up.png
-%%DATADIR%%/data_free/images/ui/vertbar.png
-%%DATADIR%%/data_free/images/ui/vertbar2.png
-%%DATADIR%%/data_free/images/ui/vertbarmini.png
-%%DATADIR%%/data_free/images/ui/vertbarmini2.png
-%%DATADIR%%/data_free/images/ui/vertibarmsg1.png
-%%DATADIR%%/data_free/images/ui/vertibarmsg2.png
-%%DATADIR%%/data_free/images/window_bg.png
-%%DATADIR%%/data_free/names/artifacts.txt
-%%DATADIR%%/data_free/names/aztec_names.txt
-%%DATADIR%%/data_free/names/creatures.txt
-%%DATADIR%%/data_free/names/cyclops.txt
-%%DATADIR%%/data_free/names/demons.txt
-%%DATADIR%%/data_free/names/dogs.txt
-%%DATADIR%%/data_free/names/dragons.txt
-%%DATADIR%%/data_free/names/dwarfs.txt
-%%DATADIR%%/data_free/names/first_female.txt
-%%DATADIR%%/data_free/names/first_male.txt
-%%DATADIR%%/data_free/names/gods.txt
-%%DATADIR%%/data_free/names/orc.txt
-%%DATADIR%%/data_free/names/town_names.txt
-%%DATADIR%%/data_free/names/vampires.txt
-%%DATADIR%%/data_free/names/world.txt
-%%DATADIR%%/data_free/sokoban_input.txt
-%%DATADIR%%/data_free/splash.txt