- Allow playing Wolf3D/SOD in shareware and full mode.

- Modify wrapper script.
- Modify pkg-message.
- Increment PORTREVISION.
- Add OPTIONS for downloading shareware data files (Wolf3D/SOD).
- Use DATADIR for data and libexec for binaries.

PR:		ports/92019
Submitted by:	Alejandro Pulver <alejandro@varnet.biz>
Approved by:	garga (mentor)
This commit is contained in:
Alejandro Pulver 2006-04-12 22:25:35 +00:00
parent c1a0e53b9c
commit 9231615331
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=159396
8 changed files with 187 additions and 71 deletions

View file

@ -7,45 +7,87 @@
PORTNAME= wolf3d
PORTVERSION= 20011028
PORTREVISION= 3
PORTREVISION= 4
CATEGORIES= games
MASTER_SITES= http://www.icculus.org/wolf3d/:wolf \
http://cvsup.theplanet.com/distfiles/:wolf \
http://www.liquidx.org/distfiles/:wolfdata
DISTFILES= wolf3d-20011028.tar.gz:wolf wolfdata.tar.gz:wolfdata
http://www.liquidx.org/distfiles/:sw \
DISTNAME= wolf3d-${PORTVERSION}
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:wolf
MAINTAINER= tlp@liquidx.org
COMMENT= "Wolfenstein 3D Linux" by Steven Fuller (1992)
USE_SDL= sdl
USE_GZIP= yes
USE_X_PREFIX= yes
USE_REINPLACE= yes
post-patch:
@${REINPLACE_CMD} -e 's|gcc|${CC}|' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|sdl-config|sdl11-config|' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|OBJS += sd_null.o|#OBJS += sd_null.o|' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|#OBJS += sd_oss.o fmopl.o|OBJS += sd_oss.o fmopl.o|' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|/usr/X11R6/lib|${X11BASE}/lib|' ${WRKSRC}/Makefile
@${CAT} ${FILESDIR}/wolf3d.in | ${SED} -e 's,%%PREFIX%%,${PREFIX},g' > ${WRKDIR}/wolf3d
OPTIONS= WOLF_SW "Install shareware data for Wolfenstein 3D" on \
SPEAR_SW "Install shareware data for Spear of Destiny" off
SUB_FILES= pkg-message wolf3d
WOLF_BIN= sdlwolf3d
WOLF_VERS= wf ws sf ss
WF_CF= -DWMODE=1
WS_CF= -DWMODE=0
SF_CF= -DWMODE=3
SS_CF= -DWMODE=2
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_WOLF_SW)
DISTFILES+= wolfdata${EXTRACT_SUFX}:sw
PLIST_SUB+= WOLF_SW=""
.else
PLIST_SUB+= WOLF_SW="@comment "
.endif
.if defined(WITH_SPEAR_SW)
DISTFILES+= speardata${EXTRACT_SUFX}:sw
PLIST_SUB+= SPEAR_SW=""
.else
PLIST_SUB+= SPEAR_SW="@comment "
.endif
post-extract:
.if defined(WITH_SPEAR_SW)
@${MV} ${WRKDIR}/audit.sdm ${WRKDIR}/audiot.sdm
.endif
do-build:
.for f in ${WOLF_VERS}
@cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE} WF=${${f:U}_CF} ${ALL_TARGET}
@cd ${WRKSRC} && ${MV} ${WOLF_BIN} ${WOLF_BIN}-${f}
@cd ${WRKSRC}; ${MAKE} clean
.endfor
do-install:
${MKDIR} ${PREFIX}/libexec/wolf3d
.for f in ${WOLF_VERS}
${INSTALL_PROGRAM} ${WRKSRC}/${WOLF_BIN}-${f} ${PREFIX}/libexec/wolf3d
.endfor
${INSTALL_SCRIPT} ${WRKDIR}/wolf3d ${PREFIX}/bin/wolf3d
${INSTALL_PROGRAM} ${WRKSRC}/sdlwolf3d ${PREFIX}/libexec/wolf3d/sdlwolf3d
${INSTALL_DATA} ${WRKDIR}/wolfdata/* ${PREFIX}/libexec/wolf3d
${MKDIR} ${DATADIR}
.if !defined(WITHOUT_WOLF_SW)
${INSTALL_DATA} ${WRKDIR}/wolfdata/* ${DATADIR}
.endif
.if defined(WITH_SPEAR_SW)
${INSTALL_DATA} ${WRKDIR}/*.sdm ${DATADIR}
.endif
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${MKDIR} ${DOCSDIR}/docs
${INSTALL_DATA} ${WRKSRC}/docs/* ${DOCSDIR}/docs
${INSTALL_DATA} ${WRKSRC}/IDEAS ${DOCSDIR}/IDEAS
${INSTALL_DATA} ${WRKSRC}/NOTES ${DOCSDIR}/NOTES
${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}/README
${INSTALL_DATA} ${WRKSRC}/TODO ${DOCSDIR}/TODO
. for f in IDEAS NOTES README TODO
${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}/IDEAS
. endfor
.endif
post-install:
@${ECHO_CMD}
@${CAT} ${PKGMESSAGE}
@${ECHO_CMD}
.include <bsd.port.mk>
.include <bsd.port.post.mk>

View file

@ -1,6 +1,11 @@
MD5 (wolf3d-20011028.tar.gz) = d085fc3b00eb2773e15491098461eb4b
SHA256 (wolf3d-20011028.tar.gz) = 9a1bde32bee0e78a82ad98ee6176e3bf93ec4fa70d1353ad63e1f9f6a30c72fb
SHA256 (wolf3d-20011028.tar.gz) = 9a1bde32bee0e78a82ad98ee6176e3bf93ec4fa70d1353ad63e1f9f6a30c72fb
SIZE (wolf3d-20011028.tar.gz) = 134539
MD5 (wolfdata.tar.gz) = b73bba3a02c0f12cc56f01c8c9a2c3db
SHA256 (wolfdata.tar.gz) = 46766d1c7aa98809042c24873571db6366b082babd6cfaf81a319e0bae4950e9
SHA256 (wolfdata.tar.gz) = 46766d1c7aa98809042c24873571db6366b082babd6cfaf81a319e0bae4950e9
MD5 (speardata.tar.gz) = 5794d94ff0351116601728e16278425e
SHA256 (speardata.tar.gz) = cdbd9c72701677f195546e9bbe12a8e39e3b6e995bf545f9c35fbd2cfd491fcb
SIZE (speardata.tar.gz) = 557831
SIZE (wolfdata.tar.gz) = 565585

View file

@ -0,0 +1,38 @@
--- Makefile.orig Thu Sep 27 20:58:29 2001
+++ Makefile Sun Apr 9 10:34:17 2006
@@ -1,7 +1,8 @@
-CC = gcc
+#CC = gcc
#CC = gcc-3.0
-CFLAGS = -g -Wall -pedantic
+CFLAGS += -O2 -fomit-frame-pointer -ffast-math -funroll-loops
+#CFLAGS = -g -Wall -pedantic
#CFLAGS = -g -O2 -Wall -pedantic
#CFLAGS = -Wall -O6 -fomit-frame-pointer -ffast-math -funroll-loops -mpentiumpro -mcpu=pentiumpro -march=pentiumpro
#CFLAGS = -g -Wall -pedantic -std=gnu99
@@ -17,18 +18,18 @@
XOBJS = $(OBJS) $(ROBJS) vi_xlib.o
DOBJS = $(OBJS) $(ROBJS) vi_sdl.o
-LFLAGS = -lm
+LFLAGS += -lm
-OBJS += sd_null.o
-#OBJS += sd_oss.o fmopl.o
+#OBJS += sd_null.o
+OBJS += sd_oss.o fmopl.o
#CFLAGS += -D_REENTRANT
#LFLAGS += -lpthread
-CFLAGS += `sdl-config --cflags`
+CFLAGS += `$(SDL_CONFIG) --cflags`
SLFLAGS = $(LFLAGS) -lvga
-XLFLAGS = $(LFLAGS) -L/usr/X11R6/lib -lX11 -lXext
-DLFLAGS = $(LFLAGS) `sdl-config --libs` -L/usr/X11R6/lib -lX11 -lXext
+XLFLAGS = $(LFLAGS) -L$(X11BASE)/lib -lX11 -lXext
+DLFLAGS = $(LFLAGS) `$(SDL_CONFIG) --libs` -L$(X11BASE)/lib -lX11 -lXext
NASM = nasm

View file

@ -0,0 +1,16 @@
==============================================================================
QuakeForge has been installed.
If you have sound problems try increasing the sound rate. This can be done
with the variable "snd_rate". Standard values could be 22050 and 44100.
To do this when calling the program do (for example):
nq-glx +set snd_speed 44100
Alternatively you can put it in the global configuration file (as root):
echo "set snd_speed 44100" >> %%PREFIX%%/etc/quakeforge.conf
==============================================================================

View file

@ -1,13 +1,26 @@
#!/bin/sh
#
# wolf3d - wolf3d-20011028 wrapper script
#
# 2004 Travis Poppe
#
USERDIR=$HOME/.wolf3d
USERDIR="$HOME/.wolf3d"
WOLF_BIN="sdlwolf3d"
if [ -d $USERDIR ]; then
echo "wolf3d appears to be installed to $USERDIR/"
msg_game()
{
echo "Please provide a \"-game\" parameter with one of the following values:"
echo ""
echo "wf - Wolfenstein 3D (full version)"
echo "ws - Wolfenstein 3D (shareware version)"
echo "sf - Spear of Destiny (full version)"
echo "ss - Spear of Destiny (shareware version)"
echo ""
}
msg_options()
{
echo "Basic options:"
echo ""
echo "-nowait Skips introduction"
@ -19,28 +32,30 @@ if [ -d $USERDIR ]; then
echo "-demotest Starts wolf3d in demonstration mode"
echo "-version Reports game version"
echo ""
}
cd $USERDIR
./sdlwolf3d $*
exit
if [ "$1" = "-game" -a -n "`echo $2 | grep -E '^(wf|ws|sf|ss)$'`" ]
then
GAME="$2"
shift; shift
if [ ! -d $USERDIR ]
then
mkdir $USERDIR
ln -s %%PREFIX%%/libexec/wolf3d/* $USERDIR
ln -s %%DATADIR%%/* $USERDIR
echo "wolf3d was installed to $USERDIR/"
else
echo "wolf3d appears to be installed to $USERDIR/"
fi
msg_options
cd $USERDIR || exit 1
exec ./${WOLF_BIN}-${GAME} "$@"
else
msg_game
exit 1
fi
mkdir $USERDIR
ln -s %%PREFIX%%/libexec/wolf3d/* $USERDIR
echo "Installed wolf3d to $USERDIR/"
echo ""
echo "Basic options:"
echo ""
echo "-nowait Skips introduction"
echo "-nojoy Disables joystick"
echo "-nomouse Disables mouse"
echo "-x2 Increases screen size by x2"
echo "-x3 Increases screen size by x3"
echo "-fullscreen Enables fullscreen mode"
echo "-demotest Starts wolf3d in demonstration mode"
echo "-version Reports game version"
echo ""
cd $USERDIR
./sdlwolf3d $*

View file

@ -1,8 +1,6 @@
This is a October 28, 2001 Snapshot of "Wolfenstein 3D Linux" by Steven
Fuller. It is an unofficial Linux port of the id Software game,
Wolfenstein 3D (1992).
This port uses the shareware data files.
Fuller. It is an unofficial Linux port of the id Software game,
Wolfenstein 3D (1992). It also supports Spear of Destiny.
WWW: http://www.icculus.org/wolf3d/

View file

@ -1,8 +0,0 @@
-------------------------------------------------------------------------------
This port's wrapper script will install the wolf3d data to your home directory
the first time you run it. If for some odd reason you already have a directory
called .wolf3d in your home directory, you must (re)move it before this port
will function correctly.
-tlp
-------------------------------------------------------------------------------

View file

@ -1,19 +1,29 @@
bin/wolf3d
libexec/wolf3d/audiohed.wl1
libexec/wolf3d/audiot.wl1
libexec/wolf3d/gamemaps.wl1
libexec/wolf3d/maphead.wl1
libexec/wolf3d/sdlwolf3d
libexec/wolf3d/vgadict.wl1
libexec/wolf3d/vgagraph.wl1
libexec/wolf3d/vgahead.wl1
libexec/wolf3d/vswap.wl1
libexec/wolf3d/sdlwolf3d-sf
libexec/wolf3d/sdlwolf3d-ss
libexec/wolf3d/sdlwolf3d-wf
libexec/wolf3d/sdlwolf3d-ws
%%PORTDOCS%%%%DOCSDIR%%/IDEAS
%%PORTDOCS%%%%DOCSDIR%%/docs/goodstuf.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/release.txt
%%PORTDOCS%%%%DOCSDIR%%/IDEAS
%%PORTDOCS%%%%DOCSDIR%%/NOTES
%%PORTDOCS%%%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/TODO
%%WOLF_SW%%%%DATADIR%%/audiohed.wl1
%%WOLF_SW%%%%DATADIR%%/audiot.wl1
%%WOLF_SW%%%%DATADIR%%/gamemaps.wl1
%%WOLF_SW%%%%DATADIR%%/maphead.wl1
%%WOLF_SW%%%%DATADIR%%/vgadict.wl1
%%WOLF_SW%%%%DATADIR%%/vgagraph.wl1
%%WOLF_SW%%%%DATADIR%%/vgahead.wl1
%%WOLF_SW%%%%DATADIR%%/vswap.wl1
%%SPEAR_SW%%%%DATADIR%%/audiohed.sdm
%%SPEAR_SW%%%%DATADIR%%/audiot.sdm
%%SPEAR_SW%%%%DATADIR%%/config.sdm
%%SPEAR_SW%%%%DATADIR%%/gamemaps.sdm
%%SPEAR_SW%%%%DATADIR%%/maphead.sdm
%%SPEAR_SW%%%%DATADIR%%/vgadict.sdm
%%SPEAR_SW%%%%DATADIR%%/vgagraph.sdm
%%SPEAR_SW%%%%DATADIR%%/vgahead.sdm
%%SPEAR_SW%%%%DATADIR%%/vswap.sdm
@dirrm %%DATADIR%%
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
@dirrm libexec/wolf3d