summaryrefslogtreecommitdiffstats
path: root/games/quetoo
diff options
context:
space:
mode:
Diffstat (limited to 'games/quetoo')
-rw-r--r--games/quetoo/Makefile83
-rw-r--r--games/quetoo/distinfo6
-rw-r--r--games/quetoo/files/extra-patch-fbsd4158
-rw-r--r--games/quetoo/files/patch-src__files.c60
-rw-r--r--games/quetoo/pkg-plist70
5 files changed, 109 insertions, 268 deletions
diff --git a/games/quetoo/Makefile b/games/quetoo/Makefile
index d147954..4f432a6 100644
--- a/games/quetoo/Makefile
+++ b/games/quetoo/Makefile
@@ -6,11 +6,12 @@
#
PORTNAME= quetoo
-PORTVERSION= 0.4.0
-PORTREVISION= 2
+PORTVERSION= 0.6.1
CATEGORIES= games
MASTER_SITES= http://jdolan.dyndns.org/jaydolan/files/ \
+ http://tastyspleen.net/~jdolan/ \
http://freebsd.nsu.ru/distfiles/
+DISTNAME= ${PORTNAME}-${PORTVERSION}-full
MAINTAINER= danfe@FreeBSD.org
COMMENT= Fast, stable, compatible, and secure Quake II client
@@ -19,32 +20,25 @@ USE_BZIP2= yes
USE_SDL= sdl
USE_GL= yes
GNU_CONFIGURE= yes
-CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" \
- OPENGL_CFLAGS="${CPPFLAGS}" OPENGL_LIBS="${LDFLAGS}"
-CPPFLAGS= -I${LOCALBASE}/include -I${X11BASE}/include ${PTHREAD_CFLAGS}
-LDFLAGS= -L${LOCALBASE}/lib -L${X11BASE}/lib ${PTHREAD_LIBS}
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib" \
+ OPENGL_CFLAGS="-I${X11BASE}/include" OPENGL_LIBS="-L${X11BASE}/lib"
+
+WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
LIBDIR= ${PREFIX}/lib/${PORTNAME}
-PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
+PLIST_SUB+= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
-OPTIONS= GAME "Build a main game .so file (required)" on \
- CTF "Build the Capture The Flag modification" off \
+# Main and CTF game.so files are not built/installed by default since
+# they're available via `quake2-data' and `quake2-ctf' ports.
+#
+OPTIONS= GAME "Build a main game .so file" off \
+ CTF "Build Capture The Flag modification" off \
+ VANCTF "Build Vanilla CTF modification" on \
QMASS "Build QMass deathmatch mod" on \
MYSQL "Enable MySQL frag logging" off \
- OPTIMIZED_CFLAGS "Enable extra optimization options" off
.include <bsd.port.pre.mk>
-.if defined(GCCVERSION)
-. if ${GCCVERSION} < 030000
-EXTRA_PATCHES+= ${FILESDIR}/extra-patch-fbsd4
-. endif
-.else
-. if ${OSVERSION} < 500035
-EXTRA_PATCHES+= ${FILESDIR}/extra-patch-fbsd4
-. endif
-.endif
-
.if !defined(WITHOUT_GAME)
PLIST_SUB+= GAME=""
Q2GAMES+= baseq2
@@ -58,54 +52,65 @@ PLIST_SUB+= CTF=""
Q2GAMES+= ctf
.else
PLIST_SUB+= CTF="@comment "
-Q2GAMES_NOT+= ctf
.endif
.if !defined(WITHOUT_QMASS)
-CONFIGURE_ARGS+= --enable-qmass
PLIST_SUB+= QMASS=""
Q2GAMES+= qmass
.else
PLIST_SUB+= QMASS="@comment "
-Q2GAMES_NOT+= qmass
+.endif
+
+.if defined(WITH_VANCTF)
+PLIST_SUB+= VANCTF=""
+Q2GAMES+= vanctf
+.else
+PLIST_SUB+= VANCTF="@comment "
.endif
.if defined(WITH_MYSQL)
USE_MYSQL= yes
-CONFIGURE_ARGS+=--with-mysql
+CONFIGURE_ARGS+= --with-mysql
CONFIGURE_ENV+= MYSQL_LIBS="-L${LOCALBASE}/lib/mysql -lmysqlclient" \
MYSQL_CFLAGS="-I${LOCALBASE}/include"
.else
-CONFIGURE_ARGS+=--without-mysql
+CONFIGURE_ARGS+= --without-mysql
.endif
-.if !defined(WITH_OPTIMIZED_CFLAGS)
-CONFIGURE_ARGS+=--disable-opt --disable-sse
-.endif
+CONFIGURE_ARGS+= --with-games='${Q2GAMES}'
post-extract: .SILENT
- ${REINPLACE_CMD} -E 's,^(eval PKGDATADIR=).*$$,\1"${Q2DIR}",; \
- s,sdl-config,${SDL_CONFIG},' ${WRKSRC}/configure
+ ${REINPLACE_CMD} -E 's,^(eval PKGDATADIR=).*$$,\1"${Q2DIR}", ; \
+ 20055s,sdl-config,${SDL_CONFIG}, ; \
+ s,^(GAME_MODULES=")baseq2",\1",' ${WRKSRC}/configure
+ ${REINPLACE_CMD} -e 's,const struct,struct,' ${WRKSRC}/src/files.c
${REINPLACE_CMD} -e 's,-ldl,,' ${WRKSRC}/src/Makefile.in
- ${REINPLACE_CMD} -e 's,alsa,sdl,' ${WRKSRC}/src/snd_ref.c
-.for f in ${Q2GAMES_NOT}
- ${REINPLACE_CMD} -i "" -Ee 's,^(SRC_SUBDIRS=".*)${f}(.*),\1\2,' \
- ${WRKSRC}/configure
-.endfor
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/src/quetoo ${PREFIX}/bin/quetoo
- @${MKDIR} ${LIBDIR}
- ${INSTALL_PROGRAM} ${WRKSRC}/src/.libs/*.so ${LIBDIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/quetoo ${PREFIX}/bin
.for g in ${Q2GAMES}
@${MKDIR} ${LIBDIR}/${g}
${INSTALL_PROGRAM} ${WRKSRC}/src/${g}/.libs/game.so ${LIBDIR}/${g}
.endfor
+.if !defined(WITHOUT_QMASS)
+ @${MKDIR} ${DATADIR}/qmass/sound
+ ${INSTALL_DATA} ${WRKSRC}/data/qmass/sound/*.wav ${DATADIR}/qmass/sound
+.if !defined(WITHOUT_VANCTF)
+ @${MKDIR} ${DATADIR}/vanctf/maps
+ ${INSTALL_DATA} ${WRKSRC}/data/vanctf/maps/*.ent ${DATADIR}/vanctf/maps
+ ${INSTALL_DATA} ${WRKSRC}/data/vanctf/maps.lst ${DATADIR}/vanctf
+.endif
+.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
. if !defined(WITHOUT_QMASS)
- ${INSTALL_DATA} ${WRKSRC}/src/qmass/README ${DOCSDIR}/qmass-README
+ @${MKDIR} ${DOCSDIR}/qmass
+ ${INSTALL_DATA} ${WRKSRC}/src/qmass/README ${DOCSDIR}/qmass
+. endif
+. if !defined(WITHOUT_VANCTF)
+ @${MKDIR} ${DOCSDIR}/vanctf
+ ${INSTALL_DATA} ${WRKSRC}/src/vanctf/*E* ${DOCSDIR}/vanctf
. endif
.endif
diff --git a/games/quetoo/distinfo b/games/quetoo/distinfo
index 5122ea0..9eb2a3b 100644
--- a/games/quetoo/distinfo
+++ b/games/quetoo/distinfo
@@ -1,3 +1,3 @@
-MD5 (quetoo-0.4.0.tar.bz2) = e1649d5cb1729c0561d3809a55f3edce
-SHA256 (quetoo-0.4.0.tar.bz2) = 4265cb461f278343d949f63e710e8c395b1568b2a5a74a2610f7aa52bce91a16
-SIZE (quetoo-0.4.0.tar.bz2) = 888077
+MD5 (quetoo-0.6.1-full.tar.bz2) = e4dc8e47101b47ec15f8b0ae44c15bf9
+SHA256 (quetoo-0.6.1-full.tar.bz2) = 1fcc01cf0fecca14d72ed3d905ce175128bc1470e69b96d3105facb5674af5cd
+SIZE (quetoo-0.6.1-full.tar.bz2) = 1781869
diff --git a/games/quetoo/files/extra-patch-fbsd4 b/games/quetoo/files/extra-patch-fbsd4
deleted file mode 100644
index 1a903af..0000000
--- a/games/quetoo/files/extra-patch-fbsd4
+++ /dev/null
@@ -1,158 +0,0 @@
---- src/qmass/p_client.c.orig Sat Apr 8 06:51:19 2006
-+++ src/qmass/p_client.c Fri Jun 16 05:06:09 2006
-@@ -850,6 +850,9 @@
- client_persistant_t saved;
- client_respawn_t resp;
-
-+ // deathmatch wipes most client data every spawn
-+ char userinfo[MAX_INFO_STRING];
-+
- // find a spawn point
- // do it before setting health back up, so farthest
- // ranging doesn't count this client
-@@ -857,9 +860,6 @@
-
- index = ent - g_edicts - 1;
- client = ent->client;
--
-- // deathmatch wipes most client data every spawn
-- char userinfo[MAX_INFO_STRING];
-
- resp = client->resp;
- memcpy(userinfo, client->pers.userinfo, sizeof(userinfo));
---- src/qmass/p_hud.c.orig Sat Apr 8 06:51:19 2006
-+++ src/qmass/p_hud.c Fri Jun 16 05:07:20 2006
-@@ -65,6 +65,7 @@
- void BeginIntermission(edict_t *targ){
- int i;
- edict_t *ent, *client;
-+ char *sound;
-
- if(level.intermissiontime)
- return; // already activated
-@@ -110,7 +111,7 @@
- MoveClientToIntermission(client);
- }
-
-- char *sound = sv_inter_sound->string; //play intermission sound
-+ sound = sv_inter_sound->string; //play intermission sound
- gi.sound(ent, CHAN_NO_PHS_ADD, gi.soundindex(sound),
- 1, ATTN_NONE, 0);
- }
---- src/vid_glx.c.orig Tue Apr 11 08:56:53 2006
-+++ src/vid_glx.c Fri Jun 16 04:53:40 2006
-@@ -785,6 +785,9 @@
- XSizeHints *sizehints;
- XWMHints *wmhints;
- unsigned long mask;
-+#ifdef HAVE_XF86_VIDMODE
-+ int num_vidmodes = 0;
-+#endif
-
- window_width = width;
- window_height = height;
-@@ -817,8 +820,6 @@
- gl_state.hwgamma = false;
-
- #ifdef HAVE_XF86_VIDMODE
-- int num_vidmodes = 0;
--
- XF86VidModeGetAllModeLines(dpy, screen, &num_vidmodes, &vidmodes);
-
- if(fullscreen){
---- src/vid_softx.c.orig Sat Apr 22 19:54:36 2006
-+++ src/vid_softx.c Fri Jun 16 04:50:02 2006
-@@ -747,6 +747,11 @@
- XSizeHints *sizehints;
- XWMHints *wmhints;
- unsigned long mask;
-+ int i;
-+#ifdef HAVE_XF86_VIDMODE
-+ int num_vidmodes = 0;
-+#endif
-+ XGCValues vals;
-
- // destroy existing window
- SWimp_Shutdown();
-@@ -768,8 +773,6 @@
- }
-
- #ifdef HAVE_XF86_VIDMODE
-- int num_vidmodes = 0;
--
- XF86VidModeGetAllModeLines(dpy, screen, &num_vidmodes, &vidmodes);
-
- if(fullscreen){
-@@ -894,7 +897,6 @@
- }
- #endif // HAVE_XF86_VIDMODE
-
-- XGCValues vals;
- vals.graphics_exposures = False;
- gc = XCreateGC(dpy, win, GCGraphicsExposures, &vals);
-
-@@ -906,7 +908,7 @@
- }
-
- viddef.height = height; viddef.width = width;
-- int i = ((viddef.width * 4 + 7) & ~7) * viddef.height;
-+ i = ((viddef.width * 4 + 7) & ~7) * viddef.height;
-
- x_framebuffer = XCreateImage(dpy,
- visinfo->visual,
---- src/tga.c.orig Wed Apr 26 23:26:50 2006
-+++ src/tga.c Fri Jun 16 04:52:35 2006
-@@ -35,6 +35,9 @@
- byte *targa_rgba;
- byte tmp[2];
-
-+ byte red, green, blue, alpha;
-+ byte packet_header, packet_size, j;
-+
- *pic = NULL;
-
- if(!strstr(name, "env/") && !gl_loadtga->value)
-@@ -91,9 +94,6 @@
-
- if(targa_header.id_length != 0) // skip header comment
- buffer += targa_header.id_length;
--
-- byte red, green, blue, alpha;
-- byte packet_header, packet_size, j;
-
- red = green = blue = alpha = 0;
- packet_header = packet_size = j = 0;
---- src/cl_parse.c.orig Thu Jun 22 10:26:09 2006
-+++ src/cl_parse.c Thu Jul 6 09:38:33 2006
-@@ -559,11 +559,12 @@
- * Returns true of msg should be discarded, according to cl_ignore.
- */
- qboolean CL_IgnoreChatMessage(char *msg){
-+ char *s;
-
- if(!*cl_ignore->string || strlen(cl_ignore->string) < 1)
- return false; // nothing currently filtered
-
-- char *s = strtok(cl_ignore->string, " ");
-+ s = strtok(cl_ignore->string, " ");
- while(s){
- if(strstr(msg, s))
- return true;
---- src/common.c.orig Fri Jun 30 09:23:25 2006
-+++ src/common.c Thu Jul 6 09:38:37 2006
-@@ -1188,6 +1188,7 @@
- */
- void Qcommon_Init(int argc, char **argv){
- char *s;
-+ #include "binds.h"
-
- if(setjmp(abortframe))
- Sys_Error("Error during initialization");
-@@ -1215,7 +1216,6 @@
-
- FS_InitFilesystem();
-
-- #include "binds.h"
- Cbuf_AddText(DEFAULT_BINDS);
- Cbuf_AddText("exec quetoo.cfg\n");
-
diff --git a/games/quetoo/files/patch-src__files.c b/games/quetoo/files/patch-src__files.c
deleted file mode 100644
index 16f631d..0000000
--- a/games/quetoo/files/patch-src__files.c
+++ /dev/null
@@ -1,60 +0,0 @@
---- src/files.c.orig Thu Jun 22 00:26:09 2006
-+++ src/files.c Thu Jul 27 17:22:54 2006
-@@ -490,8 +490,9 @@
- Cvar_FullSet("gamedir", dir, CVAR_SERVERINFO | CVAR_NOSET);
- if(fs_cddir->string[0])
- FS_AddGameDirectory(va("%s/%s", fs_cddir->string, dir));
-- FS_AddGameDirectory(va(PKGLIBDIR"/%s", dir));
- FS_AddGameDirectory(va(PKGDATADIR"/%s", dir));
-+ FS_AddGameDirectory(va(PKGLIBDIR"/%s", dir));
-+ FS_AddGameDirectory(va("%s/%s", fs_basedir->string, dir));
- FS_AddHomeAsGameDirectory(dir);
- }
- }
-@@ -682,20 +683,13 @@
- Cmd_AddCommand("path", FS_Path_f);
- Cmd_AddCommand("link", FS_Link_f);
- Cmd_AddCommand("dir", FS_Dir_f);
--
-+
- //
- // basedir <path>
- // allows the game to run from outside the data tree
- //
- fs_basedir = Cvar_Get("basedir", ".", CVAR_NOSET);
--
-- //export q2 home, adding it to search path if necessary
-- if(fs_basedir->string && strcmp(fs_basedir->string, ".")){
-- setenv("QUAKE2_HOME", fs_basedir->string, 0);
-- FS_AddGameDirectory(fs_basedir->string);
-- }
-- else setenv("QUAKE2_HOME", PKGDATADIR, 0);
--
-+
- //
- // cddir <path>
- // Logically concatenates the cddir after the basedir for
-@@ -704,13 +698,20 @@
- fs_cddir = Cvar_Get("cddir", "", CVAR_NOSET);
- if(fs_cddir->string[0])
- FS_AddGameDirectory(va("%s/"BASEDIRNAME, fs_cddir->string));
--
-+
- //
- // add baseq2 to search path
- //
-- FS_AddGameDirectory(PKGLIBDIR"/"BASEDIRNAME);
- FS_AddGameDirectory(PKGDATADIR"/"BASEDIRNAME);
--
-+ FS_AddGameDirectory(PKGLIBDIR"/"BASEDIRNAME);
-+
-+ //export q2 home, adding it to search path if necessary
-+ if(fs_basedir->string && strcmp(fs_basedir->string, ".")){
-+ setenv("QUAKE2_HOME", fs_basedir->string, 0);
-+ FS_AddGameDirectory(fs_basedir->string);
-+ }
-+ else setenv("QUAKE2_HOME", PKGDATADIR, 0);
-+
- //
- // then add a '.quake2/baseq2' directory in home directory by default
- //
diff --git a/games/quetoo/pkg-plist b/games/quetoo/pkg-plist
index 89ea331..3a55df8 100644
--- a/games/quetoo/pkg-plist
+++ b/games/quetoo/pkg-plist
@@ -1,16 +1,70 @@
+@comment === EXECUTABLE ===
bin/quetoo
+@comment === GAME FILES ===
%%GAME%%%%LIBDIR%%/baseq2/game.so
%%CTF%%%%LIBDIR%%/ctf/game.so
%%QMASS%%%%LIBDIR%%/qmass/game.so
-%%LIBDIR%%/vid_glsdl.so
-%%LIBDIR%%/vid_glx.so
-%%LIBDIR%%/vid_softsdl.so
-%%LIBDIR%%/vid_softx.so
-%%LIBDIR%%/snd_sdl.so
+%%QMASS%%%%DATADIR%%/qmass/sound/qmass.wav
+%%VANCTF%%%%LIBDIR%%/vanctf/game.so
+%%VANCTF%%%%DATADIR%%/vanctf/maps/base1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/base2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/base3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/biggun.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/boss1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/boss2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/bunk1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/city1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/city2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/command.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/cool1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/fact1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/fact2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/fact3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/jail1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/jail2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/jail3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/jail4.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/jail5.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/mine1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/mine2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/mine3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/mine4.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/mintro.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/power1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/power2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm4.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm5.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm6.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm7.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/q2dm8.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/security.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/strike.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/train.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/ware1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/ware2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/waste1.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/waste2.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps/waste3.ent
+%%VANCTF%%%%DATADIR%%/vanctf/maps.lst
+@comment === DOCUMENTATION ===
%%PORTDOCS%%%%DOCSDIR%%/README
-%%QMASS%%%%PORTDOCS%%%%DOCSDIR%%/qmass-README
-%%PORTDOCS%%@dirrm %%DOCSDIR%%
+%%QMASS%%%%PORTDOCS%%%%DOCSDIR%%/qmass/README
+%%VANCTF%%%%PORTDOCS%%%%DOCSDIR%%/vanctf/NOTES
+%%VANCTF%%%%PORTDOCS%%%%DOCSDIR%%/vanctf/README
+@comment === CLEANUP ===
%%GAME%%@dirrm %%LIBDIR%%/baseq2
%%CTF%%@dirrm %%LIBDIR%%/ctf
%%QMASS%%@dirrm %%LIBDIR%%/qmass
-@dirrm %%LIBDIR%%
+%%QMASS%%@dirrm %%DATADIR%%/qmass/sound
+%%QMASS%%@dirrm %%DATADIR%%/qmass
+%%VANCTF%%@dirrm %%LIBDIR%%/vanctf
+%%VANCTF%%@dirrm %%DATADIR%%/vanctf/maps
+%%VANCTF%%@dirrm %%DATADIR%%/vanctf
+%%QMASS%%%%PORTDOCS%%@dirrm %%DOCSDIR%%/qmass
+%%VANCTF%%%%PORTDOCS%%@dirrm %%DOCSDIR%%/vanctf
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
+@dirrmtry %%LIBDIR%%
+@dirrmtry %%DATADIR%%
OpenPOWER on IntegriCloud