diff options
author | root <root@rshg054.dnsready.net> | 2013-09-03 01:52:27 -0700 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2013-09-03 01:52:27 -0700 |
commit | 3aa73e2018f321c9ccff8eca801b1c2fa9f18fa8 (patch) | |
tree | 961d6e0475cac3875e6a31b558861367da0c93d8 /community/libsieve | |
parent | 53939c2b159d972c48fc2f3652408632c71be77b (diff) |
Tue Sep 3 01:50:53 PDT 2013
Diffstat (limited to 'community/libsieve')
-rw-r--r-- | community/libsieve/PKGBUILD | 33 | ||||
-rw-r--r-- | community/libsieve/glibc-regex.patch | 79 |
2 files changed, 108 insertions, 4 deletions
diff --git a/community/libsieve/PKGBUILD b/community/libsieve/PKGBUILD index b9e1477b8..47887d420 100644 --- a/community/libsieve/PKGBUILD +++ b/community/libsieve/PKGBUILD @@ -1,20 +1,45 @@ -# $Id: PKGBUILD 72453 2012-06-14 19:07:49Z spupykin $ +# $Id: PKGBUILD 96634 2013-09-02 16:06:17Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=libsieve pkgver=2.3.1 -pkgrel=1 +pkgrel=2 pkgdesc="sieve interpretator lib" arch=(i686 x86_64) url="http://libsieve.sourceforge.net/" license=('GPL') options=('!libtool') -source=("https://github.com/downloads/sodabrew/libsieve/libsieve-$pkgver.tar.gz") -md5sums=('bb48eecf877cc7fdb2b0dfe757b48d7a') +source=("https://github.com/downloads/sodabrew/libsieve/libsieve-$pkgver.tar.gz" + "glibc-regex.patch") +md5sums=('bb48eecf877cc7fdb2b0dfe757b48d7a' + '0d98d9e8f0583857616b2ba98f1833fa') + +prepare() { + cd "$srcdir/$pkgname-$pkgver" + rm -rf src/sv_regex + patch -p1 <$srcdir/glibc-regex.patch +} build() { cd "$srcdir/$pkgname-$pkgver" + aclocal + automake + autoconf ./configure --prefix=/usr make +} + +check() { + cd "$srcdir/$pkgname-$pkgver/src/sv_test" + ls -1 script* | while read script; do + ls -1 message* | while read msg; do + msg "checking $script $msg" + ./example $script $msg || true # upstream bugs? + done + done +} + +package() { + cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir/" install } diff --git a/community/libsieve/glibc-regex.patch b/community/libsieve/glibc-regex.patch new file mode 100644 index 000000000..1b024ff2e --- /dev/null +++ b/community/libsieve/glibc-regex.patch @@ -0,0 +1,79 @@ +diff -wbBur libsieve-2.3.1/Makefile.am libsieve-2.3.1.my/Makefile.am +--- libsieve-2.3.1/Makefile.am 2012-05-14 15:20:06.000000000 +0400 ++++ libsieve-2.3.1.my/Makefile.am 2013-09-02 19:24:34.474741233 +0400 +@@ -5,7 +5,6 @@ + + EXTRA_DIST = libsieve.pc.in \ + src/sv_parser/addr.h src/sv_parser/addr-lex.h src/sv_parser/header.h src/sv_parser/header-lex.h src/sv_parser/sieve.h src/sv_parser/sieve-lex.h \ +- src/sv_regex/README src/sv_regex/regcomp.c src/sv_regex/regexec.c src/sv_regex/regex_internal.c src/sv_regex/regex_internal.h \ + src/sv_test/lmtp-1 src/sv_test/lmtp-2 src/sv_test/messagea.mbox src/sv_test/messageb.mbox src/sv_test/messagec.mbox src/sv_test/messaged.mbox src/sv_test/messagef.mbox src/sv_test/messageg.mbox src/sv_test/messageh.mbox src/sv_test/messagei.mbox src/sv_test/messagej.mbox src/sv_test/messagek.mbox src/sv_test/script10.sv src/sv_test/script11.sv src/sv_test/script12.sv src/sv_test/script13.sv src/sv_test/script14.sv src/sv_test/script15.sv src/sv_test/script16.sv src/sv_test/script17.sv src/sv_test/script18.sv src/sv_test/script19.sv src/sv_test/script1.sv src/sv_test/script20.sv src/sv_test/script21.sv src/sv_test/script22.sv src/sv_test/script23.sv src/sv_test/script2.sv src/sv_test/script3.sv src/sv_test/script4.sv src/sv_test/script5.sv src/sv_test/script6.sv src/sv_test/script7.sv src/sv_test/script8.sv src/sv_test/script9.sv src/sv_test/testmessage.sh src/sv_test/testvalid.sh + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = libsieve.pc +@@ -24,7 +23,6 @@ + src_libsieve_la_SOURCES = \ + src/sv_interface/callbacks2.c src/sv_interface/callbacks2.h src/sv_interface/context2.c src/sv_interface/context2.h src/sv_interface/message2.c src/sv_interface/message2.h src/sv_interface/message.c src/sv_interface/message.h src/sv_interface/script2.c src/sv_interface/script.c src/sv_interface/script.h src/sv_interface/tree.c src/sv_interface/tree.h \ + src/sv_parser/addrinc.h src/sv_parser/addr.y src/sv_parser/addr-lex.l src/sv_parser/comparator.c src/sv_parser/comparator.h src/sv_parser/headerinc.h src/sv_parser/header.y src/sv_parser/header-lex.l src/sv_parser/parser.h src/sv_parser/sieveinc.h src/sv_parser/sieve.y src/sv_parser/sieve-lex.l \ +- src/sv_regex/regex.h src/sv_regex/regex.c \ + src/sv_util/exception.c src/sv_util/exception.h src/sv_util/md5.c src/sv_util/util.c src/sv_util/util.h + + dist-hook: +diff -wbBur libsieve-2.3.1/src/sv_interface/tree.h libsieve-2.3.1.my/src/sv_interface/tree.h +--- libsieve-2.3.1/src/sv_interface/tree.h 2012-05-14 15:20:06.000000000 +0400 ++++ libsieve-2.3.1.my/src/sv_interface/tree.h 2013-09-02 19:23:48.351408431 +0400 +@@ -29,7 +29,7 @@ + #define TREE_H + + #include "src/sv_parser/comparator.h" +-#include "src/sv_regex/regex.h" ++#include <regex.h> + + + /* abstract syntax tree for sieve */ +diff -wbBur libsieve-2.3.1/src/sv_parser/comparator.c libsieve-2.3.1.my/src/sv_parser/comparator.c +--- libsieve-2.3.1/src/sv_parser/comparator.c 2012-05-14 15:20:06.000000000 +0400 ++++ libsieve-2.3.1.my/src/sv_parser/comparator.c 2013-09-02 19:25:13.368074118 +0400 +@@ -127,7 +127,7 @@ + + static int octet_regex(struct sieve2_context *context, const char *pat, const char *text) + { +- return (!libsieve_regexec((const regex_t *)pat, text, 0, NULL, 0)); ++ return (!regexec((const regex_t *)pat, text, 0, NULL, 0)); + } + + +diff -wbBur libsieve-2.3.1/src/sv_parser/comparator.h libsieve-2.3.1.my/src/sv_parser/comparator.h +--- libsieve-2.3.1/src/sv_parser/comparator.h 2012-05-14 15:20:06.000000000 +0400 ++++ libsieve-2.3.1.my/src/sv_parser/comparator.h 2013-09-02 19:23:27.671408659 +0400 +@@ -27,7 +27,7 @@ + #ifndef COMPARATOR_H + #define COMPARATOR_H + +-#include "src/sv_regex/regex.h" ++#include <regex.h> + #include "src/sv_include/sieve2.h" + + /* compares pat to text; returns 1 if it's true, 0 otherwise +diff -wbBur libsieve-2.3.1/src/sv_parser/sieve.y libsieve-2.3.1.my/src/sv_parser/sieve.y +--- libsieve-2.3.1/src/sv_parser/sieve.y 2012-05-31 13:16:50.000000000 +0400 ++++ libsieve-2.3.1.my/src/sv_parser/sieve.y 2013-09-02 19:25:53.704740324 +0400 +@@ -34,8 +34,7 @@ + #include <string.h> + #include <ctype.h> + +-/* sv_regex */ +-#include "src/sv_regex/regex.h" ++#include <regex.h> + + /* sv_parser */ + #include "comparator.h" +@@ -882,8 +881,8 @@ + char errbuf[100]; + regex_t *reg = (regex_t *) libsieve_malloc(sizeof(regex_t)); + +- if ((ret = libsieve_regcomp(reg, s, cflags)) != 0) { +- (void) libsieve_regerror(ret, reg, errbuf, sizeof(errbuf)); ++ if ((ret = regcomp(reg, s, cflags)) != 0) { ++ (void) regerror(ret, reg, errbuf, sizeof(errbuf)); + libsieve_sieveerror(context, context->sieve_scan, errbuf); + libsieve_free(reg); + return NULL; |