ports/51800: [MAINTAINER] Unbreak mail/bincimap build on alpha (bento)

Sergei Kolobov sergei at kolobov.com
Mon May 5 15:40:07 UTC 2003


>Number:         51800
>Category:       ports
>Synopsis:       [MAINTAINER] Unbreak mail/bincimap build on alpha (bento)
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Mon May 05 08:40:04 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Sergei Kolobov
>Release:        FreeBSD 4.7-STABLE i386
>Organization:
>Environment:
System: FreeBSD outpost.globcon.net 4.7-STABLE FreeBSD 4.7-STABLE #0: Thu Jan  2 03:13:48 MSK
>Description:
- Unbreak on alpha - the error is triggered by a bug in alpha binutils
  (see http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no&bug=188428)
- Bump PORTREVISION

Noticed by:	bento (kris)
Obtained from:	Gerrit Pape, Binc IMAP maintainer on Debian

Added file:
- files/patch-src::util::convert.h
>How-To-Repeat:
>Fix:

--- patch begins here ---
diff -ruN --exclude=CVS bincimap.cvs/Makefile bincimap/Makefile
--- bincimap.cvs/Makefile	Mon May  5 19:16:54 2003
+++ bincimap/Makefile	Mon May  5 19:18:12 2003
@@ -7,6 +7,7 @@
 
 PORTNAME=	bincimap
 PORTVERSION=	1.1.5
+PORTREVISION=	1
 CATEGORIES=	mail
 MASTER_SITES=	http://www.bincimap.org/dl/tarballs/
 
diff -ruN --exclude=CVS bincimap.cvs/files/patch-src::util::convert.h bincimap/files/patch-src::util::convert.h
--- bincimap.cvs/files/patch-src::util::convert.h	Thu Jan  1 03:00:00 1970
+++ bincimap/files/patch-src::util::convert.h	Mon May  5 18:24:17 2003
@@ -0,0 +1,39 @@
+replace switch statement in inline function with if/then/else; fixes compiler
+failure on alpha: ``relocation truncated to fit: GPREL32 *UND*''
+
+diff -u -r1.4 convert.h
+--- src/util/convert.h	8 Apr 2003 16:46:28 -0000	1.4
++++ src/util/convert.h	9 Apr 2003 08:02:54 -0000
+@@ -269,6 +269,7 @@
+   {
+     std::string regex = "^";
+     for (std::string::const_iterator i = s_in.begin(); i != s_in.end(); ++i) {
++      /*
+       switch (*i) {
+       case '.': 
+       case '[': case ']': 
+@@ -291,6 +292,24 @@
+       default: 
+ 	regex += *i;
+ 	break;
++      }
++      */
++      if (*i == '.' || *i == '[' || *i == ']' || *i == '{' || *i == '}' ||
++	  *i == '(' || *i == ')' || *i == '^' || *i == '$' || *i == '?' ||
++	  *i == '+' || *i == '\\') {
++	regex += "\\";
++	regex += *i;
++      }
++      else if (*i == '*') {
++	regex += ".*?";
++      }
++      else if (*i == '%') {
++	regex += "[^\\";
++	regex += delimiter;
++	regex += "]*?";
++      }
++      else {
++	regex += *i;
+       }
+     }
+     
--- patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list