pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
doomlegacy: Add man page
Module Name: pkgsrc-wip
Committed By: Michael Baeuerle <michael.baeuerle%stz-e.de@localhost>
Pushed By: micha
Date: Mon Jun 17 10:54:13 2019 +0200
Changeset: 31e17155b71ce9d54a8929f2113b69531ca73e13
Modified Files:
doomlegacy/Makefile
doomlegacy/PLIST
doomlegacy/TODO
doomlegacy/distinfo
Added Files:
doomlegacy/files/doomlegacy.in1
doomlegacy/patches/patch-src_am__map.c
Removed Files:
doomlegacy/README
Log Message:
doomlegacy: Add man page
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=31e17155b71ce9d54a8929f2113b69531ca73e13
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
doomlegacy/Makefile | 24 ++-
doomlegacy/PLIST | 1 +
doomlegacy/README | 15 --
doomlegacy/TODO | 14 +-
doomlegacy/distinfo | 1 +
doomlegacy/files/doomlegacy.in1 | 267 +++++++++++++++++++++++++++++++++
doomlegacy/patches/patch-src_am__map.c | 17 +++
7 files changed, 315 insertions(+), 24 deletions(-)
diffs:
diff --git a/doomlegacy/Makefile b/doomlegacy/Makefile
index 599364e69d..08d9d0fb1c 100644
--- a/doomlegacy/Makefile
+++ b/doomlegacy/Makefile
@@ -18,6 +18,8 @@ LICENSE= gnu-gpl-v2
ONLY_FOR_PLATFORM= Darwin-*-* DragonFly-*-* FreeBSD-*-* Linux-*-* \
NetBSD-*-* OpenBSD-*-* SunOS-*-*
+USE_LANGUAGES+= c99
+
USE_TOOLS+= gmake
MAKE_JOBS_SAFE= no
@@ -40,17 +42,16 @@ MAKE_FLAGS+= HAVE_MIXER=1
# Some compilers define this themselves (but maybe not all)
CFLAGS+= -D__BIG_ENDIAN__
.endif
-CFLAGS+= -Wno-char-subscripts -Wno-unused-result
# DOOMWADDIR is intentionally shared with other Doom packages
DOOMWADDIR= share/doom
-INSTALLATION_DIRS= bin share/doc/doomlegacy ${DOOMWADDIR}
+INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/doc/doomlegacy ${DOOMWADDIR}
MESSAGE_SRC+= MESSAGE.doomlegacy
MESSAGE_SUBST+= PKGNAME=${PKGNAME:C/-.*//}
MESSAGE_SUBST+= DOOMWADDIR_CONF="${PREFIX}/${DOOMWADDIR}"
-# Configure LEGACYWADDIR and DOOMWADDIR
+# Configure defaults for LEGACYWADDIR and DOOMWADDIR
SUBST_CLASSES+= doomdef
SUBST_STAGE.doomdef= do-configure
SUBST_MESSAGE.doomdef= Preparing doomdef.h file ...
@@ -58,6 +59,17 @@ SUBST_FILES.doomdef= src/doomdef.h
SUBST_SED.doomdef= -e 's,LEGACYWADDIR "/usr/local/share/games/doomlegacy",LEGACYWADDIR "${PREFIX}/${DOOMWADDIR}",g'
SUBST_SED.doomdef+= -e 's,DEFWADS01 "~/games/doomlegacy/wads",DEFWADS01 "${PREFIX}/${DOOMWADDIR}",'
+pre-configure:
+ ${CP} ${FILESDIR}/doomlegacy.in1 ${WRKDIR}
+
+# Process manpage template
+do-configure:
+ cd ${WRKDIR} && \
+ ${SED} -e 's,$$NAME,doomlegacy,g' \
+ -e 's,$$VERSION,${VERS},g' \
+ -e 's,$$WADDIR,${PREFIX}/${DOOMWADDIR},g' \
+ doomlegacy.in1 >doomlegacy.1
+
do-install:
cd ${WRKSRC} && \
${INSTALL_PROGRAM} bin/doomlegacy \
@@ -66,9 +78,13 @@ do-install:
${DESTDIR}${PREFIX}/share/doc/doomlegacy; \
cd ${WRKDIR}/doomlegacy_${VERS} && \
${INSTALL_DATA} legacy.wad \
- ${DESTDIR}${PREFIX}/${DOOMWADDIR}/legacy.wad
+ ${DESTDIR}${PREFIX}/${DOOMWADDIR}/legacy.wad; \
+ cd ${WRKDIR} && \
+ ${INSTALL_MAN} ${WRKDIR}/doomlegacy.1 \
+ ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
# Ensure that at least the shareware Episode 1 of Doom is available
+# Note: The demos from games/doom1 are not compatible with the Legacy engine
DEPENDS+= doom1-[0-9]*:../../games/doom1
BUILDLINK_API_DEPENDS.SDL_mixer+= SDL_mixer>=1.2.7
diff --git a/doomlegacy/PLIST b/doomlegacy/PLIST
index 4ace64ff14..a3c876bf7f 100644
--- a/doomlegacy/PLIST
+++ b/doomlegacy/PLIST
@@ -1,5 +1,6 @@
@comment $NetBSD$
bin/doomlegacy
+man/man1/doomlegacy.1
share/doc/doomlegacy/legacy.css
share/doc/doomlegacy/whatsnew.html
share/doom/legacy.wad
diff --git a/doomlegacy/README b/doomlegacy/README
deleted file mode 100644
index 09c08d2ec3..0000000000
--- a/doomlegacy/README
+++ /dev/null
@@ -1,15 +0,0 @@
-A dependency to games/doom1 makes the Doom Shareware Episode 1 "Knee-Deep in the
-Dead" (doom1.wad) directly playable.
-Note: The demos from games/doom1 are not compatible with the Legacy engine.
-
-
-$ doomlegacy
-$ doomlegacy -iwad doom.wad
-$ doomlegacy -game doomu -iwad doom.wad -file doomu.wad
-$ doomlegacy -iwad doom.wad -file SIGIL_COMPAT.wad
-
-$ doomlegacy -iwad doom2.wad
-$ doomlegacy -iwad tnt.wad
-$ doomlegacy -iwad plutonia.wad
-
-$ doomlegacy -iwad heretic.wad
diff --git a/doomlegacy/TODO b/doomlegacy/TODO
index fbb2d5b99c..57a7f534b3 100644
--- a/doomlegacy/TODO
+++ b/doomlegacy/TODO
@@ -1,8 +1,8 @@
[X] Patch to support NetBSD
FreeBSD codepath does not work for NetBSD
=> Use statvfs()
-[X] Build system seems to not support that
- => Disable parallel make jobs
+[X] Build system seems to not support parallel make jobs
+ => Disable
[X] Test on GNU/Linux
[X] Check that Big Endian platforms work too
Seems to work out-of-the-box with GCC
@@ -22,7 +22,10 @@
(DEBUG creates GCC specific options)
Undefine DEBUG
=> Works now
-[ ] Analyze why MIDI music doesn't work
+[X] Analyze why MIDI music doesn't work
+ Instruments missing for synthesizer, not related to package
+ Installed freepats
+ => Works now with timidity
[X] Check OpenGL renderer
GNU/Linux: Looks nice
NetBSD: Fails with:
@@ -31,14 +34,15 @@
[X] Check Doom Episode 2 (The Shores of Hell)
[X] Check Doom Episode 3 (Inferno)
[X] Check Ultimate Doom Episode 4 (Thy Flesh Consumed)
-[X] Check Romero's 25th anniversary Episode 5 (Sigil)
+[X] Check Romero's 25th anniversary Doom Episode 5 (Sigil)
SIGIL_COMPAT.wad works with doom.wad as IWAD
SIGIL.wad works with doomu.wad as IWAD (menu entry for Episode 5 is missing)
[X] Check Doom II (Hell on Earth)
[X] Check Final Doom Part 1 (TNT: Evilution)
[X] Check Final Doom Part 2 (The Plutonia Experiment)
[X] Check Heretic
-[ ] man page with examples how to specify WADs and game type on commandline
+[X] man page with examples how to specify WADs and game type on commandline
+[ ] Check multiplayer/network
EOF
diff --git a/doomlegacy/distinfo b/doomlegacy/distinfo
index e2c394767a..1610f2cd29 100644
--- a/doomlegacy/distinfo
+++ b/doomlegacy/distinfo
@@ -10,6 +10,7 @@ SHA512 (doomlegacy_1.47.2_source.tar.bz2) = e2e182c18dd24c14e954f791c58e44119457
Size (doomlegacy_1.47.2_source.tar.bz2) = 2276199 bytes
SHA1 (patch-Makefile) = 03fc2f70c4a91ab6e7e3611f594eeaee4ac78b6b
SHA1 (patch-src_Makefile) = 15cb6daa92f0d00eaf3b6956ef2813fa8358742c
+SHA1 (patch-src_am__map.c) = 647bcba2374cfa7038646e0c053636b43caaf33a
SHA1 (patch-src_d__main.c) = 89188e534d486d9cfbf2ad92f63b4eb7ab6c50f8
SHA1 (patch-src_doomtype.h) = fefe08ca5fbe8d11325e32ca833a73d3acb36ea1
SHA1 (patch-src_i__tcp.c) = 1c0c6017d24640217e29ed238e210850329d0e75
diff --git a/doomlegacy/files/doomlegacy.in1 b/doomlegacy/files/doomlegacy.in1
new file mode 100644
index 0000000000..e5f0be34f7
--- /dev/null
+++ b/doomlegacy/files/doomlegacy.in1
@@ -0,0 +1,267 @@
+.\"=============================================================================
+.\" Header
+.\"
+.\" Copyright (c) 2019 by Michael Baeuerle.
+.\" License: GNU Free Documentation License (GFDL)
+.\"
+.TH $NAME 1 2019-06-16 Unix "$NAME $VERSION manual"
+.\"
+.\"
+.\"=============================================================================
+.\" NAME section
+.\"
+.SH NAME
+Doom Legacy
+.\"
+.\"
+.\"=============================================================================
+.\" SYNOPSIS section
+.\"
+.SH SYNOPSIS
+.B $NAME
+[-opengl] [-iwad xxx.wad] [-file pwad1.wad [pwad2.wad ...]]
+.PP
+.B $NAME
+[-h [g|m|c|s|d|D] | --version]
+.\"
+.\"
+.\"=============================================================================
+.\" DESCRIPTION section
+.\"
+.SH DESCRIPTION
+
+The following information is quoted from Reference Manual:
+.PP
+.B http://doomlegacy.sourceforge.net/docs/legacy.html
+.PP
+
+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.
+
+Legacy includes two different graphics engines, the old Doom software renderer
+(with many improvements) and an OpenGL-based hardware renderer.
+The OpenGL renderer is shinier and has fancier effects than the software one,
+but it does not do everything that the software renderer does. It does have
+coronas, explosion light, and other light effects that the software renderer
+does not do.
+Some wads rely upon violating wad rules to get trick effects. Most rely upon
+tricking the software renderer into not drawing something. Using those wads
+with the OpenGL renderer you will see holes in the floor and ceiling, and
+warning messges about polygons.
+
+The first game console we know of was from id Software's game Quake.
+We have been inspired by it and have tried to implement the same functionality
+for the benefit of Quake/Doom fans.
+
+Since Legacy 1.2, the network part of Doom has been totally rewritten.
+It now uses a better transfer method for the packets, (which is usually faster),
+and also implements a basic Client/Server model, where some critical game
+options are changeable only by the server in multiplayer games. Since the
+network communication is faster, we have upped the maximum number of players to
+32!
+.\"
+.\"
+.\"=============================================================================
+.\" OPTIONS section
+.\"
+.SH OPTIONS
+.TP 25
+.BI -config " file
+Set the configfile to use.
+.br
+Default: config.cfg
+.TP
+.BI -file " file [file ...]
+Set PWAD (Patch WAD) files to use.
+.TP
+.BI -game " mode
+Forces a particular game mode to be used.
+.br
+Examples for mode: doom, doomu, doom2, heretic
+.br
+(See Reference Manual for complete table)
+.TP
+.BI -h " [section]
+Print help. An optional section can be specified for details.
+.TP
+.BI -home " directory
+Home directory location, where your configfiles and savegames are kept.
+.TP
+.BI -iwad " file
+Set the main IWAD (Internal WAD) file to use.
+This also determines the game mode when -game is not used.
+.TP
+.BI -noendtext
+Suppress the game EndText screen, which could disrupt some terminal emulations
+because of the special character attributes used.
+.TP
+.BI -opengl
+Hardware accelerated rendering using the OpenGL library.
+Will use hardware acceleration for OpenGL if available.
+If the video card does not have OpenGL hardware acceleration then it will use
+the OpenGL emulation in software, which is very slow.
+.TP
+.BI --version
+Print version and build date.
+.TP
+.BI -warp " num
+Select the map, start game immediately.
+.br
+In DoomII, -warp 13 will goto MAP13.
+.br
+In Ultimate Doom, -warp 1 3 will goto E1M3.
+.TP
+See Reference Manual for a complete options list.
+.\"
+.\"
+.\"=============================================================================
+.\" ENVIRONMENT section
+.\"
+.SH ENVIRONMENT
+.TP 25
+.B DISPLAY
+X display to use. More information about X can be found in
+.BR X (7).
+.TP
+.B DOOMWADDIR
+This environment variable defines a path where WAD files are located.
+.br
+The default is $WADDIR.
+.TP
+.B HOME
+This variable indicates your home directory.
+.TP
+.B USER
+This variable contains your username, is used as the default value for your
+player name in multiplayer games.
+.\"
+.\"
+.\"=============================================================================
+.\" FILES section
+.\"
+.SH FILES
+.TP 25
+.B ~/.doomlegacy/config.cfg
+Default configuration file.
+.TP
+.B ~/.doomlegacy/glconfig.cfg
+Default configuration file for OpenGL mode.
+.TP
+.B ~/.doomlegacy/doomsav*.dsg
+Saved game states.
+.\"
+.\"
+.\"=============================================================================
+.\" NOTES section
+.\"
+.SH NOTES
+If you get no MIDI music, ensure that SDL_mixer has a working MIDI synthesizer
+available. If you use timidity, check that instruments are installed (e.g.
+freepats).
+.PP
+Acknowledgments:
+.IP \(bu 3
+Thanks to id Software of course, for creating the greatest game of all time!
+.PP
+.IP \(bu 3
+To Raven Software, for Heretic and Hexen!
+.PP
+.IP \(bu 3
+Chi Hoang for DosDoom which got us started.
+.PP
+.IP \(bu 3
+Bell Kin for porting Doom Legacy to Linux.
+.PP
+.IP \(bu 3
+Stephane Dierickx for the two pictures in the laucher and the help screen of
+Legacy.
+.PP
+.IP \(bu 3
+Sebastien Bacquet for Qmus2mid.
+.PP
+.IP \(bu 3
+Simon Howard for FraggleScript.
+.PP
+.IP \(bu 3
+TeamTNT for Boom.
+.PP
+.IP \(bu 3
+Steven McGranahan and Robert Baeuml for their large contributions.
+.PP
+.IP \(bu 3
+To all of you who send us ideas and bug reports, thank you!
+.RE
+.\"
+.\"
+.\"=============================================================================
+.\" AUTHORS section
+.\"
+.SH AUTHORS
+Original game by id Software.
+.br
+Heretic by Raven Software.
+.br
+Doom Legacy by Fabrice Denis, Boris Pereira and Thierry Van Elsuwe.
+.br
+Maintained by the Doom Legacy Team since 2001.
+.br
+Man page for pkgsrc by Michael Baeuerle.
+.\"
+.\"
+.\"=============================================================================
+.\" BUGS section
+.\"
+.\" .SH BUGS
+.\"
+.\"
+.\"=============================================================================
+.\" EXAMPLES section
+.\"
+.SH EXAMPLES
+Start the shareware Episode 1 of Doom:
+.IP
+$ $NAME
+.PP
+For the following examples you need the original WAD files of the games
+(copy them to $WADDIR or set DOOMWADDIR to the desired location).
+
+Start Doom and use the OpenGL renderer:
+.IP
+$ $NAME -opengl -iwad doom.wad
+.PP
+Start Doom II:
+.IP
+$ $NAME -iwad doom2.wad
+.PP
+Start Sigil (Doom Episode 5) in compatibility mode as Episode 3:
+.IP
+$ $NAME -game doomu -iwad doomu.wad -file SIGIL_COMPAT.wad
+.PP
+Start Heretic:
+.IP
+$ $NAME -iwad heretic.wad
+.PP
+.\"
+.\"
+.\"=============================================================================
+.\" SEE ALSO section
+.\"
+.SH SEE ALSO
+.BR timidity (1),
+.BR X (7)
+.br
+.BR http://doomlegacy.sourceforge.net/docs/legacy.html
+.\"
+.\"
+.\" EOF
diff --git a/doomlegacy/patches/patch-src_am__map.c b/doomlegacy/patches/patch-src_am__map.c
new file mode 100644
index 0000000000..d389462be7
--- /dev/null
+++ b/doomlegacy/patches/patch-src_am__map.c
@@ -0,0 +1,17 @@
+$NetBSD$
+
+Set automap "zoom in" key to '+'.
+
+--- src/am_map.c.orig 2018-07-16 09:17:06.000000000 +0000
++++ src/am_map.c
+@@ -118,7 +118,9 @@ static byte DWHITE = (256-47);
+ #define AM_PANUPKEY KEY_UPARROW
+ #define AM_PANRIGHTKEY KEY_RIGHTARROW
+ #define AM_PANLEFTKEY KEY_LEFTARROW
+-#define AM_ZOOMINKEY '='
++// The documentation specify '+'
++//#define AM_ZOOMINKEY '='
++#define AM_ZOOMINKEY '+'
+ #define AM_ZOOMOUTKEY '-'
+ #define AM_STARTKEY KEY_TAB
+ #define AM_ENDKEY KEY_TAB
Home |
Main Index |
Thread Index |
Old Index