[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