doomlegacy: Import of doomlegacy 1.47.2 as wip/doomlegacy.
This commit is contained in:
parent
2d280ad3c3
commit
e1fca15d16
|
@ -0,0 +1,22 @@
|
|||
This is one of the most popular Doom source ports. It enhances Doom with things
|
||||
like TCP/IP networking, OpenGL renderer, Heretic support and much more.
|
||||
|
||||
Doom Legacy can play Doom, Boom, Marine's Best Friend (MBF), and Heretic maps.
|
||||
In addition to the original games by id Software and Raven Software, there are
|
||||
hundreds of free, fan-made maps available on the Internet. These maps are
|
||||
typically distributed as PWAD files, which are not fully self-contained.
|
||||
For each game you will also need the corresponding IWAD data file, which
|
||||
contains all the graphics, wall and floor textures, sounds, and music for that
|
||||
game. For example, if you want to play Doom II maps, you'll need the IWAD file
|
||||
doom2.wad, or one of the free replacements.
|
||||
|
||||
Legacy has implemented the fundamental and de-facto-standard Boom extensions,
|
||||
and the Marine's Best Friend (MBF) extensions. Legacy also has implemented
|
||||
among other things 3D floors, swimmable water and other special effects using
|
||||
extended linedef codes, and supports the FraggleScript scripting language.
|
||||
|
||||
Note:
|
||||
This engine can be used to play the SIGIL Megawad (Doom Episode 5).
|
||||
Use SIGIL_COMPAT.wad together with doom.wad as IWAD like this:
|
||||
|
||||
$ doomlegacy -iwad /tmp/doom.wad -file /tmp/SIGIL_COMPAT.wad
|
|
@ -0,0 +1,63 @@
|
|||
# $NetBSD$
|
||||
|
||||
VERS= 1.47.2
|
||||
PKGNAME= doomlegacy-${VERS}
|
||||
CATEGORIES= games
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=doomlegacy/}
|
||||
DISTNAME= ${PKGNAME:S/-/_/}_source
|
||||
DISTFILES= ${DEFAULT_DISTFILES} doomlegacy_${VERS}_common.zip
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
||||
|
||||
MAINTAINER= micha@NetBSD.org
|
||||
HOMEPAGE= http://doomlegacy.sourceforge.net/
|
||||
COMMENT= The legacy of Doom
|
||||
LICENSE= gnu-gpl-v2
|
||||
|
||||
# Tested on GNU/Linux and NetBSD
|
||||
# Source has support for the other listed OS too (may need additional work)
|
||||
ONLY_FOR_PLATFORM= Darwin-*-* DragonFly-*-* FreeBSD-*-* Linux-*-* \
|
||||
NetBSD-*-* OpenBSD-*-* SunOS-*-*
|
||||
|
||||
MAKE_JOBS_SAFE= no
|
||||
|
||||
.include "../../mk/bsd.prefs.mk"
|
||||
|
||||
USE_TOOLS+= gmake
|
||||
.if ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly"
|
||||
MAKE_FLAGS+= OS=FREEBSD
|
||||
.elif ${OPSYS} == "NetBSD"
|
||||
MAKE_FLAGS+= OS=NETBSD
|
||||
.elif ${OPSYS} == "Darwin"
|
||||
MAKE_FLAGS+= OS=MAC
|
||||
.else
|
||||
# All other Unix variants (should work for GNU/Linux, OpenBSD and SunOS)
|
||||
MAKE_FLAGS+= OS=LINUX
|
||||
.endif
|
||||
MAKE_FLAGS+= HAVE_MIXER=1 DEBUG=1
|
||||
|
||||
.include "../../mk/endian.mk"
|
||||
|
||||
.if ${MACHINE_ENDIAN} == "big"
|
||||
CFLAGS+= -D__BIG_ENDIAN__=1
|
||||
.endif
|
||||
|
||||
INSTALLATION_DIRS= bin share/doc/doomlegacy share/doomlegacy
|
||||
|
||||
do-install:
|
||||
cd ${WRKSRC} && \
|
||||
${INSTALL_PROGRAM} bin/doomlegacy \
|
||||
${DESTDIR}${PREFIX}/bin; \
|
||||
${INSTALL_DATA} docs/legacy.css docs/whatsnew.html \
|
||||
${DESTDIR}${PREFIX}/share/doc/doomlegacy; \
|
||||
cd ${WRKDIR}/doomlegacy_${VERS} && \
|
||||
${INSTALL_DATA} legacy.wad \
|
||||
${DESTDIR}${PREFIX}/share/doomlegacy/legacy.wad
|
||||
|
||||
BUILDLINK_API_DEPENDS.SDL_mixer+= SDL_mixer>=1.2.7
|
||||
.include "../../audio/SDL_mixer/buildlink3.mk"
|
||||
BUILDLINK_API_DEPENDS.SDL+= SDL>=1.2.10
|
||||
.include "../../devel/SDL/buildlink3.mk"
|
||||
.include "../../graphics/MesaLib/buildlink3.mk"
|
||||
|
||||
.include "../../mk/bsd.pkg.mk"
|
|
@ -0,0 +1,5 @@
|
|||
@comment $NetBSD$
|
||||
bin/doomlegacy
|
||||
share/doc/doomlegacy/legacy.css
|
||||
share/doc/doomlegacy/whatsnew.html
|
||||
share/doomlegacy/legacy.wad
|
|
@ -0,0 +1,15 @@
|
|||
$NetBSD$
|
||||
|
||||
SHA1 (doomlegacy_1.47.2_common.zip) = 9e6faaea797b988565a078a47e80bbe2119d78b9
|
||||
RMD160 (doomlegacy_1.47.2_common.zip) = 1ac1f47563ad2c0d7c5c1bea93a2aaeb1c001c10
|
||||
SHA512 (doomlegacy_1.47.2_common.zip) = 7c7c2a0cbab5b9b4645a3fe166addd597de533db7ab41f8011c6c526a868bb04c8dd6b0d27b48765406fbab328bf64fc7827770b395e6c0e5d861d99c4d3865a
|
||||
Size (doomlegacy_1.47.2_common.zip) = 981654 bytes
|
||||
SHA1 (doomlegacy_1.47.2_source.tar.bz2) = afb1213eb8b228d9f131e4c63ead97afed2f599f
|
||||
RMD160 (doomlegacy_1.47.2_source.tar.bz2) = 661f0fa2bdc58a2f5f9582f36817ddd9d48df9bc
|
||||
SHA512 (doomlegacy_1.47.2_source.tar.bz2) = e2e182c18dd24c14e954f791c58e44119457bb74af4bb079c16219406176536f9fd414afd6c9fa0e956a6062b5a346bbf19ebf4c0d2d300e2e66b2eb01cf53fd
|
||||
Size (doomlegacy_1.47.2_source.tar.bz2) = 2276199 bytes
|
||||
SHA1 (patch-Makefile) = a1aea57169fc1325182dcc2afeeaa953353f2823
|
||||
SHA1 (patch-src_Makefile) = f0b431aff892469982ed1a6e5d562ff0fb60c996
|
||||
SHA1 (patch-src_doomtype.h) = 856bce16ef7e08db28f6090a6506c6a9d58493bc
|
||||
SHA1 (patch-src_i__tcp.c) = 1c0c6017d24640217e29ed238e210850329d0e75
|
||||
SHA1 (patch-src_sdl_i__system.c) = a89c3356f15c5c79e02a36fd137491e6e3faf384
|
|
@ -0,0 +1,36 @@
|
|||
$NetBSD$
|
||||
|
||||
Add NetBSD to OS list.
|
||||
|
||||
--- Makefile.orig 2017-03-03 20:22:35.000000000 +0000
|
||||
+++ Makefile
|
||||
@@ -418,7 +418,7 @@ endif
|
||||
export SMIF
|
||||
|
||||
|
||||
-OS_LIST:=LINUX FREEBSD WIN32 WIN98 WIN7 OS2 DOS MAC
|
||||
+OS_LIST:=LINUX FREEBSD NETBSD WIN32 WIN98 WIN7 OS2 DOS MAC
|
||||
|
||||
ifeq ($(OS), LINUX)
|
||||
LINUX=1
|
||||
@@ -429,6 +429,12 @@ ifeq ($(OS), FREEBSD)
|
||||
$(info Please submit bug reports, and bug fixes. )
|
||||
FREEBSD=1
|
||||
else
|
||||
+ifeq ($(OS), NETBSD)
|
||||
+ # Uses statvfs(5).
|
||||
+ $(info NetBSD support is dependent upon user reports.)
|
||||
+ $(info Please submit bug reports, and bug fixes. )
|
||||
+ FREEBSD=1
|
||||
+else
|
||||
ifeq ($(OS), WIN32)
|
||||
$(info Generic Windows compile. May or may-not work on modern Windows.)
|
||||
$(info Please submit bug reports, and bug fixes. )
|
||||
@@ -482,6 +488,7 @@ endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
+endif
|
||||
export OS
|
||||
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
$NetBSD$
|
||||
|
||||
Add NetBSD to OS list.
|
||||
|
||||
--- src/Makefile.orig 2018-07-16 09:17:06.000000000 +0000
|
||||
+++ src/Makefile
|
||||
@@ -449,7 +449,7 @@ endif
|
||||
endif
|
||||
|
||||
|
||||
-OS_LIST:=LINUX FREEBSD WIN32 WIN7 WIN98 OS2 DOS MAC
|
||||
+OS_LIST:=LINUX FREEBSD NETBSD WIN32 WIN7 WIN98 OS2 DOS MAC
|
||||
|
||||
OPTS:=
|
||||
|
||||
@@ -479,6 +479,14 @@ ifeq ($(OS), FREEBSD)
|
||||
# __FreeBSD__ __FreeBSD_kernel__ __DragonFly__
|
||||
# SDL_platform.h for FreeBSD defines: __FREEBSD__
|
||||
else
|
||||
+ifeq ($(OS), NETBSD)
|
||||
+ # Uses statvfs(5).
|
||||
+ NETBSD=1
|
||||
+ OPTS:=-DLINUX -DNETBSD
|
||||
+ #Known Compiler symbols
|
||||
+ # __NetBSD__
|
||||
+ # SDL_platform.h for FreeBSD defines: __NETBSD__
|
||||
+else
|
||||
ifeq ($(OS), WIN32)
|
||||
WIN32=1
|
||||
DOSFILE=1
|
||||
@@ -545,6 +553,7 @@ endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
+endif
|
||||
export DOSFILE
|
||||
|
||||
# all OPTINC need to have -I. because of how includes are written
|
|
@ -0,0 +1,15 @@
|
|||
$NetBSD$
|
||||
|
||||
Use limits.h for NetBSD too.
|
||||
|
||||
--- src/doomtype.h.orig 2019-06-12 09:36:08.000000000 +0000
|
||||
+++ src/doomtype.h
|
||||
@@ -168,7 +168,7 @@ int strlwr(char *n);
|
||||
// Predefined with some OS.
|
||||
#ifdef __WIN32__
|
||||
#include <limits.h>
|
||||
-#elif defined( MACOS_DI ) || defined( __MACH__ ) || defined( FREEBSD )
|
||||
+#elif defined( MACOS_DI ) || defined( __MACH__ ) || defined( FREEBSD ) || defined( NETBSD )
|
||||
#include <limits.h>
|
||||
#else
|
||||
// Linux GNU, which also includes limits.h
|
|
@ -0,0 +1,20 @@
|
|||
$NetBSD$
|
||||
|
||||
Disable IPX for NetBSD.
|
||||
|
||||
--- src/i_tcp.c.orig 2018-07-16 09:17:06.000000000 +0000
|
||||
+++ src/i_tcp.c
|
||||
@@ -169,6 +169,13 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
+#ifdef NETBSD
|
||||
+// NetBSD does not have IPX.
|
||||
+# ifdef USE_IPX
|
||||
+# undef USE_IPX
|
||||
+# endif
|
||||
+#endif
|
||||
+
|
||||
// Reported to be __OpenBSD__ , but it should be all caps and I am paranoid.
|
||||
#if defined( __OpenBSD__ ) || defined( __OPENBSD__ )
|
||||
// OpenBSD does not have IPX.
|
|
@ -0,0 +1,24 @@
|
|||
$NetBSD$
|
||||
|
||||
Use statvfs(5) for NetBSD.
|
||||
|
||||
--- src/sdl/i_system.c.orig 2017-03-03 20:22:35.000000000 +0000
|
||||
+++ src/sdl/i_system.c
|
||||
@@ -74,7 +74,7 @@
|
||||
// meminfo
|
||||
# include <sys/types.h>
|
||||
# include <sys/sysctl.h>
|
||||
-# elif defined( __MACH__ )
|
||||
+# elif defined( NETBSD ) || defined( __MACH__ )
|
||||
# include <sys/statvfs.h>
|
||||
# else
|
||||
# include <sys/vfs.h>
|
||||
@@ -861,7 +861,7 @@ uint64_t I_GetDiskFreeSpace(void)
|
||||
# ifdef SOLARIS
|
||||
goto guess;
|
||||
|
||||
-# elif defined( __MACH__ )
|
||||
+# elif defined( NETBSD ) || defined( __MACH__ )
|
||||
struct statvfs stfs;
|
||||
if (statvfs(".", &stfs) == -1)
|
||||
goto guess;
|
Loading…
Reference in New Issue