[35969] trunk/dports/games/xqf
raimue at macports.org
raimue at macports.org
Fri Apr 11 14:21:13 PDT 2008
Revision: 35969
http://trac.macosforge.org/projects/macports/changeset/35969
Author: raimue at macports.org
Date: 2008-04-11 14:21:12 -0700 (Fri, 11 Apr 2008)
Log Message:
-----------
games/xqf:
Update to version 1.0.5 with some patches, closes #12037
Modified Paths:
--------------
trunk/dports/games/xqf/Portfile
Added Paths:
-----------
trunk/dports/games/xqf/files/
trunk/dports/games/xqf/files/patch-Makefile.am.diff
trunk/dports/games/xqf/files/patch-Makefile.in.diff
trunk/dports/games/xqf/files/patch-loadpixmap.c.diff
trunk/dports/games/xqf/files/patch-xqf-space.diff
Modified: trunk/dports/games/xqf/Portfile
===================================================================
--- trunk/dports/games/xqf/Portfile 2008-04-11 19:49:46 UTC (rev 35968)
+++ trunk/dports/games/xqf/Portfile 2008-04-11 21:21:12 UTC (rev 35969)
@@ -1,8 +1,9 @@
# $Id$
PortSystem 1.0
+
name xqf
-version 1.0.3
+version 1.0.5
categories games
platforms darwin
maintainers nomaintainer
@@ -10,35 +11,46 @@
description GTK+ Front-end to Qstat
long_description XQF is a game server browser and launcher for \
- Unix/X11 for many popular games such as the \
- Quake series, Unreal Tournament series, Half-Life \
- etc.
+ Unix/X11 for many popular games such as the \
+ Quake series, Unreal Tournament series, Half-Life \
+ etc.
master_sites sourceforge
-checksums md5 5ee4aa37b2a52e72fc71c9078d95c289
-depends_lib lib:libgtk.1:gtk1 \
- lib:libgdk-pixbuf:gdk-pixbuf \
- port:p5-xml-parser \
- lib:libreadline:readline
+patchfiles patch-Makefile.am.diff \
+ patch-Makefile.in.diff \
+ patch-loadpixmap.c.diff \
+ patch-xqf-space.diff
+patch.pre_args -p1
-depends_run port:qstat
+checksums md5 a88cecba6abb6349107ab135f1009946 \
+ sha1 052351ff26cf2f79f6bc2de5aacf63e76a02eb62 \
+ rmd160 159b9cd02a15fe3b1afd78952152adf5aaafc0c2
-configure.args --with-qstat=${prefix}/bin/qstat \
- --enable-bzip2 \
- --enable-externalrcon \
- --disable-geoip
+depends_lib lib:libgtk.1:gtk1 \
+ lib:libgdk-pixbuf:gdk-pixbuf \
+ port:p5-xml-parser \
+ lib:libreadline:readline
+depends_run port:qstat
+
+configure.args --mandir=${prefix}/share/man \
+ --with-qstat=${prefix}/bin/qstat \
+ --enable-bzip2 \
+ --enable-externalrcon \
+ --disable-geoip
+
post-destroot { file mkdir ${destroot}${prefix}/share/doc/${name}
- xinstall -m 644 -v -W ${worksrcpath} \
- AUTHORS BUGS COPYING NEWS README TODO \
- ${destroot}${prefix}/share/doc/${name}
- file copy ${worksrcpath}/docs/xqfdocs.html \
- ${destroot}${prefix}/share/doc/${name}
- }
+ xinstall -m 644 -v -W ${worksrcpath} \
+ AUTHORS BUGS COPYING NEWS README TODO \
+ ${destroot}${prefix}/share/doc/${name}
+ file copy ${worksrcpath}/docs/xqfdocs.html \
+ ${destroot}${prefix}/share/doc/${name}
+ }
-variant gtk2 { depends_lib-delete lib:libgtk.1:gtk1
- depends_lib-append lib:libgtk.2:gtk2
- configure.args-append --enable-gtk2
- }
+variant gtk2 { depends_lib-delete lib:libgtk.1:gtk1 lib:libgdk-pixbuf:gdk-pixbuf
+ depends_lib-append lib:libgtk.2:gtk2
+ configure.args-append --enable-gtk2
+ }
+
Added: trunk/dports/games/xqf/files/patch-Makefile.am.diff
===================================================================
--- trunk/dports/games/xqf/files/patch-Makefile.am.diff (rev 0)
+++ trunk/dports/games/xqf/files/patch-Makefile.am.diff 2008-04-11 21:21:12 UTC (rev 35969)
@@ -0,0 +1,12 @@
+diff -u -r xqf-1.0.5/src/Makefile.am xqf-1.0.5-patch/src/Makefile.am
+--- xqf-1.0.5/src/Makefile.am 2006-10-28 15:12:09.000000000 +0200
++++ xqf-1.0.5-patch/src/Makefile.am 2007-05-20 22:59:23.000000000 +0200
+@@ -34,7 +34,7 @@
+ $(GDK_PIXBUF_LIBS) \
+ -lz
+
+-xqf_LDFLAGS = -Wl,-rpath,$(pkglibdir) -Wl,--export-dynamic -Wl,--version-script=$(top_srcdir)/src/xqf.map
++xqf_LDFLAGS =
+
+ # we need to specify all deps manually due to dummy libs
+ xqf_DEPENDENCIES = \
Added: trunk/dports/games/xqf/files/patch-Makefile.in.diff
===================================================================
--- trunk/dports/games/xqf/files/patch-Makefile.in.diff (rev 0)
+++ trunk/dports/games/xqf/files/patch-Makefile.in.diff 2008-04-11 21:21:12 UTC (rev 35969)
@@ -0,0 +1,12 @@
+diff -u -r xqf-1.0.5/src/Makefile.in xqf-1.0.5-patch/src/Makefile.in
+--- xqf-1.0.5/src/Makefile.in 2006-11-04 13:44:12.000000000 +0100
++++ xqf-1.0.5-patch/src/Makefile.in 2007-05-20 22:59:44.000000000 +0200
+@@ -313,7 +313,7 @@
+ $(GDK_PIXBUF_LIBS) \
+ -lz
+
+-xqf_LDFLAGS = -Wl,-rpath,$(pkglibdir) -Wl,--export-dynamic -Wl,--version-script=$(top_srcdir)/src/xqf.map
++xqf_LDFLAGS =
+
+ # we need to specify all deps manually due to dummy libs
+ xqf_DEPENDENCIES = $(top_builddir)/src/zip/libunzip.a \
Added: trunk/dports/games/xqf/files/patch-loadpixmap.c.diff
===================================================================
--- trunk/dports/games/xqf/files/patch-loadpixmap.c.diff (rev 0)
+++ trunk/dports/games/xqf/files/patch-loadpixmap.c.diff 2008-04-11 21:21:12 UTC (rev 35969)
@@ -0,0 +1,12 @@
+diff -u -r xqf-1.0.5/src/loadpixmap.c xqf-1.0.5-patch/src/loadpixmap.c
+--- xqf-1.0.5/src/loadpixmap.c 2005-07-03 19:51:08.000000000 +0200
++++ xqf-1.0.5-patch/src/loadpixmap.c 2007-05-19 16:38:37.000000000 +0200
+@@ -184,7 +184,7 @@
+ *p++ = '_';
+ }
+
+- xpm = dlsym(NULL, found_filename);
++ xpm = dlsym(RTLD_DEFAULT, found_filename);
+ if(xpm)
+ {
+ colormap = gtk_widget_get_colormap (widget);
Added: trunk/dports/games/xqf/files/patch-xqf-space.diff
===================================================================
--- trunk/dports/games/xqf/files/patch-xqf-space.diff (rev 0)
+++ trunk/dports/games/xqf/files/patch-xqf-space.diff 2008-04-11 21:21:12 UTC (rev 35969)
@@ -0,0 +1,77 @@
+diff -u -r xqf-1.0.5/src/game.c xqf-1.0.5-patch/src/game.c
+--- xqf-1.0.5/src/game.c 2006-06-18 15:15:18.000000000 +0200
++++ xqf-1.0.5-patch/src/game.c 2007-05-20 10:59:32.000000000 +0200
+@@ -189,6 +189,45 @@
+ { NULL, UNKNOWN_SERVER }
+ };
+
++/* space name in executable fix */
++gchar ** space_fix_strsplit( const gchar *string,
++ const gchar *delimiter,
++ gint max_tokens )
++{
++ int i,k,len,
++ hit = 0;
++ gchar * localstring = NULL;
++ gchar ** retvalue = NULL;
++
++ /* make a local copy of string to manipulate it
++ we'll free the region just before leaving the main if */
++ len = strlen(string);
++ localstring = (char *) malloc(len+1);
++ if ( localstring ) {
++ strcpy(localstring, string);
++ i=0;
++ while ( i<len-2-hit) {
++ if ( (localstring[i] == '\\') && (localstring[i+1] == ' ') ) {
++ localstring[i] = '\254';
++ for ( k=i+1; k<=len-1; k++)
++ localstring[k]=localstring[k+1];
++ hit += 1;
++ }
++ i += 1;
++ }
++ retvalue = g_strsplit( localstring, delimiter, max_tokens);
++ if (retvalue)
++ if (retvalue[0]) {
++ len = strlen(retvalue[0]);
++ for ( i=0; i<len-1; i++)
++ if ( retvalue[0][i] == '\254' )
++ retvalue[0][i] = ' ';
++ }
++ free(localstring);
++ }
++ return retvalue;
++}
++
+ void init_games()
+ {
+ unsigned i, j;
+@@ -2331,10 +2370,10 @@
+ enable_console = str2bool(game_get_attribute(g->type,"enable_console"));
+ pass_memory_options = str2bool(game_get_attribute(g->type,"pass_memory_options"));
+
+- cmdtokens = g_strsplit(g->cmd," ",0);
++ cmdtokens = space_fix_strsplit(g->cmd," ",0);
+
+ if(cmdtokens && *cmdtokens[cmdi])
+- cmd=cmdtokens[cmdi++];
++ cmd=cmdtokens[cmdi++];
+
+ /*
+ Figure out what protocal the server is running so we can try to connect
+diff -u -r xqf-1.0.5/src/launch.c xqf-1.0.5-patch/src/launch.c
+--- xqf-1.0.5/src/launch.c 2005-10-07 14:55:15.000000000 +0200
++++ xqf-1.0.5-patch/src/launch.c 2007-05-20 08:16:52.000000000 +0200
+@@ -285,9 +285,10 @@
+
+ execvp (argv[0], argv);
+
+- g_snprintf (msg, CLIENT_ERROR_BUFFER, "%sexec(%s) failed: %s",
++ g_snprintf (msg, CLIENT_ERROR_BUFFER, "%sexec(\"%s\") failed: %s",
+ CLIENT_ERROR_MSG_HEAD, argv[0], g_strerror (errno));
+
++
+ error_out:
+ write (pipefds[1], msg, strlen (msg) + 1);
+ close (pipefds[1]);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080411/1448dda4/attachment.html
More information about the macports-changes
mailing list