diff options
Diffstat (limited to 'extra/procmail')
-rw-r--r-- | extra/procmail/PKGBUILD | 31 | ||||
-rw-r--r-- | extra/procmail/procmail-3.22-getline.patch | 56 |
2 files changed, 87 insertions, 0 deletions
diff --git a/extra/procmail/PKGBUILD b/extra/procmail/PKGBUILD new file mode 100644 index 000000000..df4a9c2a6 --- /dev/null +++ b/extra/procmail/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 114723 2011-03-15 18:50:11Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgname=procmail +pkgver=3.22 +pkgrel=3 +pkgdesc="Highly configurable auto mail processing." +arch=(i686 x86_64) +url="http://www.procmail.org" +license=('GPL' 'custom:Artistic') +depends=('glibc' 'sh') +makedepends=('smtp-server') +source=(#http://www.procmail.org/${pkgname}-${pkgver}.tar.gz # currently down + ftp://ftp.informatik.rwth-aachen.de/pub/packages/procmail/${pkgname}-${pkgver}.tar.gz + procmail-3.22-getline.patch) +md5sums=('1678ea99b973eb77eda4ecf6acae53f1' + 'cf8e5d4854050ab0c836e07406a3dfa9') + +build() { + cd $srcdir/$pkgname-$pkgver + patch -Np1 -i ${srcdir}/procmail-3.22-getline.patch + yes n | make LOCKINGTEST="/tmp ." + make BASENAME=${pkgdir}/usr MANDIR=${pkgdir}/usr/share/man install +} + +package() { + cd $srcdir/$pkgname-$pkgver + install -D -m644 Artistic ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + install -d -m755 ${pkgdir}/usr/share/doc/${pkgname}/examples + install -m644 examples/* ${pkgdir}/usr/share/doc/${pkgname}/examples/ +} diff --git a/extra/procmail/procmail-3.22-getline.patch b/extra/procmail/procmail-3.22-getline.patch new file mode 100644 index 000000000..fb9a4ec6e --- /dev/null +++ b/extra/procmail/procmail-3.22-getline.patch @@ -0,0 +1,56 @@ +diff -up procmail-3.22/src/fields.c.getline procmail-3.22/src/fields.c +--- procmail-3.22/src/fields.c.getline 2001-09-11 06:57:08.000000000 +0200 ++++ procmail-3.22/src/fields.c 2009-06-30 16:10:36.000000000 +0200 +@@ -110,16 +110,16 @@ void dispfield(p)register const struct f + /* try and append one valid field to rdheader from stdin */ + int readhead P((void)) + { int idlen; +- getline(); ++ get_line(); + 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=='>';get_line()); /* gather continued >From_ lines */ + } + else +- for(;;getline()) /* get the rest of the continued field */ ++ for(;;get_line()) /* get the rest of the continued field */ + { switch(buflast) /* will this line be continued? */ + { case ' ':case '\t': /* yep, it sure is */ + continue; +diff -up procmail-3.22/src/formail.c.getline procmail-3.22/src/formail.c +--- procmail-3.22/src/formail.c.getline 2009-06-30 16:00:40.000000000 +0200 ++++ procmail-3.22/src/formail.c 2009-06-30 16:10:49.000000000 +0200 +@@ -819,7 +819,7 @@ splitit: { if(!lnl) /* did the p + { if(split) /* gobble up the next start separator */ + { buffilled=0; + #ifdef sMAILBOX_SEPARATOR +- getline();buffilled=0; /* but only if it's defined */ ++ get_line();buffilled=0; /* but only if it's defined */ + #endif + if(buflast!=EOF) /* if any */ + goto splitit; +diff -up procmail-3.22/src/formisc.c.getline procmail-3.22/src/formisc.c +--- procmail-3.22/src/formisc.c.getline 2001-06-29 04:20:45.000000000 +0200 ++++ procmail-3.22/src/formisc.c 2009-06-30 16:12:20.000000000 +0200 +@@ -115,7 +115,7 @@ void loadchar(c)const int c; /* a + buf[buffilled++]=c; + } + +-int getline P((void)) /* read a newline-terminated line */ ++int get_line 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 */ +diff -up procmail-3.22/src/formisc.h.getline procmail-3.22/src/formisc.h +--- procmail-3.22/src/formisc.h.getline 1999-04-19 08:42:15.000000000 +0200 ++++ procmail-3.22/src/formisc.h 2009-06-30 16:10:02.000000000 +0200 +@@ -17,4 +17,4 @@ void + char* + skipwords P((char*start)); + int +- getline P((void)); ++ get_line P((void)); |