[arch-commits] Commit in freetalk/trunk (PKGBUILD freetalk-3.2-glibc210.patch)

Jan Steffens heftig at nymeria.archlinux.org
Tue Jun 4 07:15:48 UTC 2013


    Date: Tuesday, June 4, 2013 @ 09:15:47
  Author: heftig
Revision: 92353

guile rebuild

Added:
  freetalk/trunk/freetalk-3.2-glibc210.patch
Modified:
  freetalk/trunk/PKGBUILD

-----------------------------+
 PKGBUILD                    |   39 +++++++++++-------------
 freetalk-3.2-glibc210.patch |   68 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 86 insertions(+), 21 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-06-04 07:05:16 UTC (rev 92352)
+++ PKGBUILD	2013-06-04 07:15:47 UTC (rev 92353)
@@ -4,36 +4,33 @@
 
 pkgname=freetalk
 pkgver=3.2
-pkgrel=5
+pkgrel=6
 pkgdesc="A console based Jabber client"
 arch=('i686' 'x86_64')
 url="http://www.gnu.org/software/freetalk"
 license=('GPL')
-depends=('loudmouth' 'guile')
+depends=('loudmouth' 'guile1.8')
 install=freetalk.install
-source=(http://savannah.gnu.org/download/freetalk/freetalk-$pkgver.tar.gz)
-md5sums=('ab09bd07dde158551f151d281b14642c')
+source=(http://savannah.gnu.org/download/freetalk/freetalk-$pkgver.tar.gz
+        freetalk-3.2-glibc210.patch)
+md5sums=('ab09bd07dde158551f151d281b14642c'
+         '0da1d0a0f606d2b279fe676a80a3eb32')
 
+prepare(){
+  cd $pkgname-$pkgver
+  patch -Np1 -i ../freetalk-3.2-glibc210.patch
+}
+
 build() {
-  cd $srcdir/freetalk-$pkgver
-
-  ./configure --prefix=/usr
-
-  patch -p0 src/callbacks.cc <<EOF
-156c156,159
-< 	*strchr (from, '/') = '\0';
----
-> 	{
-> 	char *_tmp = (char*)strchr (from, '/');
-> 	*_tmp = '\0';
-> 	}
-EOF
-
+  cd $pkgname-$pkgver
+  ./configure --prefix=/usr --disable-rpath \
+    GUILE=/usr/bin/guile1.8 \
+    GUILE_CONFIG=/usr/bin/guile-config1.8
   make
 }
 
 package() {
-  cd $srcdir/freetalk-$pkgver
-  make DESTDIR=$pkgdir install
-  rm $pkgdir/usr/share/info/dir
+  cd $pkgname-$pkgver
+  make DESTDIR="$pkgdir" install
+  rm "$pkgdir/usr/share/info/dir"
 }

Added: freetalk-3.2-glibc210.patch
===================================================================
--- freetalk-3.2-glibc210.patch	                        (rev 0)
+++ freetalk-3.2-glibc210.patch	2013-06-04 07:15:47 UTC (rev 92353)
@@ -0,0 +1,68 @@
+diff -urNp freetalk-3.2.orig/src/callbacks.cc freetalk-3.2/src/callbacks.cc
+--- freetalk-3.2.orig/src/callbacks.cc	2009-02-25 01:31:29.826691032 +0530
++++ freetalk-3.2/src/callbacks.cc	2009-02-25 02:56:04.323962193 +0530
+@@ -1,7 +1,7 @@
+ /*
+   callbacks.c: Callback functions
+   
+-  Copyright (c) 2005, 2006, 2007 Freetalk Core Team
++  Copyright (c) 2005, 2006, 2007, 2009 Freetalk Core Team
+   This file is part of GNU Freetalk.
+   
+   Freetalk is free software; you can redistribute it and/or modify
+@@ -20,6 +20,7 @@
+ */
+ 
+ #include <stdio.h>
++#include <string>
+ #include <string.h>
+ #include <stdlib.h>
+ #include <glib.h> 
+@@ -116,8 +117,9 @@ ft_msg_msg_handler (LmMessageHandler *ha
+ 		    LmMessage *msg, gpointer user_data)
+ {
+   LmMessageNode *root, *body, *x;
+-  const char *from, *msg_str, *type;
++  const char *msg_str, *type;
+   char *ts = NULL;
++  std::string from;
+ 
+   root = lm_message_get_node (msg);
+   body = lm_message_node_get_child (root, "body");
+@@ -152,11 +154,12 @@ ft_msg_msg_handler (LmMessageHandler *ha
+     set_hook_return (0);
+     /* TBD : make the below stripping of /Resource configurable */
+     if (1) {
+-      if (strchr (from, '/'))
+-	*strchr (from, '/') = '\0';
++      const size_t pos = from.find("/");
++      if (pos != std::string::npos)
++	from.replace(pos, from.size() - pos, "");
+     }
+     {
+-      FtRosterItem *item = ft_roster_lookup (from);
++      FtRosterItem *item = ft_roster_lookup (from.c_str());
+       char *nickname;
+       
+       if (!item)
+@@ -166,17 +169,17 @@ ft_msg_msg_handler (LmMessageHandler *ha
+       
+       scm_run_hook (ex_message_receive_hook,
+ 		    scm_list_n (ts ? scm_from_locale_string (ts) : scm_from_locale_string (""),
+-				scm_from_locale_string (from),
++				scm_from_locale_string (from.c_str()),
+ 				nickname ? scm_from_locale_string (nickname) : scm_from_locale_string (""),
+ 				scm_from_locale_string (msg_str),
+ 				SCM_UNDEFINED));
+     }
+     if (ts) g_free (ts);
+     
+-    if (get_hook_return () == 1)
++    if (get_hook_return () == 1) 
+       return LM_HANDLER_RESULT_REMOVE_MESSAGE;
+     
+-    PRINTF ("%s: %s", from, msg_str);
++    PRINTF ("%s: %s", from.c_str(), msg_str);
+   } else {
+     /* This logic should be looked into : FIXME */
+     ft_send_file_message_data (msg);




More information about the arch-commits mailing list