Kolab 2.2.1 and 2.2.2 does not install

Liutauras Adomaitis liutauras.adomaitis at gmail.com
Tue Oct 13 22:26:25 CEST 2009


FYI
Now I try to build Kolab 2.2.2 on mandriva 2010 RC2 and it fails while
building procmail. Error is:
> /kolab/bin/cc -c -fPIC  formail.c
> In file included from formail.c:25:
> formisc.h:20: error: conflicting types for 'getline'
> /usr/include/stdio.h:655: error: previous declaration of 'getline' was here
> make[1]: *** [formail.o] Error 1
> make: *** [bins] Error 2
> error: Bad exit status from /kolab/RPM/TMP/rpm-tmp.59346 (%build)

It is discussed in
http://www.kolab.org/pipermail/kolab-users/2009-July/010263.html. I
found a patch for that in
http://bugs.gentoo.org/show_bug.cgi?id=270551. I applied it in the
same dirty way I did with other on Mandriva 2009.1 (patching while the
process of building procmail is running) and it worked. We will see if
there are other things to patch.
The patch for Kolab procmail is:
diff -NrU5 procmail-3.22.orig/src/fields.c procmail-3.22/src/fields.c
--- procmail-3.22.orig/src/fields.c	2009-05-21 18:21:25.000000000 +0200
+++ procmail-3.22/src/fields.c	2009-05-21 18:22:14.000000000 +0200
@@ -108,20 +108,20 @@
 	extractfield(p);
 }
 		    /* try and append one valid field to rdheader from stdin */
 int readhead P((void))
 { int idlen;
-  getline();
+  procmail_getline();
   if((idlen=breakfield(buf,buffilled))<=0) /* not the start of a valid field */
      return 0;
   if(idlen==STRLEN(FROM)&&eqFrom_(buf))			/* it's a From_ line */
    { if(rdheader)
 	return 0;			       /* the From_ line was a fake! */
-     for(;buflast=='>';getline());	    /* gather continued >From_ lines */
+     for(;buflast=='>';procmail_getline());	    /* gather continued
>From_ lines */
    }
   else
-     for(;;getline())		      /* get the rest of the continued field */
+     for(;;procmail_getline())		      /* get the rest of the continued field */
       { switch(buflast)			     /* will this line be continued? */
 	 { case ' ':case '\t':				  /* yep, it sure is */
 	      continue;
 	 }
 	break;
diff -NrU5 procmail-3.22.orig/src/formail.c procmail-3.22/src/formail.c
--- procmail-3.22.orig/src/formail.c	2009-05-21 18:21:25.000000000 +0200
+++ procmail-3.22/src/formail.c	2009-05-21 18:22:14.000000000 +0200
@@ -817,11 +817,11 @@
 #ifdef MAILBOX_SEPARATOR
      if(!strncmp(emboxsep,buf,STRLEN(emboxsep)))	     /* end of mail? */
       { if(split)		       /* gobble up the next start separator */
 	 { buffilled=0;
 #ifdef sMAILBOX_SEPARATOR
-	   getline();buffilled=0;		 /* but only if it's defined */
+	   procmail_getline();buffilled=0;		 /* but only if it's defined */
 #endif
 	   if(buflast!=EOF)					   /* if any */
 	      goto splitit;
 	   break;
 	 }
diff -NrU5 procmail-3.22.orig/src/formisc.c procmail-3.22/src/formisc.c
--- procmail-3.22.orig/src/formisc.c	2009-05-21 18:21:25.000000000 +0200
+++ procmail-3.22/src/formisc.c	2009-05-21 18:22:14.000000000 +0200
@@ -113,11 +113,11 @@
 { if(buffilled==buflen)
      buf=realloc(buf,buflen+=Bsize);
   buf[buffilled++]=c;
 }

-int getline P((void))			   /* read a newline-terminated line */
+int procmail_getline P((void))			   /* read a newline-terminated line */
 { if(buflast==EOF)			 /* at the end of our Latin already? */
    { loadchar('\n');					  /* fake empty line */
      return EOF;					  /* spread the word */
    }
   loadchar(buflast);			    /* load leftover into the buffer */
diff -NrU5 procmail-3.22.orig/src/formisc.h procmail-3.22/src/formisc.h
--- procmail-3.22.orig/src/formisc.h	2009-05-21 18:21:25.000000000 +0200
+++ procmail-3.22/src/formisc.h	2009-05-21 18:22:14.000000000 +0200
@@ -15,6 +15,6 @@
  closemine P((void)),
  opensink P((void));
 char*
  skipwords P((char*start));
 int
- getline P((void));
+ procmail_getline P((void));




More information about the users mailing list