FreeBSD Bugzilla – Attachment 57798 Details for
Bug 87181
[UPDATE] games/quake2lnx: integrate with "quake2-data"
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
quake2lnx.diff
quake2lnx.diff (text/plain), 64.30 KB, created by
Alejandro Pulver
on 2005-10-09 22:40:21 UTC
(
hide
)
Description:
quake2lnx.diff
Filename:
MIME Type:
Creator:
Alejandro Pulver
Created:
2005-10-09 22:40:21 UTC
Size:
64.30 KB
patch
obsolete
>diff -urN /usr/ports/games/quake2lnx/Makefile quake2lnx/Makefile >--- /usr/ports/games/quake2lnx/Makefile Wed Jul 27 18:15:50 2005 >+++ quake2lnx/Makefile Fri Oct 7 18:45:23 2005 >@@ -10,31 +10,9 @@ > PORTREVISION= 1 > CATEGORIES= games > MASTER_SITES= http://www.icculus.org/quake2/files/:icc \ >- ftp://ftp.idsoftware.com/idstuff/quake2/:id >+ ftp://ftp.idsoftware.com/idstuff/quake2/source/:id > DISTNAME= quake2-r${PORTVERSION} > DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:icc >-.if defined(WITH_EYECANDY) >-DISTFILES+= maxpak.pak:icc >-.endif >-.if defined(WITH_RETEXTURE) >-. for i in 10 11 12 13 14 16 17 19 >-DISTFILES+= pak${i}.pak:icc >-. endfor >-.endif >-.if defined(WITH_SHAREWARE_DATA) || defined(WITH_MANUAL) || defined(WITH_CTF_MAPS) >-EXTRACT_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip >-. if defined(WITH_CTF_MAPS) >-DISTFILES+= q2-3.20-x86-full-ctf.exe:id >-. else >-DISTFILES+= q2-314-demo-x86.exe:id >-. endif >-.endif >-.if defined(WITH_XATRIX) >-DISTFILES+= source/xatrixsrc320.shar.Z:id >-.endif >-.if defined(WITH_ROGUE) >-DISTFILES+= source/roguesrc320.shar.Z:id >-.endif > DIST_SUBDIR= ${PORTNAME} > EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} > >@@ -42,78 +20,43 @@ > COMMENT= Cleaned up copy of the original Quake II source code > > USE_GMAKE= yes >-USE_REINPLACE= yes > WANT_SDL= yes > >-.include <bsd.port.pre.mk> >+OPTIONS= AA "Build ASCII software renderer" off \ >+ ARTS "Enable support for aRts sound daemon" off \ >+ CLIENT "Build client executable" on \ >+ CTF "Build Capture The Flag mod" off \ >+ EYECANDY "Build executable with fancier GL graphics" off \ >+ GAME "Build a main game .so file" on \ >+ GLX "Build GLX driver" on \ >+ IPV6 "Enable experimental IPv6 support" off \ >+ JOYSTICK "Enable joystick support" off \ >+ OPTIMIZED_CFLAGS "Enable extra optimization options" off \ >+ REDBLUE "Enable 3D glasses rendering" off \ >+ RETEXTURE "Enable support of retextured graphics" off \ >+ ROGUE "Build Ground Zero (Rogue) mission pack" off \ >+ SDL "Build SDL software driver" off \ >+ SDLCLIENT "Build executable that uses SDL" off \ >+ SDLGL "Build SDL OpenGL driver" off \ >+ SERVER "Build dedicated server executable" on \ >+ SVGA "Build SVGA driver" off \ >+ XATRIX "Build The Reckoning (Xatrix) mission pack" off \ >+ X11 "Build X11 software driver" on \ >+ X86_ASM "Enable use of x86 assembly code" on > >-### # >-## CLIENTS AND RENDERERS ## >-# ### >+ALL_TARGET= build_release >+MAKE_ENV= DATADIR="${DATADIR}" LIBDIR="${LIBDIR}" > >-.if ${ARCH} == "i386" && !defined(WITHOUT_SVGA) \ >- && (defined(WITH_SVGA) || exists(${LOCALBASE}/lib/libvga.so.1)) >-LIB_DEPENDS+= vga.1:${PORTSDIR}/graphics/svgalib >-MAKE_ARGS+= BUILD_SVGA=YES >-REF_TARGETS+= soft >-PLIST_SUB+= SVGA="" >-.else >-PLIST_SUB+= SVGA="@comment " >-.endif >+PLIST_SUB+= LIBDIR="${LIBDIR:S/${PREFIX}\///}" > >-.if defined(WITH_SDLCLIENT) || defined(WITH_SDL) || defined(WITH_SDLGL) \ >- || ${HAVE_SDL:Msdl} != "" >-. if !(defined(WITHOUT_SDLCLIENT) && defined(WITHOUT_SDL) \ >- && defined(WITHOUT_SDLGL)) >-USE_SDL= sdl >-. endif >-. if !defined(WITHOUT_SDLCLIENT) >-MAKE_ARGS+= BUILD_SDLQUAKE2=YES >-EXE_TARGETS+= sdlquake2 >-PLIST_SUB+= SDLCLIENT="" >-. else >-PLIST_SUB+= SDLCLIENT="@comment " >-. endif >-. if !defined(WITHOUT_SDL) >-MAKE_ARGS+= BUILD_SDL=YES >-REF_TARGETS+= softsdl >-PLIST_SUB+= SDL="" >-. else >-PLIST_SUB+= SDL="@comment " >-. endif >-. if !defined(WITHOUT_SDLGL) >-MAKE_ARGS+= BUILD_SDLGL=YES >-REF_TARGETS+= sdlgl >-PLIST_SUB+= SDLGL="" >-. else >-PLIST_SUB+= SDLGL="@comment " >-. endif >-.else >-PLIST_SUB+= SDLCLIENT="@comment " >-PLIST_SUB+= SDL="@comment " >-PLIST_SUB+= SDLGL="@comment " >-.endif >+TGTDIR= ${WRKSRC}/release >+LIBDIR= ${PREFIX}/lib/${PORTNAME} > >-.if !defined(WITHOUT_X11) >-USE_XLIB= yes >-MAKE_ARGS+= BUILD_X11=YES >-REF_TARGETS+= softx >-PLIST_SUB+= X11="" >-.else >-PLIST_SUB+= X11="@comment " >-.endif >+.include "${.CURDIR}/../quake2-data/Makefile.include" > >-.if !defined(WITHOUT_GLX) || defined(WITH_EYECANDY) >-USE_GL= yes >-MAKE_ARGS+= BUILD_GLX=YES >-REF_TARGETS+= glx >-PLIST_SUB+= GLX="" >-.else >-PLIST_SUB+= GLX="@comment " >-.endif >+.include <bsd.port.pre.mk> > >-.if !defined(WITHOUT_AA) && (defined(WITH_AA) \ >- || exists(${LOCALBASE}/lib/libaa.so.1)) >+.if defined(WITH_AA) || exists(${LOCALBASE}/lib/libaa.so.1) > LIB_DEPENDS+= aa.1:${PORTSDIR}/graphics/aalib > MAKE_ARGS+= BUILD_AA=YES > REF_TARGETS+= softaa >@@ -122,15 +65,12 @@ > PLIST_SUB+= AA="@comment " > .endif > >-.if defined(WITH_EYECANDY) >-LIB_DEPENDS+= jpeg.9:${PORTSDIR}/graphics/jpeg >-MAKE_ARGS+= BUILD_QMAX=YES >-PLIST_SUB+= QMAX="" >-.else >-PLIST_SUB+= QMAX="@comment " >+.if defined(WITH_ARTS) || exists (${LOCALBASE}/lib/libartsc.so.0) >+LIB_DEPENDS+= artsc.0:${PORTSDIR}/audio/arts >+MAKE_ARGS+= BUILD_ARTS=YES > .endif > >-.if !defined(WITHOUT_CLIENT) >+.if defined(WITH_CLIENT) > MAKE_ARGS+= BUILD_CLIENT=YES > EXE_TARGETS+= quake2 > PLIST_SUB+= CLIENT="" >@@ -138,275 +78,185 @@ > PLIST_SUB+= CLIENT="@comment " > .endif > >-.if !defined(WITHOUT_SERVER) >-MAKE_ARGS+= BUILD_DEDICATED=YES >-PLIST_SUB+= SERVER="" >-EXE_TARGETS+= q2ded >+.if defined(WITH_CTF) >+MAKE_ARGS+= BUILD_CTFDLL=YES >+PLIST_SUB+= CTF="" > .else >-PLIST_SUB+= SERVER="@comment " >+PLIST_SUB+= CTF="@comment " > .endif > >-### # >-## GAME, MISSION ADDONS, AND MODS ## >-# ### >+.if defined(WITH_EYECANDY) >+DISTFILES+= maxpak.pak:icc >+LIB_DEPENDS+= jpeg.9:${PORTSDIR}/graphics/jpeg >+MAKE_ARGS+= BUILD_QMAX=YES >+PLIST_SUB+= QMAX="" >+.else >+PLIST_SUB+= QMAX="@comment " >+.endif > >-.if !defined(WITHOUT_GAME) >+.if defined(WITH_GAME) > MAKE_ARGS+= BUILD_GAME=YES > PLIST_SUB+= GAME="" > .else > PLIST_SUB+= GAME="@comment " > .endif > >-.if defined(WITH_XATRIX) >-MAKE_ARGS+= BUILD_XATRIX=YES >-Q2MP+= xatrix >-IS_INTERACTIVE= yes >-PLIST_SUB+= XATRIX="" >+.if defined(WITH_GLX) || defined(WITH_EYECANDY) >+USE_GL= yes >+MAKE_ARGS+= BUILD_GLX=YES >+REF_TARGETS+= glx >+PLIST_SUB+= GLX="" > .else >-PLIST_SUB+= XATRIX="@comment " >+PLIST_SUB+= GLX="@comment " > .endif > >-.if defined(WITH_ROGUE) >-MAKE_ARGS+= BUILD_ROGUE=YES >-Q2MP+= rogue >-IS_INTERACTIVE= yes >-PLIST_SUB+= ROGUE="" >-.else >-PLIST_SUB+= ROGUE="@comment " >+.if defined(WITH_IPV6) >+MAKE_ARGS+= HAVE_IPV6=YES > .endif > >-.if defined(WITH_CTF) >-MAKE_ARGS+= BUILD_CTFDLL=YES >-PLIST_SUB+= CTF="" >-.else >-PLIST_SUB+= CTF="@comment " >+.if defined(WITH_JOYSTICK) >+MAKE_ARGS+= BUILD_JOYSTICK=YES > .endif > >-.if defined(WITH_CTF_MAPS) >-PLIST_SUB+= CTFMAPS="" >-.else >-PLIST_SUB+= CTFMAPS="@comment " >+.if defined(WITH_OPTIMIZED_CFLAGS) >+MAKE_ARGS+= OPTIMIZED_CFLAGS="-O3 -s -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations" > .endif > >-.if defined(WITH_SHAREWARE_DATA) >-PLIST_SUB+= SHAREWARE="" >-.else >-PLIST_SUB+= SHAREWARE="@comment " >+.if defined(WITH_REDBLUE) >+MAKE_ARGS+= BUILD_REDBLUE=YES > .endif > >-### # >-## MISCELLANEOUS TUNABLES ## >-# ### >- > .if defined(WITH_RETEXTURE) >+. for i in 10 11 12 13 14 16 17 19 >+DISTFILES+= pak${i}.pak:icc >+. endfor > MAKE_ARGS+= BUILD_RETEXTURE=YES > PLIST_SUB+= RETEX="" > .else > PLIST_SUB+= RETEX="@comment " > .endif > >-.if defined(WITH_REDBLUE) >-MAKE_ARGS+= BUILD_REDBLUE=YES >+.if defined(WITH_ROGUE) >+DISTFILES+= roguesrc320.shar.Z:id >+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_rogue_g__local.h \ >+ ${FILESDIR}/extra-patch-src_rogue_q__shared.c >+MAKE_ARGS+= BUILD_ROGUE=YES >+Q2MP+= rogue >+ROGUE_OFF= 454 >+PLIST_SUB+= ROGUE="" >+.else >+PLIST_SUB+= ROGUE="@comment " > .endif > >-.if defined(WITH_JOYSTICK) >-MAKE_ARGS+= BUILD_JOYSTICK=YES >+.if defined(WITH_SDL) || ${HAVE_SDL:Msdl} != "" >+USE_SDL= sdl >+MAKE_ARGS+= BUILD_SDL=YES >+REF_TARGETS+= softsdl >+PLIST_SUB+= SDL="" >+.else >+PLIST_SUB+= SDL="@comment " > .endif > >-.if !defined(WITHOUT_ARTS) && (defined(WITH_ARTS) \ >- || exists (${LOCALBASE}/lib/libartsc.so.0)) >-LIB_DEPENDS+= artsc.0:${PORTSDIR}/audio/arts >-MAKE_ARGS+= BUILD_ARTS=YES >+.if defined(WITH_SDLCLIENT) && (defined(WITH_SDL) || ${HAVE_SDL:Msdl} != "") >+MAKE_ARGS+= BUILD_SDLQUAKE2=YES >+EXE_TARGETS+= sdlquake2 >+PLIST_SUB+= SDLCLIENT="" >+.else >+PLIST_SUB+= SDLCLIENT="@comment " > .endif > >-.if defined(WITH_IPV6) >-MAKE_ARGS+= HAVE_IPV6=YES >+.if defined(WITH_SDLGL) && (defined(WITH_SDL) || ${HAVE_SDL:Msdl} != "") >+MAKE_ARGS+= BUILD_SDLGL=YES >+REF_TARGETS+= sdlgl >+PLIST_SUB+= SDLGL="" >+.else >+PLIST_SUB+= SDLGL="@comment " > .endif > >-.if defined(WITH_OPTIMIZED_CFLAGS) >-MAKE_ARGS+= OPTIMIZED_CFLAGS="-O9 -pipe -s -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations" >+.if defined(WITH_SERVER) >+MAKE_ARGS+= BUILD_DEDICATED=YES >+PLIST_SUB+= SERVER="" >+EXE_TARGETS+= q2ded >+.else >+PLIST_SUB+= SERVER="@comment " > .endif > >-.if ${ARCH} != "i386" || defined(WITHOUT_X86_ASM) >-MAKE_ARGS+= NO_X86_ASM=YES >+.if defined(WITH_SVGA) || exists(${LOCALBASE}/lib/libvga.so.1) >+LIB_DEPENDS+= vga.1:${PORTSDIR}/graphics/svgalib >+MAKE_ARGS+= BUILD_SVGA=YES >+REF_TARGETS+= soft >+PLIST_SUB+= SVGA="" >+.else >+PLIST_SUB+= SVGA="@comment " > .endif > >-.if defined(WITH_MANUAL) >-PLIST_SUB+= MANUAL="" >+.if defined(WITH_XATRIX) >+DISTFILES+= xatrixsrc320.shar.Z:id >+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_xatrix_q__shared.c >+MAKE_ARGS+= BUILD_XATRIX=YES >+Q2MP+= xatrix >+XATRIX_OFF= 441 >+PLIST_SUB+= XATRIX="" > .else >-PLIST_SUB+= MANUAL="@comment " >+PLIST_SUB+= XATRIX="@comment " > .endif > >-### # >-## END OF CONFIGURATION KNOBS ## >-# ### >- >-pre-everything:: >-.if ${ARCH} == "i386" && !(defined(WITH_SVGA) || exists(${LOCALBASE}/lib/libvga.so.1)) >- @${ECHO_MSG} "Define WITH_SVGA to build SVGA driver" >-.endif >-.if !(defined(WITH_SDL) || ${HAVE_SDL:Msdl} != "") >- @${ECHO_MSG} "Define WITH_SDL to build SDL software driver" >-.endif >-.if !(defined(WITH_SDLGL) || ${HAVE_SDL:Msdl} != "") >- @${ECHO_MSG} "Define WITH_SDLGL to build SDL OpenGL driver" >-.endif >-.if !(defined(WITH_SDLCLIENT) || ${HAVE_SDL:Msdl} != "") >- @${ECHO_MSG} "Define WITH_SDLCLIENT to build executable that uses SDL for CDROM and sound" >-.endif >-.if !(defined(WITH_AA) || exists(${LOCALBASE}/lib/libaa.so.1)) >- @${ECHO_MSG} "Define WITH_AA to build ASCII software renderer" >-.endif >-.if !defined(WITHOUT_X11) >- @${ECHO_MSG} "Define WITHOUT_X11 to disable building of X11 driver" >-.endif >-.if !defined(WITHOUT_GLX) >- @${ECHO_MSG} "Define WITHOUT_GLX to disable building of GLX driver" >-.endif >-.if !defined(WITH_EYECANDY) >- @${ECHO_MSG} "Define WITH_EYECANDY to build executable with fancier GL graphics" >-.endif >-.if !defined(WITHOUT_CLIENT) >- @${ECHO_MSG} "Define WITHOUT_CLIENT to disable building Quake2 client executable" >-.endif >-.if !defined(WITHOUT_SERVER) >- @${ECHO_MSG} "Define WITHOUT_SERVER to disable building of dedicated server" >-.endif >-.if !defined(WITHOUT_GAME) >- @${ECHO_MSG} "Define WITHOUT_GAME to build without main game .so" >-.endif >-.if !defined(WITH_CTF) >- @${ECHO_MSG} "Define WITH_CTF to build Capture The Flag mod" >-.endif >-.if !defined(WITH_CTF_MAPS) >- @${ECHO_MSG} "Define WITH_CTF_MAPS to install maps for CTF mod" >-.endif >-.if !defined(WITH_XATRIX) >- @${ECHO_MSG} "Define WITH_XATRIX to install \"The Reckoning\" (Xatrix) mission pack .so" >-.endif >-.if !defined(WITH_ROGUE) >- @${ECHO_MSG} "Define WITH_ROGUE to install the \"Ground Zero\" (Rogue) mission pack .so" >-.endif >-.if !defined(WITH_SHAREWARE_DATA) >- @${ECHO_MSG} "Define WITH_SHAREWARE_DATA to install demo version game data" >-.endif >-.if !defined(WITH_MANUAL) >- @${ECHO_MSG} "Define WITH_MANUAL to install the official Quake II HTML manual" >-.endif >-.if !defined(WITH_RETEXTURE) >- @${ECHO_MSG} "Define WITH_RETEXTURE to enable support of retextured graphics" >-.endif >-.if !defined(WITH_REDBLUE) >- @${ECHO_MSG} "Define WITH_REDBLUE to enable red-blue 3D glasses rendering" >-.endif >-.if !defined(WITH_JOYSTICK) >- @${ECHO_MSG} "Define WITH_JOYSTICK to enable joystick support" >-.endif >-.if !(defined(WITH_ARTS) || exists (${LOCALBASE}/lib/libartsc.so.0)) >- @${ECHO_MSG} "Define WITH_ARTS to enable support for aRts sound daemon" >-.endif >-.if !defined(WITH_IPV6) >- @${ECHO_MSG} "Define WITH_IPV6 to enable experimental IPv6 support" >-.endif >-.if !defined(WITH_OPTIMIZED_CFLAGS) >- @${ECHO_MSG} "Define WITH_OPTIMIZED_CFLAGS to enable extra optimization options" >-.endif >-.if ${ARCH} == "i386" && !defined(WITHOUT_X86_ASM) >- @${ECHO_MSG} "Define WITHOUT_X86_ASM to disable x86 assembly code" >+.if defined(WITH_X11) >+USE_XLIB= yes >+MAKE_ARGS+= BUILD_X11=YES >+REF_TARGETS+= softx >+PLIST_SUB+= X11="" >+.else >+PLIST_SUB+= X11="@comment " > .endif > >-ALL_TARGET= build_release >-TGTDIR= ${WRKSRC}/release${ARCH} >+.if ${ARCH} != "i386" || defined(WITHOUT_X86_ASM) >+MAKE_ARGS+= NO_X86_ASM=YES >+.endif > > post-extract: >-.if defined(WITH_XATRIX) || defined(WITH_ROGUE) >-. for mp in ${Q2MP} >+.for mp in ${Q2MP} > @${MKDIR} ${WRKSRC}/src/${mp} > @(cd ${WRKSRC}/src/${mp} && ${GUNZIP_CMD} -c \ >- ${DISTDIR}/${DIST_SUBDIR}/source/${mp}src320.shar.Z > \ >- ${mp}src320.shar && ${SH} ./${mp}src320.shar) >- @${REINPLACE_CMD} -e 's/__ $$/&|| defined __FreeBSD__/' \ >- ${WRKSRC}/src/${mp}/q_shared.c >-. endfor >-.endif >-.if defined(WITH_ROGUE) >- @${REINPLACE_CMD} -e '/^#include <nan.h>/d' ${WRKSRC}/src/rogue/g_local.h >-.endif >- @${REINPLACE_CMD} -e 's|/dev/js|/dev/joy|' ${WRKSRC}/src/linux/joystick.c >- >-post-patch: >- @${REINPLACE_CMD} -e 's|%%%%BASEDIR%%%%|${DATADIR}|' ${WRKSRC}/src/qcommon/files.c >- >-PLIST_SUB+= ARCH="${ARCH}" >+ ${DISTDIR}/${DIST_SUBDIR}/${mp}src320.shar.Z > \ >+ ${mp}src320.shar && \ >+ ${TAIL} +${${mp:U}_OFF} ${mp}src320.shar | ${SH}) >+.endfor > > do-install: > .for tgt in ${EXE_TARGETS} > ${INSTALL_PROGRAM} ${TGTDIR}/${tgt} ${PREFIX}/bin > .endfor >- @${MKDIR} ${DATADIR}/baseq2 ${DATADIR}/ctf >+ ${MKDIR} ${LIBDIR} > .for tgt in ${REF_TARGETS} >- ${INSTALL_PROGRAM} ${TGTDIR}/ref_${tgt}.so ${DATADIR} >+ ${INSTALL_PROGRAM} ${TGTDIR}/ref_${tgt}.so ${LIBDIR} > .endfor >-.if !defined(WITHOUT_GAME) >- ${INSTALL_PROGRAM} ${TGTDIR}/game${ARCH}.so ${DATADIR}/baseq2 >-.endif >-.if defined(WITH_XATRIX) || defined(WITH_ROGUE) >-. for mp in ${Q2MP} >- @${MKDIR} ${DATADIR}/${mp} >- ${INSTALL_PROGRAM} ${TGTDIR}/${mp}/game${ARCH}.so ${DATADIR}/${mp} >-. endfor >-.endif > .if defined(WITH_CTF) >- ${INSTALL_PROGRAM} ${TGTDIR}/ctf/game${ARCH}.so ${DATADIR}/ctf >+ ${MKDIR} ${LIBDIR}/ctf >+ ${INSTALL_PROGRAM} ${TGTDIR}/ctf/game.so ${LIBDIR}/ctf > .endif >-.if defined(WITH_CTF_MAPS) >- ${UNZIP_CMD} -oj -d ${DATADIR}/ctf \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-3.20-x86-full-ctf.exe ctf/pak0.pak >-.endif >-.if defined(WITH_SHAREWARE_DATA) >- @${MKDIR} ${DATADIR}/baseq2/players >- ${UNZIP_CMD} -oj -d ${DATADIR}/baseq2/players/female \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/baseq2/players/female/\* >- ${UNZIP_CMD} -oj -d ${DATADIR}/baseq2/players/male \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/baseq2/players/male/\* >- ${UNZIP_CMD} -oj -d ${DATADIR}/baseq2 \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/baseq2/pak0.pak >+.if defined(WITH_EYECANDY) >+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/maxpak.pak ${DATADIR}/baseq2 >+.endif >+.if defined(WITH_GAME) >+ ${MKDIR} ${LIBDIR}/baseq2 >+ ${INSTALL_PROGRAM} ${TGTDIR}/game.so ${LIBDIR}/baseq2 > .endif > .if defined(WITH_RETEXTURE) >-. for i in 10 11 12 13 14 16 17 19 >+. for i in 10 11 12 13 14 16 17 19 > ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/pak${i}.pak ${DATADIR}/baseq2 >-. endfor >-.endif >-.if defined(WITH_EYECANDY) >- ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/maxpak.pak ${DATADIR}/baseq2 >+. endfor > .endif >+.for mp in ${Q2MP} >+ ${MKDIR} ${LIBDIR}/${mp} >+ ${INSTALL_PROGRAM} ${TGTDIR}/${mp}/game.so ${LIBDIR}/${mp} >+.endfor > .if !defined(NOPORTDOCS) > @${MKDIR} ${DOCSDIR} > ${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR} > ${INSTALL_DATA} ${WRKSRC}/src/docs/README ${DOCSDIR}/README.320 > ${INSTALL_DATA} ${WRKSRC}/src/docs/joystick.txt ${DOCSDIR} > ${INSTALL_DATA} ${WRKSRC}/src/docs/quake2.3dfxgl ${DOCSDIR} >-. if defined(WITH_MANUAL) >- ${UNZIP_CMD} -oj -d ${DOCSDIR}/quake2_manual \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/DOCS/quake2_manual/\* \ >- -x Install/Data/DOCS/quake2_manual/images\* >- ${UNZIP_CMD} -oj -d ${DOCSDIR}/quake2_manual/images \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/DOCS/quake2_manual/images\* >- ${UNZIP_CMD} -oj -d ${DOCSDIR} \ >- ${DISTDIR}/${DIST_SUBDIR}/q2-314-demo-x86.exe \ >- Install/Data/DOCS/Manual.html >-. endif >-.endif >- >-PKGMESSAGE= ${WRKDIR}/pkg-message >- >-post-install: >- @${SED} -e 's|$${DATADIR}|${DATADIR}|g' ${.CURDIR}/pkg-message >${PKGMESSAGE} >- @${CAT} ${PKGMESSAGE} >+.endif > > .include <bsd.port.post.mk> >diff -urN /usr/ports/games/quake2lnx/distinfo quake2lnx/distinfo >--- /usr/ports/games/quake2lnx/distinfo Mon Mar 21 09:22:46 2005 >+++ quake2lnx/distinfo Tue Sep 27 19:54:44 2005 >@@ -18,11 +18,7 @@ > SIZE (quake2lnx/pak17.pak) = 1431798 > MD5 (quake2lnx/pak19.pak) = 070a4d00b93a2a427ca92adee2736000 > SIZE (quake2lnx/pak19.pak) = 648896 >-MD5 (quake2lnx/q2-314-demo-x86.exe) = 4d1cd4618e80a38db59304132ea0856c >-SIZE (quake2lnx/q2-314-demo-x86.exe) = 39015499 >-MD5 (quake2lnx/q2-3.20-x86-full-ctf.exe) = 490557d4a90ff346a175d865a2bade87 >-SIZE (quake2lnx/q2-3.20-x86-full-ctf.exe) = 19267584 >-MD5 (quake2lnx/source/xatrixsrc320.shar.Z) = 41fc4ecc4f25c068e7d1f488bd4a1e1a >-SIZE (quake2lnx/source/xatrixsrc320.shar.Z) = 455917 >-MD5 (quake2lnx/source/roguesrc320.shar.Z) = 7d5e052839c9e629bad0a6570aa70554 >-SIZE (quake2lnx/source/roguesrc320.shar.Z) = 626769 >+MD5 (quake2lnx/roguesrc320.shar.Z) = 7d5e052839c9e629bad0a6570aa70554 >+SIZE (quake2lnx/roguesrc320.shar.Z) = 626769 >+MD5 (quake2lnx/xatrixsrc320.shar.Z) = 41fc4ecc4f25c068e7d1f488bd4a1e1a >+SIZE (quake2lnx/xatrixsrc320.shar.Z) = 455917 >diff -urN /usr/ports/games/quake2lnx/files/extra-patch-src_rogue_g__local.h quake2lnx/files/extra-patch-src_rogue_g__local.h >--- /usr/ports/games/quake2lnx/files/extra-patch-src_rogue_g__local.h Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/extra-patch-src_rogue_g__local.h Tue Sep 27 20:20:48 2005 >@@ -0,0 +1,10 @@ >+--- src/rogue/g_local.h.orig Mon Nov 30 17:53:20 1998 >++++ src/rogue/g_local.h Tue Sep 27 20:20:27 2005 >+@@ -22,7 +22,6 @@ >+ //================================================================== >+ >+ #ifndef _WIN32 >+-#include <nan.h> >+ #define min(a,b) ((a) < (b) ? (a) : (b)) >+ #define max(a,b) ((a) > (b) ? (a) : (b)) >+ #ifdef __sun__ >diff -urN /usr/ports/games/quake2lnx/files/extra-patch-src_rogue_q__shared.c quake2lnx/files/extra-patch-src_rogue_q__shared.c >--- /usr/ports/games/quake2lnx/files/extra-patch-src_rogue_q__shared.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/extra-patch-src_rogue_q__shared.c Tue Sep 27 20:04:08 2005 >@@ -0,0 +1,11 @@ >+--- src/rogue/q_shared.c.orig Mon Nov 30 17:53:34 1998 >++++ src/rogue/q_shared.c Tue Sep 27 20:03:24 2005 >+@@ -329,7 +329,7 @@ >+ Returns 1, 2, or 1 + 2 >+ ================== >+ */ >+-#if !id386 || defined __linux__ >++#if !id386 || defined __linux__ || defined __FreeBSD__ >+ int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, struct cplane_s *p) >+ { >+ float dist1, dist2; >diff -urN /usr/ports/games/quake2lnx/files/extra-patch-src_xatrix_q__shared.c quake2lnx/files/extra-patch-src_xatrix_q__shared.c >--- /usr/ports/games/quake2lnx/files/extra-patch-src_xatrix_q__shared.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/extra-patch-src_xatrix_q__shared.c Tue Sep 27 20:05:15 2005 >@@ -0,0 +1,11 @@ >+--- src/xatrix/q_shared.c.orig Mon Nov 30 17:55:36 1998 >++++ src/xatrix/q_shared.c Tue Sep 27 20:04:53 2005 >+@@ -326,7 +326,7 @@ >+ Returns 1, 2, or 1 + 2 >+ ================== >+ */ >+-#if !id386 || defined __linux__ >++#if !id386 || defined __linux__ || defined __FreeBSD__ >+ int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, struct cplane_s *p) >+ { >+ float dist1, dist2; >diff -urN /usr/ports/games/quake2lnx/files/patch-Makefile quake2lnx/files/patch-Makefile >--- /usr/ports/games/quake2lnx/files/patch-Makefile Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-Makefile Fri Oct 7 17:37:28 2005 >@@ -1,5 +1,5 @@ >---- Makefile.orig Thu Oct 10 01:08:21 2002 >-+++ Makefile Tue Jun 17 22:23:11 2003 >+--- Makefile.orig Fri Sep 24 19:06:52 2004 >++++ Makefile Fri Oct 7 17:37:25 2005 > @@ -12,30 +12,30 @@ > # (Note: not all options are available for all platforms). > # quake2 (uses OSS for sound, cdrom ioctls for cd audio) is automatically built. >@@ -51,7 +51,7 @@ > > # (hopefully) end of configurable options > >-@@ -52,55 +52,11 @@ >+@@ -52,60 +52,16 @@ > endif > endif > >@@ -110,12 +110,19 @@ > > MOUNT_DIR=src > >+-BUILD_DEBUG_DIR=debug$(ARCH) >+-BUILD_RELEASE_DIR=release$(ARCH) >++BUILD_DEBUG_DIR=debug >++BUILD_RELEASE_DIR=release >+ CLIENT_DIR=$(MOUNT_DIR)/client >+ SERVER_DIR=$(MOUNT_DIR)/server >+ REF_SOFT_DIR=$(MOUNT_DIR)/ref_soft > @@ -118,7 +74,7 @@ > ROGUE_DIR=$(MOUNT_DIR)/rogue > NULL_DIR=$(MOUNT_DIR)/null > > -BASE_CFLAGS=-Wall -pipe -Dstricmp=strcasecmp >-+BASE_CFLAGS=-Wall -pipe -Dstricmp=strcasecmp $(CFLAGS) >++BASE_CFLAGS=-pipe -Dstricmp=strcasecmp -DDATADIR='\"${DATADIR}\"' -DLIBDIR='\"${LIBDIR}\"' $(CFLAGS) > ifeq ($(HAVE_IPV6),YES) > BASE_CFLAGS+= -DHAVE_IPV6 > ifeq ($(OSTYPE),FreeBSD) >@@ -151,7 +158,7 @@ > +AALDFLAGS=-L${PREFIX}/lib -laa > > -SDLCFLAGS=$(shell sdl-config --cflags) >-+SDLCFLAGS=$(shell sdl11-config --cflags) >++SDLCFLAGS=$(shell ${SDL_CONFIG} --cflags) > ifeq ($(strip $(STATICSDL)),YES) > - SDLLDFLAGS += -L/usr/X11R6/lib$(_LIB) -Wl,-Bstatic $(SDLDIR)/libSDL.a > + SDLLDFLAGS += -L${X11BASE}/lib$(_LIB) -Wl,-Bstatic $(SDLDIR)/libSDL.a >@@ -160,7 +167,7 @@ > -lXinerama > else > - SDLLDFLAGS=$(shell sdl-config --libs) >-+ SDLLDFLAGS=$(shell sdl11-config --libs) >++ SDLLDFLAGS=$(shell ${SDL_CONFIG} --libs) > endif > > ifeq ($(strip $(BUILD_JOYSTICK)),YES) >@@ -194,7 +201,7 @@ > DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< > DO_SHLIB_AS=$(CC) $(CFLAGS) $(SHLIBCFLAGS) -DELF -x assembler-with-cpp -o $@ -c $< > >-@@ -224,10 +189,42 @@ >+@@ -224,168 +189,54 @@ > > .PHONY : targets build_debug build_release clean clean-debug clean-release clean2 > >@@ -232,14 +239,22 @@ > endif > + > +ifeq ($(strip $(BUILD_GAME)),YES) >-+ TARGETS += $(BUILDDIR)/game$(ARCH).$(SHLIBEXT) >++ TARGETS += $(BUILDDIR)/game.$(SHLIBEXT) > +endif > + > ifeq ($(strip $(BUILD_CTFDLL)),YES) >- TARGETS += $(BUILDDIR)/ctf/game$(ARCH).$(SHLIBEXT) >+- TARGETS += $(BUILDDIR)/ctf/game$(ARCH).$(SHLIBEXT) >++ TARGETS += $(BUILDDIR)/ctf/game.$(SHLIBEXT) > endif >-@@ -240,152 +237,6 @@ >- TARGETS += $(BUILDDIR)/rogue/game$(ARCH).$(SHLIBEXT) >+ >+ ifeq ($(strip $(BUILD_XATRIX)),YES) >+- TARGETS += $(BUILDDIR)/xatrix/game$(ARCH).$(SHLIBEXT) >++ TARGETS += $(BUILDDIR)/xatrix/game.$(SHLIBEXT) >+ endif >+ >+ ifeq ($(strip $(BUILD_ROGUE)),YES) >+- TARGETS += $(BUILDDIR)/rogue/game$(ARCH).$(SHLIBEXT) >++ TARGETS += $(BUILDDIR)/rogue/game.$(SHLIBEXT) > endif > > -ifeq ($(ARCH),axp) >@@ -404,6 +419,42 @@ > endif > > $(BUILDDIR)/quake2 : $(QUAKE2_OBJS) $(QUAKE2_LNX_OBJS) $(QUAKE2_AS_OBJS) >+@@ -821,7 +673,7 @@ >+ $(BUILDDIR)/game/q_shared.o \ >+ $(BUILDDIR)/game/m_flash.o >+ >+-$(BUILDDIR)/game$(ARCH).$(SHLIBEXT) : $(GAME_OBJS) >++$(BUILDDIR)/game.$(SHLIBEXT) : $(GAME_OBJS) >+ $(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(GAME_OBJS) >+ >+ $(BUILDDIR)/game/g_ai.o : $(GAME_DIR)/g_ai.c >+@@ -1000,7 +852,7 @@ >+ $(BUILDDIR)/ctf/p_weapon.o \ >+ $(BUILDDIR)/ctf/q_shared.o >+ >+-$(BUILDDIR)/ctf/game$(ARCH).$(SHLIBEXT) : $(CTF_OBJS) >++$(BUILDDIR)/ctf/game.$(SHLIBEXT) : $(CTF_OBJS) >+ $(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(CTF_OBJS) >+ >+ $(BUILDDIR)/ctf/g_ai.o : $(CTF_DIR)/g_ai.c >+@@ -1139,7 +991,7 @@ >+ $(BUILDDIR)/xatrix/p_weapon.o \ >+ $(BUILDDIR)/xatrix/q_shared.o >+ >+-$(BUILDDIR)/xatrix/game$(ARCH).$(SHLIBEXT) : $(XATRIX_OBJS) >++$(BUILDDIR)/xatrix/game.$(SHLIBEXT) : $(XATRIX_OBJS) >+ $(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(XATRIX_OBJS) >+ >+ $(BUILDDIR)/xatrix/g_ai.o : $(XATRIX_DIR)/g_ai.c >+@@ -1367,7 +1219,7 @@ >+ $(BUILDDIR)/rogue/q_shared.o >+ >+ >+-$(BUILDDIR)/rogue/game$(ARCH).$(SHLIBEXT) : $(ROGUE_OBJS) >++$(BUILDDIR)/rogue/game.$(SHLIBEXT) : $(ROGUE_OBJS) >+ $(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(ROGUE_OBJS) >+ >+ $(BUILDDIR)/rogue/dm_ball.o : $(ROGUE_DIR)/dm_ball.c > @@ -1588,6 +1440,7 @@ > endif > >diff -urN /usr/ports/games/quake2lnx/files/patch-src::game::g_phys.c quake2lnx/files/patch-src::game::g_phys.c >--- /usr/ports/games/quake2lnx/files/patch-src::game::g_phys.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::game::g_phys.c Wed Dec 31 21:00:00 1969 >@@ -1,17 +0,0 @@ >---- src/game/g_phys.c.orig Tue Mar 15 22:15:11 2005 >-+++ src/game/g_phys.c Tue Mar 15 22:16:41 2005 >-@@ -356,7 +356,13 @@ >- mask = MASK_SOLID; >- >- trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); >-- >-+ >-+ if (trace.startsolid || trace.allsolid) >-+ { >-+ mask ^= CONTENTS_DEADMONSTER; >-+ trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); >-+ } >-+ >- VectorCopy (trace.endpos, ent->s.origin); >- gi.linkentity (ent); >- >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::gl_glx.c quake2lnx/files/patch-src::linux::gl_glx.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::gl_glx.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::linux::gl_glx.c Wed Dec 31 21:00:00 1969 >@@ -1,100 +0,0 @@ >---- src/linux/gl_glx.c.orig Thu Oct 10 01:29:47 2002 >-+++ src/linux/gl_glx.c Mon Jun 16 23:19:21 2003 >-@@ -475,6 +475,10 @@ >- in_state->Key_Event_fp (K_MWHEELUP, 1); >- else if (event.xbutton.button == 5) >- in_state->Key_Event_fp (K_MWHEELDOWN, 1); >-+ else if (event.xbutton.button == 6) >-+ in_state->Key_Event_fp (K_MOUSE4, 1); >-+ else if (event.xbutton.button == 7) >-+ in_state->Key_Event_fp (K_MOUSE5, 1); >- if (b>=0 && in_state && in_state->Key_Event_fp) >- in_state->Key_Event_fp (K_MOUSE1 + b, true); >- if (b>=0) >-@@ -493,6 +497,10 @@ >- in_state->Key_Event_fp (K_MWHEELUP, 0); >- else if (event.xbutton.button == 5) >- in_state->Key_Event_fp (K_MWHEELDOWN, 0); >-+ else if (event.xbutton.button == 6) >-+ in_state->Key_Event_fp (K_MOUSE4, 0); >-+ else if (event.xbutton.button == 7) >-+ in_state->Key_Event_fp (K_MOUSE5, 0); >- if (b>=0 && in_state && in_state->Key_Event_fp) >- in_state->Key_Event_fp (K_MOUSE1 + b, false); >- if (b>=0) >-@@ -1015,7 +1023,7 @@ >- qboolean OpenJoystick(cvar_t *joy_dev) { >- int i, err; >- glob_t pglob; >-- struct js_event e; >-+ struct joystick j; >- >- err = glob(joy_dev->string, 0, NULL, &pglob); >- >-@@ -1030,7 +1038,7 @@ >- default: >- ri.Con_Printf(PRINT_ALL, "Error #%d while looking for joysticks\n",err); >- } >-- return false; >-+ goto out; >- } >- >- for (i=0;i<pglob.gl_pathc;i++) { >-@@ -1039,38 +1047,36 @@ >- if (joy_fd == -1) { >- ri.Con_Printf(PRINT_ALL, "Error opening joystick dev %s\n", >- pglob.gl_pathv[i]); >-- return false; >-+ goto out; >- } >-- else { >-- while (read(joy_fd, &e, sizeof(struct js_event))!=-1 && >-- (e.type & JS_EVENT_INIT)) >-- ri.Con_Printf(PRINT_ALL, "Read init event\n"); >-+ else if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >- ri.Con_Printf(PRINT_ALL, "Using joystick dev %s\n", pglob.gl_pathv[i]); >- return true; >- } >- } >-+out: >- globfree(&pglob); >- return false; >- } >- >- void PlatformJoyCommands(int *axis_vals, int *axis_map) { >-- struct js_event e; >-- int key_index; >-+ struct joystick j; >- in_state_t *in_state = getState(); >-- >-- while (read(joy_fd, &e, sizeof(struct js_event))!=-1) { >-- if (JS_EVENT_BUTTON & e.type) { >-- key_index = (e.number < 4) ? K_JOY1 : K_AUX1; >-- if (e.value) { >-- in_state->Key_Event_fp (key_index + e.number, true); >-- } >-- else { >-- in_state->Key_Event_fp (key_index + e.number, false); >-- } >-- } >-- else if (JS_EVENT_AXIS & e.type) { >-- axis_vals[axis_map[e.number]] = e.value; >-- } >-+ >-+ /* >-+ * FreeBSD does not fully support multi-buttoned joysticks. >-+ */ >-+ if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >-+ if (j.b1) >-+ in_state->Key_Event_fp (K_JOY1, true); >-+ else >-+ in_state->Key_Event_fp (K_JOY1, false); >-+ if (j.b2) >-+ in_state->Key_Event_fp (K_JOY2, true); >-+ else >-+ in_state->Key_Event_fp (K_JOY2, false); >-+ axis_vals[axis_map[0]] = j.x; >-+ axis_vals[axis_map[1]] = j.y; >- } >- } >- >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::rw_in_svgalib.c quake2lnx/files/patch-src::linux::rw_in_svgalib.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::rw_in_svgalib.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::linux::rw_in_svgalib.c Wed Dec 31 21:00:00 1969 >@@ -1,55 +0,0 @@ >---- src/linux/rw_in_svgalib.c.orig Wed Oct 9 03:54:25 2002 >-+++ src/linux/rw_in_svgalib.c Mon Jun 16 23:00:10 2003 >-@@ -20,7 +20,9 @@ >- #include <termios.h> >- #include <sys/ioctl.h> >- #include <sys/stat.h> >-+#ifdef __linux__ >- #include <sys/vt.h> >-+#endif >- #include <stdarg.h> >- #include <stdio.h> >- #include <signal.h> >-@@ -145,26 +147,22 @@ >- // 84 to 86 not used >- scantokey[ 87] = K_F11; >- scantokey[ 88] = K_F12; >-- // 89 to 95 not used >-- scantokey[ 96] = K_KP_ENTER; //keypad enter >-- scantokey[ 97] = K_CTRL; //right >-- scantokey[ 98] = K_KP_SLASH; >-- scantokey[ 99] = K_F12; // print screen, bind to screenshot by default >-- scantokey[100] = K_ALT; // right >-- >-- scantokey[101] = K_PAUSE; // break >-- scantokey[102] = K_HOME; >-- scantokey[103] = K_UPARROW; >-- scantokey[104] = K_PGUP; >-- scantokey[105] = K_LEFTARROW; >-- scantokey[106] = K_RIGHTARROW; >-- scantokey[107] = K_END; >-- scantokey[108] = K_DOWNARROW; >-- scantokey[109] = K_PGDN; >-- scantokey[110] = K_INS; >-- scantokey[111] = K_DEL; >-- >-- scantokey[119] = K_PAUSE; >-+ scantokey[ 89] = K_KP_ENTER; //keypad enter >-+ scantokey[ 90] = K_CTRL; //right >-+ scantokey[ 91] = K_KP_SLASH; >-+ scantokey[ 92] = K_F12; // print screen, bind to screenshot by default >-+ scantokey[ 93] = K_ALT; // right >-+ scantokey[ 94] = K_HOME; >-+ scantokey[ 95] = K_UPARROW; >-+ scantokey[ 96] = K_PGUP; >-+ scantokey[ 97] = K_LEFTARROW; >-+ scantokey[ 98] = K_RIGHTARROW; >-+ scantokey[ 99] = K_END; >-+ scantokey[100] = K_DOWNARROW; >-+ scantokey[101] = K_PGDN; >-+ scantokey[102] = K_INS; >-+ scantokey[103] = K_DEL; >-+ scantokey[104] = K_PAUSE; >- >- if (keyboard_init()) >- Sys_Error("keyboard_init() failed"); >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::rw_linux.c quake2lnx/files/patch-src::linux::rw_linux.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::rw_linux.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::linux::rw_linux.c Wed Dec 31 21:00:00 1969 >@@ -1,13 +0,0 @@ >---- src/linux/rw_linux.c.orig Sun Jan 2 09:46:35 2005 >-+++ src/linux/rw_linux.c Wed Mar 9 17:40:28 2005 >-@@ -31,6 +31,10 @@ >- static int mouse_buttonstate; >- static int mouse_oldbuttonstate; >- >-+#ifdef OPENGL >-+static cvar_t *use_stencil; >-+#endif >-+ >- in_state_t *getState() { >- return in_state; >- } >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::rw_svgalib.c quake2lnx/files/patch-src::linux::rw_svgalib.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::rw_svgalib.c Wed Jun 18 06:21:21 2003 >+++ quake2lnx/files/patch-src::linux::rw_svgalib.c Wed Dec 31 21:00:00 1969 >@@ -1,12 +0,0 @@ >---- src/linux/rw_svgalib.c.orig Thu Jun 12 18:41:01 2003 >-+++ src/linux/rw_svgalib.c Thu Jun 12 18:41:41 2003 >-@@ -36,7 +36,9 @@ >- #include <termios.h> >- #include <sys/ioctl.h> >- #include <sys/stat.h> >-+#ifdef __linux__ >- #include <sys/vt.h> >-+#endif >- #include <stdarg.h> >- #include <stdio.h> >- #include <signal.h> >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::rw_x11.c quake2lnx/files/patch-src::linux::rw_x11.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::rw_x11.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::linux::rw_x11.c Wed Dec 31 21:00:00 1969 >@@ -1,102 +0,0 @@ >---- src/linux/rw_x11.c.orig Wed Oct 9 03:54:25 2002 >-+++ src/linux/rw_x11.c Mon Jun 16 23:19:40 2003 >-@@ -446,7 +446,7 @@ >- qboolean OpenJoystick(cvar_t *joy_dev) { >- int i, err; >- glob_t pglob; >-- struct js_event e; >-+ struct joystick j; >- >- err = glob(joy_dev->string, 0, NULL, &pglob); >- >-@@ -461,7 +461,7 @@ >- default: >- ri.Con_Printf(PRINT_ALL, "Error #%d while looking for joysticks\n",err); >- } >-- return false; >-+ goto out; >- } >- >- for (i=0;i<pglob.gl_pathc;i++) { >-@@ -470,16 +470,14 @@ >- if (joy_fd == -1) { >- ri.Con_Printf(PRINT_ALL, "Error opening joystick dev %s\n", >- pglob.gl_pathv[i]); >-- return false; >-+ goto out; >- } >-- else { >-- while (read(joy_fd, &e, sizeof(struct js_event))!=-1 && >-- (e.type & JS_EVENT_INIT)) >-- ri.Con_Printf(PRINT_ALL, "Read init event\n"); >-+ else if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >- ri.Con_Printf(PRINT_ALL, "Using joystick dev %s\n", pglob.gl_pathv[i]); >- return true; >- } >- } >-+out: >- globfree(&pglob); >- return false; >- } >-@@ -1014,6 +1012,10 @@ >- in_state->Key_Event_fp (K_MWHEELUP, 1); >- else if (event.xbutton.button == 5) >- in_state->Key_Event_fp (K_MWHEELDOWN, 1); >-+ else if (event.xbutton.button == 6) >-+ in_state->Key_Event_fp (K_MOUSE4, 1); >-+ else if (event.xbutton.button == 7) >-+ in_state->Key_Event_fp (K_MOUSE5, 1); >- if (b>=0) >- mouse_buttonstate |= 1<<b; >- break; >-@@ -1030,6 +1032,10 @@ >- in_state->Key_Event_fp (K_MWHEELUP, 0); >- else if (event.xbutton.button == 5) >- in_state->Key_Event_fp (K_MWHEELDOWN, 0); >-+ else if (event.xbutton.button == 6) >-+ in_state->Key_Event_fp (K_MOUSE4, 0); >-+ else if (event.xbutton.button == 7) >-+ in_state->Key_Event_fp (K_MOUSE5, 0); >- if (b>=0) >- mouse_buttonstate &= ~(1<<b); >- break; >-@@ -1969,23 +1975,23 @@ >- >- #ifdef Joystick >- void PlatformJoyCommands(int *axis_vals, int *axis_map) { >-- struct js_event e; >-- int key_index; >-+ struct joystick j; >- in_state_t *in_state = getState(); >-- >-- while (read(joy_fd, &e, sizeof(struct js_event))!=-1) { >-- if (JS_EVENT_BUTTON & e.type) { >-- key_index = (e.number < 4) ? K_JOY1 : K_AUX1; >-- if (e.value) { >-- in_state->Key_Event_fp (key_index + e.number, true); >-- } >-- else { >-- in_state->Key_Event_fp (key_index + e.number, false); >-- } >-- } >-- else if (JS_EVENT_AXIS & e.type) { >-- axis_vals[axis_map[e.number]] = e.value; >-- } >-+ >-+ /* >-+ * FreeBSD does not fully support multi-buttoned joysticks. >-+ */ >-+ if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >-+ if (j.b1) >-+ in_state->Key_Event_fp (K_JOY1, true); >-+ else >-+ in_state->Key_Event_fp (K_JOY1, false); >-+ if (j.b2) >-+ in_state->Key_Event_fp (K_JOY2, true); >-+ else >-+ in_state->Key_Event_fp (K_JOY2, false); >-+ axis_vals[axis_map[0]] = j.x; >-+ axis_vals[axis_map[1]] = j.y; >- } >- } >- #endif >diff -urN /usr/ports/games/quake2lnx/files/patch-src::linux::sys_linux.c quake2lnx/files/patch-src::linux::sys_linux.c >--- /usr/ports/games/quake2lnx/files/patch-src::linux::sys_linux.c Tue Mar 15 16:32:31 2005 >+++ quake2lnx/files/patch-src::linux::sys_linux.c Wed Dec 31 21:00:00 1969 >@@ -1,22 +0,0 @@ >---- src/linux/sys_linux.c.orig Sun Feb 1 19:06:29 2004 >-+++ src/linux/sys_linux.c Sun Feb 1 19:18:07 2004 >-@@ -217,14 +217,16 @@ >- char *str_p; >- #if defined __i386__ >- const char *gamename = "gamei386.so"; >--#elif defined __x86_64__ >-- const char *gamename = "gamex86_64.so"; >-+#elif defined __amd64__ >-+ const char *gamename = "gameamd64.so"; >- #elif defined __alpha__ >-- const char *gamename = "gameaxp.so"; >-+ const char *gamename = "gamealpha.so"; >- #elif defined __powerpc__ >- const char *gamename = "gameppc.so"; >- #elif defined __sparc__ >- const char *gamename = "gamesparc.so"; >-+#elif defined __ia64__ >-+ const char *gamename = "gameia64.so"; >- #else >- #error Unknown arch >- #endif >diff -urN /usr/ports/games/quake2lnx/files/patch-src::qcommon::files.c quake2lnx/files/patch-src::qcommon::files.c >--- /usr/ports/games/quake2lnx/files/patch-src::qcommon::files.c Mon Jun 30 05:55:39 2003 >+++ quake2lnx/files/patch-src::qcommon::files.c Wed Dec 31 21:00:00 1969 >@@ -1,14 +0,0 @@ >---- src/qcommon/files.c.orig Wed Oct 9 03:54:25 2002 >-+++ src/qcommon/files.c Sat Jun 28 12:30:57 2003 >-@@ -898,7 +898,11 @@ >- // basedir <path> >- // allows the game to run from outside the data tree >- // >-+#ifdef DEDICATED_ONLY >- fs_basedir = Cvar_Get ("basedir", ".", CVAR_NOSET); >-+#else >-+ fs_basedir = Cvar_Get ("basedir", "%%%%BASEDIR%%%%", CVAR_NOSET); >-+#endif >- >- // >- // cddir <path> >diff -urN /usr/ports/games/quake2lnx/files/patch-src_game_g__phys.c quake2lnx/files/patch-src_game_g__phys.c >--- /usr/ports/games/quake2lnx/files/patch-src_game_g__phys.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_game_g__phys.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,17 @@ >+--- src/game/g_phys.c.orig Tue Mar 15 22:15:11 2005 >++++ src/game/g_phys.c Tue Mar 15 22:16:41 2005 >+@@ -356,7 +356,13 @@ >+ mask = MASK_SOLID; >+ >+ trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); >+- >++ >++ if (trace.startsolid || trace.allsolid) >++ { >++ mask ^= CONTENTS_DEADMONSTER; >++ trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); >++ } >++ >+ VectorCopy (trace.endpos, ent->s.origin); >+ gi.linkentity (ent); >+ >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_gl__glx.c quake2lnx/files/patch-src_linux_gl__glx.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_gl__glx.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_gl__glx.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,100 @@ >+--- src/linux/gl_glx.c.orig Thu Oct 10 01:29:47 2002 >++++ src/linux/gl_glx.c Mon Jun 16 23:19:21 2003 >+@@ -475,6 +475,10 @@ >+ in_state->Key_Event_fp (K_MWHEELUP, 1); >+ else if (event.xbutton.button == 5) >+ in_state->Key_Event_fp (K_MWHEELDOWN, 1); >++ else if (event.xbutton.button == 6) >++ in_state->Key_Event_fp (K_MOUSE4, 1); >++ else if (event.xbutton.button == 7) >++ in_state->Key_Event_fp (K_MOUSE5, 1); >+ if (b>=0 && in_state && in_state->Key_Event_fp) >+ in_state->Key_Event_fp (K_MOUSE1 + b, true); >+ if (b>=0) >+@@ -493,6 +497,10 @@ >+ in_state->Key_Event_fp (K_MWHEELUP, 0); >+ else if (event.xbutton.button == 5) >+ in_state->Key_Event_fp (K_MWHEELDOWN, 0); >++ else if (event.xbutton.button == 6) >++ in_state->Key_Event_fp (K_MOUSE4, 0); >++ else if (event.xbutton.button == 7) >++ in_state->Key_Event_fp (K_MOUSE5, 0); >+ if (b>=0 && in_state && in_state->Key_Event_fp) >+ in_state->Key_Event_fp (K_MOUSE1 + b, false); >+ if (b>=0) >+@@ -1015,7 +1023,7 @@ >+ qboolean OpenJoystick(cvar_t *joy_dev) { >+ int i, err; >+ glob_t pglob; >+- struct js_event e; >++ struct joystick j; >+ >+ err = glob(joy_dev->string, 0, NULL, &pglob); >+ >+@@ -1030,7 +1038,7 @@ >+ default: >+ ri.Con_Printf(PRINT_ALL, "Error #%d while looking for joysticks\n",err); >+ } >+- return false; >++ goto out; >+ } >+ >+ for (i=0;i<pglob.gl_pathc;i++) { >+@@ -1039,38 +1047,36 @@ >+ if (joy_fd == -1) { >+ ri.Con_Printf(PRINT_ALL, "Error opening joystick dev %s\n", >+ pglob.gl_pathv[i]); >+- return false; >++ goto out; >+ } >+- else { >+- while (read(joy_fd, &e, sizeof(struct js_event))!=-1 && >+- (e.type & JS_EVENT_INIT)) >+- ri.Con_Printf(PRINT_ALL, "Read init event\n"); >++ else if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >+ ri.Con_Printf(PRINT_ALL, "Using joystick dev %s\n", pglob.gl_pathv[i]); >+ return true; >+ } >+ } >++out: >+ globfree(&pglob); >+ return false; >+ } >+ >+ void PlatformJoyCommands(int *axis_vals, int *axis_map) { >+- struct js_event e; >+- int key_index; >++ struct joystick j; >+ in_state_t *in_state = getState(); >+- >+- while (read(joy_fd, &e, sizeof(struct js_event))!=-1) { >+- if (JS_EVENT_BUTTON & e.type) { >+- key_index = (e.number < 4) ? K_JOY1 : K_AUX1; >+- if (e.value) { >+- in_state->Key_Event_fp (key_index + e.number, true); >+- } >+- else { >+- in_state->Key_Event_fp (key_index + e.number, false); >+- } >+- } >+- else if (JS_EVENT_AXIS & e.type) { >+- axis_vals[axis_map[e.number]] = e.value; >+- } >++ >++ /* >++ * FreeBSD does not fully support multi-buttoned joysticks. >++ */ >++ if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >++ if (j.b1) >++ in_state->Key_Event_fp (K_JOY1, true); >++ else >++ in_state->Key_Event_fp (K_JOY1, false); >++ if (j.b2) >++ in_state->Key_Event_fp (K_JOY2, true); >++ else >++ in_state->Key_Event_fp (K_JOY2, false); >++ axis_vals[axis_map[0]] = j.x; >++ axis_vals[axis_map[1]] = j.y; >+ } >+ } >+ >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_joystick.c quake2lnx/files/patch-src_linux_joystick.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_joystick.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_joystick.c Tue Sep 27 20:22:10 2005 >@@ -0,0 +1,11 @@ >+--- src/linux/joystick.c.orig Thu Jan 27 19:35:20 2005 >++++ src/linux/joystick.c Tue Sep 27 20:21:45 2005 >+@@ -75,7 +75,7 @@ >+ in_joystick = ri.Cvar_Get ("in_joystick", "1", CVAR_ARCHIVE); >+ if (in_joystick->value) { >+ joy_name = ri.Cvar_Get ("joy_name", "joystick", 0); >+- joy_dev = ri.Cvar_Get ("joy_dev","/dev/js*",CVAR_ARCHIVE); >++ joy_dev = ri.Cvar_Get ("joy_dev","/dev/joy*",CVAR_ARCHIVE); >+ joy_advanced = ri.Cvar_Get ("joy_advanced","0",0); >+ joy_advaxisx = ri.Cvar_Get ("joy_advaxisx","4",0); >+ joy_advaxisy = ri.Cvar_Get ("joy_advaxisy","2",0); >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_rw__in__svgalib.c quake2lnx/files/patch-src_linux_rw__in__svgalib.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_rw__in__svgalib.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_rw__in__svgalib.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,55 @@ >+--- src/linux/rw_in_svgalib.c.orig Wed Oct 9 03:54:25 2002 >++++ src/linux/rw_in_svgalib.c Mon Jun 16 23:00:10 2003 >+@@ -20,7 +20,9 @@ >+ #include <termios.h> >+ #include <sys/ioctl.h> >+ #include <sys/stat.h> >++#ifdef __linux__ >+ #include <sys/vt.h> >++#endif >+ #include <stdarg.h> >+ #include <stdio.h> >+ #include <signal.h> >+@@ -145,26 +147,22 @@ >+ // 84 to 86 not used >+ scantokey[ 87] = K_F11; >+ scantokey[ 88] = K_F12; >+- // 89 to 95 not used >+- scantokey[ 96] = K_KP_ENTER; //keypad enter >+- scantokey[ 97] = K_CTRL; //right >+- scantokey[ 98] = K_KP_SLASH; >+- scantokey[ 99] = K_F12; // print screen, bind to screenshot by default >+- scantokey[100] = K_ALT; // right >+- >+- scantokey[101] = K_PAUSE; // break >+- scantokey[102] = K_HOME; >+- scantokey[103] = K_UPARROW; >+- scantokey[104] = K_PGUP; >+- scantokey[105] = K_LEFTARROW; >+- scantokey[106] = K_RIGHTARROW; >+- scantokey[107] = K_END; >+- scantokey[108] = K_DOWNARROW; >+- scantokey[109] = K_PGDN; >+- scantokey[110] = K_INS; >+- scantokey[111] = K_DEL; >+- >+- scantokey[119] = K_PAUSE; >++ scantokey[ 89] = K_KP_ENTER; //keypad enter >++ scantokey[ 90] = K_CTRL; //right >++ scantokey[ 91] = K_KP_SLASH; >++ scantokey[ 92] = K_F12; // print screen, bind to screenshot by default >++ scantokey[ 93] = K_ALT; // right >++ scantokey[ 94] = K_HOME; >++ scantokey[ 95] = K_UPARROW; >++ scantokey[ 96] = K_PGUP; >++ scantokey[ 97] = K_LEFTARROW; >++ scantokey[ 98] = K_RIGHTARROW; >++ scantokey[ 99] = K_END; >++ scantokey[100] = K_DOWNARROW; >++ scantokey[101] = K_PGDN; >++ scantokey[102] = K_INS; >++ scantokey[103] = K_DEL; >++ scantokey[104] = K_PAUSE; >+ >+ if (keyboard_init()) >+ Sys_Error("keyboard_init() failed"); >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_rw__linux.c quake2lnx/files/patch-src_linux_rw__linux.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_rw__linux.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_rw__linux.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,13 @@ >+--- src/linux/rw_linux.c.orig Sun Jan 2 09:46:35 2005 >++++ src/linux/rw_linux.c Wed Mar 9 17:40:28 2005 >+@@ -31,6 +31,10 @@ >+ static int mouse_buttonstate; >+ static int mouse_oldbuttonstate; >+ >++#ifdef OPENGL >++static cvar_t *use_stencil; >++#endif >++ >+ in_state_t *getState() { >+ return in_state; >+ } >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_rw__svgalib.c quake2lnx/files/patch-src_linux_rw__svgalib.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_rw__svgalib.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_rw__svgalib.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,12 @@ >+--- src/linux/rw_svgalib.c.orig Thu Jun 12 18:41:01 2003 >++++ src/linux/rw_svgalib.c Thu Jun 12 18:41:41 2003 >+@@ -36,7 +36,9 @@ >+ #include <termios.h> >+ #include <sys/ioctl.h> >+ #include <sys/stat.h> >++#ifdef __linux__ >+ #include <sys/vt.h> >++#endif >+ #include <stdarg.h> >+ #include <stdio.h> >+ #include <signal.h> >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_rw__x11.c quake2lnx/files/patch-src_linux_rw__x11.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_rw__x11.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_rw__x11.c Mon Sep 26 16:57:46 2005 >@@ -0,0 +1,102 @@ >+--- src/linux/rw_x11.c.orig Wed Oct 9 03:54:25 2002 >++++ src/linux/rw_x11.c Mon Jun 16 23:19:40 2003 >+@@ -446,7 +446,7 @@ >+ qboolean OpenJoystick(cvar_t *joy_dev) { >+ int i, err; >+ glob_t pglob; >+- struct js_event e; >++ struct joystick j; >+ >+ err = glob(joy_dev->string, 0, NULL, &pglob); >+ >+@@ -461,7 +461,7 @@ >+ default: >+ ri.Con_Printf(PRINT_ALL, "Error #%d while looking for joysticks\n",err); >+ } >+- return false; >++ goto out; >+ } >+ >+ for (i=0;i<pglob.gl_pathc;i++) { >+@@ -470,16 +470,14 @@ >+ if (joy_fd == -1) { >+ ri.Con_Printf(PRINT_ALL, "Error opening joystick dev %s\n", >+ pglob.gl_pathv[i]); >+- return false; >++ goto out; >+ } >+- else { >+- while (read(joy_fd, &e, sizeof(struct js_event))!=-1 && >+- (e.type & JS_EVENT_INIT)) >+- ri.Con_Printf(PRINT_ALL, "Read init event\n"); >++ else if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >+ ri.Con_Printf(PRINT_ALL, "Using joystick dev %s\n", pglob.gl_pathv[i]); >+ return true; >+ } >+ } >++out: >+ globfree(&pglob); >+ return false; >+ } >+@@ -1014,6 +1012,10 @@ >+ in_state->Key_Event_fp (K_MWHEELUP, 1); >+ else if (event.xbutton.button == 5) >+ in_state->Key_Event_fp (K_MWHEELDOWN, 1); >++ else if (event.xbutton.button == 6) >++ in_state->Key_Event_fp (K_MOUSE4, 1); >++ else if (event.xbutton.button == 7) >++ in_state->Key_Event_fp (K_MOUSE5, 1); >+ if (b>=0) >+ mouse_buttonstate |= 1<<b; >+ break; >+@@ -1030,6 +1032,10 @@ >+ in_state->Key_Event_fp (K_MWHEELUP, 0); >+ else if (event.xbutton.button == 5) >+ in_state->Key_Event_fp (K_MWHEELDOWN, 0); >++ else if (event.xbutton.button == 6) >++ in_state->Key_Event_fp (K_MOUSE4, 0); >++ else if (event.xbutton.button == 7) >++ in_state->Key_Event_fp (K_MOUSE5, 0); >+ if (b>=0) >+ mouse_buttonstate &= ~(1<<b); >+ break; >+@@ -1969,23 +1975,23 @@ >+ >+ #ifdef Joystick >+ void PlatformJoyCommands(int *axis_vals, int *axis_map) { >+- struct js_event e; >+- int key_index; >++ struct joystick j; >+ in_state_t *in_state = getState(); >+- >+- while (read(joy_fd, &e, sizeof(struct js_event))!=-1) { >+- if (JS_EVENT_BUTTON & e.type) { >+- key_index = (e.number < 4) ? K_JOY1 : K_AUX1; >+- if (e.value) { >+- in_state->Key_Event_fp (key_index + e.number, true); >+- } >+- else { >+- in_state->Key_Event_fp (key_index + e.number, false); >+- } >+- } >+- else if (JS_EVENT_AXIS & e.type) { >+- axis_vals[axis_map[e.number]] = e.value; >+- } >++ >++ /* >++ * FreeBSD does not fully support multi-buttoned joysticks. >++ */ >++ if (read(joy_fd, &j, sizeof(struct joystick)) != -1) { >++ if (j.b1) >++ in_state->Key_Event_fp (K_JOY1, true); >++ else >++ in_state->Key_Event_fp (K_JOY1, false); >++ if (j.b2) >++ in_state->Key_Event_fp (K_JOY2, true); >++ else >++ in_state->Key_Event_fp (K_JOY2, false); >++ axis_vals[axis_map[0]] = j.x; >++ axis_vals[axis_map[1]] = j.y; >+ } >+ } >+ #endif >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_sys__linux.c quake2lnx/files/patch-src_linux_sys__linux.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_sys__linux.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_sys__linux.c Fri Oct 7 17:33:32 2005 >@@ -0,0 +1,23 @@ >+--- src/linux/sys_linux.c.orig Sun Sep 12 15:26:29 2004 >++++ src/linux/sys_linux.c Fri Oct 7 17:32:46 2005 >+@@ -215,19 +215,7 @@ >+ char name[MAX_OSPATH]; >+ char *path; >+ char *str_p; >+-#if defined __i386__ >+- const char *gamename = "gamei386.so"; >+-#elif defined __x86_64__ >+- const char *gamename = "gamex86_64.so"; >+-#elif defined __alpha__ >+- const char *gamename = "gameaxp.so"; >+-#elif defined __powerpc__ >+- const char *gamename = "gameppc.so"; >+-#elif defined __sparc__ >+- const char *gamename = "gamesparc.so"; >+-#else >+-#error Unknown arch >+-#endif >++ const char *gamename = "game.so"; >+ >+ setreuid(getuid(), getuid()); >+ setegid(getgid()); >diff -urN /usr/ports/games/quake2lnx/files/patch-src_linux_vid_so.c quake2lnx/files/patch-src_linux_vid_so.c >--- /usr/ports/games/quake2lnx/files/patch-src_linux_vid_so.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_linux_vid_so.c Tue Sep 27 19:29:18 2005 >@@ -0,0 +1,34 @@ >+--- src/linux/vid_so.c.orig Fri Sep 24 19:11:44 2004 >++++ src/linux/vid_so.c Tue Sep 27 19:28:29 2005 >+@@ -216,7 +216,6 @@ >+ refimport_t ri; >+ GetRefAPI_t GetRefAPI; >+ char fn[MAX_OSPATH]; >+- char *path; >+ struct stat st; >+ extern uid_t saved_euid; >+ >+@@ -237,9 +236,7 @@ >+ //regain root >+ seteuid(saved_euid); >+ >+- path = Cvar_Get ("basedir", ".", CVAR_NOSET)->string; >+- >+- snprintf (fn, MAX_OSPATH, "%s/%s", path, name ); >++ snprintf (fn, MAX_OSPATH, LIBDIR"/%s", name ); >+ >+ if (stat(fn, &st) == -1) { >+ Com_Printf( "LoadLibrary(\"%s\") failed: %s\n", name, strerror(errno)); >+@@ -490,11 +487,9 @@ >+ qboolean VID_CheckRefExists (const char *ref) >+ { >+ char fn[MAX_OSPATH]; >+- char *path; >+ struct stat st; >+ >+- path = Cvar_Get ("basedir", ".", CVAR_NOSET)->string; >+- snprintf (fn, MAX_OSPATH, "%s/ref_%s.so", path, ref ); >++ snprintf (fn, MAX_OSPATH, LIBDIR"/ref_%s.so", ref ); >+ >+ if (stat(fn, &st) == 0) >+ return true; >diff -urN /usr/ports/games/quake2lnx/files/patch-src_qcommon_files.c quake2lnx/files/patch-src_qcommon_files.c >--- /usr/ports/games/quake2lnx/files/patch-src_qcommon_files.c Wed Dec 31 21:00:00 1969 >+++ quake2lnx/files/patch-src_qcommon_files.c Tue Sep 27 18:26:29 2005 >@@ -0,0 +1,12 @@ >+--- src/qcommon/files.c.orig Sun Jan 2 00:38:12 2005 >++++ src/qcommon/files.c Tue Sep 27 18:25:41 2005 >+@@ -912,7 +912,8 @@ >+ // >+ // add baseq2 to search path >+ // >+- FS_AddGameDirectory (va("%s/"BASEDIRNAME, fs_basedir->string) ); >++ FS_AddGameDirectory(LIBDIR"/"BASEDIRNAME); >++ FS_AddGameDirectory(DATADIR"/"BASEDIRNAME); >+ >+ // >+ // then add a '.quake2/baseq2' directory in home directory by default >diff -urN /usr/ports/games/quake2lnx/pkg-message quake2lnx/pkg-message >--- /usr/ports/games/quake2lnx/pkg-message Tue Mar 15 16:32:30 2005 >+++ quake2lnx/pkg-message Wed Dec 31 21:00:00 1969 >@@ -1,17 +0,0 @@ >-=================================================== >- >- Install additional mission paks and mods in >- ${DATADIR}/ directory. >- >- You must also own full (registered) version >- of Quake II, or rebuild the port with "make >- -DWITH_SHAREWARE_DATA" to install demo ver- >- sion data files. Note that you do not need >- full version to run dedicated server. >- >- If you decide to build Xatrix/Rogue mission >- packs, you'll need to copy their data files >- to ${DATADIR}/xatrix|rogue/ >- directory from installation CD. >- >-=================================================== >diff -urN /usr/ports/games/quake2lnx/pkg-plist quake2lnx/pkg-plist >--- /usr/ports/games/quake2lnx/pkg-plist Mon Mar 21 09:22:46 2005 >+++ quake2lnx/pkg-plist Fri Oct 7 17:47:12 2005 >@@ -1,16 +1,20 @@ >-@comment === EXECUTABLES === >+%%SERVER%%bin/q2ded > %%CLIENT%%bin/quake2 > %%SDLCLIENT%%bin/sdlquake2 >-%%SERVER%%bin/q2ded >-@comment === RENDERERS === >-%%SVGA%%%%DATADIR%%/ref_soft.so >-%%SDL%%%%DATADIR%%/ref_softsdl.so >-%%SDLGL%%%%DATADIR%%/ref_sdlgl.so >-%%X11%%%%DATADIR%%/ref_softx.so >-%%GLX%%%%DATADIR%%/ref_glx.so >-%%AA%%%%DATADIR%%/ref_softaa.so >-@comment === DATA === >-%%GAME%%%%DATADIR%%/baseq2/game%%ARCH%%.so >+%%GAME%%%%LIBDIR%%/baseq2/game.so >+%%CTF%%%%LIBDIR%%/ctf/game.so >+%%ROGUE%%%%LIBDIR%%/rogue/game.so >+%%XATRIX%%%%LIBDIR%%/xatrix/game.so >+%%GLX%%%%LIBDIR%%/ref_glx.so >+%%SDLGL%%%%LIBDIR%%/ref_sdlgl.so >+%%SVGA%%%%LIBDIR%%/ref_soft.so >+%%AA%%%%LIBDIR%%/ref_softaa.so >+%%SDL%%%%LIBDIR%%/ref_softsdl.so >+%%X11%%%%LIBDIR%%/ref_softx.so >+%%PORTDOCS%%%%DOCSDIR%%/README >+%%PORTDOCS%%%%DOCSDIR%%/README.320 >+%%PORTDOCS%%%%DOCSDIR%%/joystick.txt >+%%PORTDOCS%%%%DOCSDIR%%/quake2.3dfxgl > %%QMAX%%%%DATADIR%%/baseq2/maxpak.pak > %%RETEX%%%%DATADIR%%/baseq2/pak10.pak > %%RETEX%%%%DATADIR%%/baseq2/pak11.pak >@@ -20,205 +24,9 @@ > %%RETEX%%%%DATADIR%%/baseq2/pak16.pak > %%RETEX%%%%DATADIR%%/baseq2/pak17.pak > %%RETEX%%%%DATADIR%%/baseq2/pak19.pak >-%%SHAREWARE%%%%DATADIR%%/baseq2/pak0.pak >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/athena.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/athena_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/brianna.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/brianna_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/cobalt.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/cobalt_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/doomgal.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/doomgal_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/ensign.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/ensign_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/jezebel.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/jezebel_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/jungle.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/jungle_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/lotus.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/lotus_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/stiletto.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/stiletto_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/tris.md2 >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/venus.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/venus_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/voodoo.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/voodoo_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/weapon.md2 >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/female/weapon.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/cipher.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/cipher_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/claymore.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/claymore_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/flak.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/flak_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/grunt.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/grunt_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/howitzer.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/howitzer_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/major.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/major_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/nightops.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/nightops_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/pointman.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/pointman_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/psycho.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/psycho_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/rampage.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/rampage_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/razor.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/razor_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/recon.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/recon_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/scout.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/scout_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/skin.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/sniper.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/sniper_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/tris.md2 >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/viper.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/viper_i.pcx >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/weapon.md2 >-%%SHAREWARE%%%%DATADIR%%/baseq2/players/male/weapon.pcx >-%%SHAREWARE%%@dirrm %%DATADIR%%/baseq2/players/male >-%%SHAREWARE%%@dirrm %%DATADIR%%/baseq2/players/female >-%%SHAREWARE%%@dirrm %%DATADIR%%/baseq2/players >-@dirrm %%DATADIR%%/baseq2 >-%%CTF%%%%DATADIR%%/ctf/game%%ARCH%%.so >-%%CTFMAPS%%%%DATADIR%%/ctf/pak0.pak >-@dirrm %%DATADIR%%/ctf >-%%XATRIX%%%%DATADIR%%/xatrix/game%%ARCH%%.so >-%%XATRIX%%@dirrm %%DATADIR%%/xatrix >-%%ROGUE%%%%DATADIR%%/rogue/game%%ARCH%%.so >-%%ROGUE%%@dirrm %%DATADIR%%/rogue >-@dirrm %%DATADIR%% >-@comment === DOCS === >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/bottom.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/credits.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/customer_support.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_barracuda_shark.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_berserker.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_brains.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_enforcer.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_flyer.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_gladiator.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_gunner.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_icarus.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_iron_maiden.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_light_guard.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_machinegun_guard.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_medic.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_mutant.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/adrenaline.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/amor_body.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/armor_combat.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/armor_jacket.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/armor_shard.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/bandoleer.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/barracuda_shark.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/berserker.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/bfg.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/blaster.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/bluekey.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/bottom_id_link_transparent.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/brains.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/breather.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/bullets.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/buttons.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/cells.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/chaingun.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/commandant_james.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/credits_main.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/door.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/elevator_base_exit_sign.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/enemy_groupshot.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/energy_armour.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/enforcer.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/envirosuit.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/explosive_barrels.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/first_aid.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/flyer.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/gladiator.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/grenades.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/grenade_launcher.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/gunner.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/hand_grenade.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/heavy_pack.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/hyper_blaster.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/icarus.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/invulnerability.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/iron_maiden.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/lava.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/lever.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/light_guard.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/machinegun.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/machinegun_guard.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/main_cover_image.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/manual_back.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/manual_bottom.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/manual_cover_image.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/manual_top.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/medic.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/medkit.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/mega_health.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/menu.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/multiplayer_main.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/multiplayer_menu1.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/multiplayer_screen1.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/mutant.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/no_data.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/options_menu.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/parasite.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/player_properties_screen1.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/quad_damage.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/rail_gun.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/rockets.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/rocket_launcher.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/secret_door.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/shells.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/shotgun.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/shotgun_guard.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/silencer.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/slime.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/start_network_server_screen1.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/stimpack.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/story_main.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/strogg_environ_1.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/strogg_environ_2.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/strogg_environ_3.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/supershotgun.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/tank.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/tank_commander.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/technician.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/top_nav_imagemap.gif >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/unit_exit_door.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/images/water.jpg >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_parasite.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_shotgun_guard.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_tank.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_tank_commander.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/enemy_technician.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief2.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief3.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief4.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief5.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief6.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief7.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief8.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/intel_brief_enemy.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/main.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/multiplayer.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/page_index.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/story.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/setup_controls_screenmenus.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/technical_information.html >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/quake2_manual/top_nav.html >-%%PORTDOCS%%%%MANUAL%%@dirrm %%DOCSDIR%%/quake2_manual/images >-%%PORTDOCS%%%%MANUAL%%@dirrm %%DOCSDIR%%/quake2_manual >-%%PORTDOCS%%%%MANUAL%%%%DOCSDIR%%/Manual.html >-%%PORTDOCS%%%%DOCSDIR%%/README >-%%PORTDOCS%%%%DOCSDIR%%/README.320 >-%%PORTDOCS%%%%DOCSDIR%%/joystick.txt >-%%PORTDOCS%%%%DOCSDIR%%/quake2.3dfxgl > %%PORTDOCS%%@dirrm %%DOCSDIR%% >+%%CTF%%@dirrm %%LIBDIR%%/ctf >+%%GAME%%@dirrm %%LIBDIR%%/baseq2 >+%%ROGUE%%@dirrm %%LIBDIR%%/rogue >+%%XATRIX%%@dirrm %%LIBDIR%%/xatrix >+@dirrm %%LIBDIR%%
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 87181
: 57798