aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Dokuchaev <danfe@FreeBSD.org>2024-01-04 08:48:26 +0000
committerAlexey Dokuchaev <danfe@FreeBSD.org>2024-01-04 08:48:26 +0000
commit3942b3cb0db10f3559cb92455d177a554a1e0ad5 (patch)
tree240abc1d56e67979e3d30508b8220ccde58a81b6
parent184f03fed02500e72425c43e760b37f2f276de61 (diff)
downloadports-3942b3cb0db10f3559cb92455d177a554a1e0ad5.tar.gz
ports-3942b3cb0db10f3559cb92455d177a554a1e0ad5.zip
games/doomlegacy: update Doom Legacy to version 1.48.14 (rev1663)
- Retire IPX support (removed from FreeBSD nearly 10 years ago) - Add optional support for zipped WAD files, e.g. `phobiata.zip' - Link against zlib to decompress some "extended node" formats - Do not patch the `make_options' file, propagate the variables down to make(1) via the environment and command line instead - Drop needless parentheses when installing documentation files Reported by: portscout
-rw-r--r--games/doomlegacy/Makefile32
-rw-r--r--games/doomlegacy/distinfo10
-rw-r--r--games/doomlegacy/files/patch-src_Makefile34
3 files changed, 31 insertions, 45 deletions
diff --git a/games/doomlegacy/Makefile b/games/doomlegacy/Makefile
index 7f052c468bff..4b939818fd71 100644
--- a/games/doomlegacy/Makefile
+++ b/games/doomlegacy/Makefile
@@ -1,5 +1,5 @@
PORTNAME= doomlegacy
-PORTVERSION= 1.48.12
+PORTVERSION= 1.48.14
PORTEPOCH= 1
CATEGORIES= games
MASTER_SITES= SF/${PORTNAME}/${DISTVERSION:S,_,%20,}/
@@ -16,38 +16,32 @@ LICENSE= GPLv2
USES= gl gmake sdl tar:bzip2
USE_GL= gl glu
USE_SDL= mixer sdl
+MAKE_ARGS= OS=${OPSYS:tu}
+MAKE_ENV= CC_ENVIRONMENT=1 HAVE_ZLIB=1
PLIST_FILES= bin/${PORTNAME} share/doom/dogs.wad share/doom/legacy.wad
PORTDOCS= *
-OPTIONS_DEFINE= DOCS
+OPTIONS_DEFINE= DOCS LIBZIP
OPTIONS_DEFINE_i386= ASM
+OPTIONS_DEFAULT= LIBZIP
ASM_BROKEN= segmentation fault in ASM_PatchRowBytes()
-.if exists(/usr/include/netipx/ipx.h)
-OPTIONS_DEFINE+= IPX
-IPX_DESC= IPX protocol support
-.endif
-
ASM_BUILD_DEPENDS= nasm:devel/nasm
ASM_MAKE_ENV= USEASM=1
-.include <bsd.port.options.mk>
+LIBZIP_DESC= Zipped WAD file support via libzip
+LIBZIP_LIB_DEPENDS= libzip.so:archivers/libzip
+LIBZIP_MAKE_ENV= HAVE_LIBZIP=1
post-patch: .SILENT
-# Adjust default WAD search path
+# Adjust default WAD search path and disable IPX
${REINPLACE_CMD} -e '/DEFWADS04/s|/.*|${DMDIR}"|' \
- ${WRKSRC}/src/doomdef.h
-.if ! ${PORT_OPTIONS:MIPX}
- ${REINPLACE_CMD} -e '/USE_IPX/s|define|undef|' ${WRKSRC}/src/doomdef.h
- ${REINPLACE_CMD} -e 's| -lipx||' ${WRKSRC}/src/Makefile
-.endif
+ -e '/USE_IPX/s|define|undef|' ${WRKSRC}/src/doomdef.h
pre-build:
- ${ECHO_CMD} CC_ENVIRONMENT=1 OS=${OPSYS:tu} | \
- ${XARGS} -n 1 >> ${BUILD_WRKSRC}/make_options
- ${MAKE_CMD} -C ${BUILD_WRKSRC} dirs
- ${MAKE_CMD} -C ${BUILD_WRKSRC} depend
+ @${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} depend \
+ -C ${BUILD_WRKSRC}
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/bin/doomlegacy ${STAGEDIR}${PREFIX}/bin
@@ -55,7 +49,7 @@ do-install:
${INSTALL_DATA} ${WRKDIR}/${PORTNAME}_${PORTVERSION}_common/*.wad \
${STAGEDIR}${DMDIR}
@${MKDIR} ${STAGEDIR}${DOCSDIR}
- (cd ${WRKSRC}/docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
+ cd ${WRKSRC}/docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}
.include "${.CURDIR}/../doom-data/Makefile.include"
.include <bsd.port.mk>
diff --git a/games/doomlegacy/distinfo b/games/doomlegacy/distinfo
index cab7521daea2..20942412c00f 100644
--- a/games/doomlegacy/distinfo
+++ b/games/doomlegacy/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1671410365
-SHA256 (doomlegacy_1.48.12_source.tar.bz2) = 8378e69730ae8fa57596b0c78d24d158618b90dabe9597793b5bd077324b5c44
-SIZE (doomlegacy_1.48.12_source.tar.bz2) = 2572064
-SHA256 (doomlegacy_1.48.12_common.zip) = 94cec77e7674b4c80d3f05812335918030056b33889c08d0389c6fffa28f368b
-SIZE (doomlegacy_1.48.12_common.zip) = 1055689
+TIMESTAMP = 1703805810
+SHA256 (doomlegacy_1.48.14_source.tar.bz2) = 32f1de12088aa0fc339c12de1d2ba6756a9e6ab85ef6c4bcd6f8985374a73064
+SIZE (doomlegacy_1.48.14_source.tar.bz2) = 2624909
+SHA256 (doomlegacy_1.48.14_common.zip) = 3fecd4ee0fe943b92bf77eac08436953ab1a032403f539879c8599c8c02fb9f8
+SIZE (doomlegacy_1.48.14_common.zip) = 1056545
diff --git a/games/doomlegacy/files/patch-src_Makefile b/games/doomlegacy/files/patch-src_Makefile
index d94cf2bc29f3..35550b1c87ff 100644
--- a/games/doomlegacy/files/patch-src_Makefile
+++ b/games/doomlegacy/files/patch-src_Makefile
@@ -1,15 +1,6 @@
---- src/Makefile.orig 2022-12-18 00:00:15 UTC
+--- src/Makefile.orig 2023-12-28 23:33:46 UTC
+++ src/Makefile
-@@ -234,7 +234,7 @@ OPTLEV=-O3
- # Developers with svn can enable this to have svn revision number in executable.
- # Causes compile error message otherwise.
- # Until can find test for presence of svn, this is best that can be done.
--SVN_ENABLE=1
-+#SVN_ENABLE=1
-
- # This Makefile may be invoked from within the src directory,
- # or invoked from the Main Makefile with SRC=<directory>.
-@@ -610,8 +610,10 @@ endif
+@@ -613,8 +613,10 @@ endif
OPTINC:=
INSTALL_SUPPL:=
@@ -21,16 +12,17 @@
ifdef ARCH
# if does not have leading -march, -mcpu, -mtune, or similar.
ifeq ($(filter -march% -mcpu% -mtune% -m%, $(strip $(ARCH))),)
-@@ -770,7 +772,7 @@ ifeq ($(SMIF), SDL)
- # default is Linux, for all unix SDL
- EXENAME:=doomlegacy
- LDFLAGS+=-L/usr/X11R6/lib
-- LIBS+=-lGL -lGLU -lm
-+ LIBS+=-lGL -lGLU -lm -lipx
- # -L/usr/X11R6/lib is needed by Linux 2.4 and others that still have
- # the GLU libraries in an X11 directory.
- # -lm is needed for pow, powf, and other MATH1 functions.
-@@ -1305,11 +1307,11 @@ ifdef DEBUG
+@@ -1260,8 +1262,7 @@ ifdef CDMUS
+ endif
+
+ # LIBZIP
+-# For now, Linux only.
+-ifeq ($(OS), LINUX)
++ifneq ($(filter LINUX FREEBSD,$(OS)),)
+ ifdef HAVE_DLOPEN
+ LIBS+=-ldl
+ OPTS+=-DHAVE_DLOPEN
+@@ -1317,11 +1318,11 @@ ifdef DEBUG
else
# build a normal optimized version
#CFLAGS+=-O3