[arch-commits] Commit in libsieve/trunk (PKGBUILD crash-fix.patch)

Sergej Pupykin spupykin at nymeria.archlinux.org
Mon Sep 2 17:44:50 UTC 2013


    Date: Monday, September 2, 2013 @ 19:44:50
  Author: spupykin
Revision: 96636

Added:
  libsieve/trunk/crash-fix.patch
Modified:
  libsieve/trunk/PKGBUILD

-----------------+
 PKGBUILD        |   30 +++++++++++++++++++++++++-----
 crash-fix.patch |   23 +++++++++++++++++++++++
 2 files changed, 48 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-09-02 16:09:57 UTC (rev 96635)
+++ PKGBUILD	2013-09-02 17:44:50 UTC (rev 96636)
@@ -3,7 +3,7 @@
 
 pkgname=libsieve
 pkgver=2.3.1
-pkgrel=2
+pkgrel=3
 pkgdesc="sieve interpretator lib"
 arch=(i686 x86_64)
 url="http://libsieve.sourceforge.net/"
@@ -10,14 +10,19 @@
 license=('GPL')
 options=('!libtool')
 source=("https://github.com/downloads/sodabrew/libsieve/libsieve-$pkgver.tar.gz"
-	"glibc-regex.patch")
+	"glibc-regex.patch"
+	"crash-fix.patch")
 md5sums=('bb48eecf877cc7fdb2b0dfe757b48d7a'
-         '0d98d9e8f0583857616b2ba98f1833fa')
+         '0d98d9e8f0583857616b2ba98f1833fa'
+         '47a8b42be9bce4dba695258441572d99')
 
 prepare() {
   cd "$srcdir/$pkgname-$pkgver"
   rm -rf src/sv_regex
+  rm -f src/sv_parser/{addr,header,sieve}.{c,h}
+  rm -f src/sv_parser/{addr,header,sieve}-lex.{c,h}
   patch -p1 <$srcdir/glibc-regex.patch
+  patch -p1 <$srcdir/crash-fix.patch
 }
 
 build() {
@@ -25,7 +30,10 @@
   aclocal
   automake
   autoconf
+#  export CFLAGS="-g -O2"
+#  export LDFLAGS="-g -O2"
   ./configure --prefix=/usr
+  (cd src/sv_parser && for i in `ls -1 *.l | sed 's|\.l||'`; do flex --header-file=$i.h -o $i.c $i.l; done)
   make
 }
 
@@ -33,8 +41,20 @@
   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?
+      if [ "$script" == "script22.sv" ]; then
+        # script22.sv: syntax errors check
+        msg "checking !$script $msg"
+        ./example $script $msg && false || true
+      else
+        if [ "$script" == "script23.sv" ]; then
+          # script23.sv: enotify looks unsupported or I don't know how to use it - skip it
+          msg "skipping $script $msg"
+          true
+        else
+          msg "checking $script $msg"
+          ./example $script $msg
+        fi
+      fi
     done
   done
 }

Added: crash-fix.patch
===================================================================
--- crash-fix.patch	                        (rev 0)
+++ crash-fix.patch	2013-09-02 17:44:50 UTC (rev 96636)
@@ -0,0 +1,23 @@
+diff -wbBur libsieve-2.3.1/src/sv_parser/header.y libsieve-2.3.1.q/src/sv_parser/header.y
+--- libsieve-2.3.1/src/sv_parser/header.y	2012-05-31 13:16:50.000000000 +0400
++++ libsieve-2.3.1.q/src/sv_parser/header.y	2013-09-02 20:21:26.000000000 +0400
+@@ -70,7 +70,7 @@
+                 }
+         | body WRAP             {
+                 TRACE_DEBUG( "body: body WRAP: %s %s", $1, $2 );
+-                $$ = libsieve_strbuf(context->strbuf, libsieve_strconcat( $1, $2, NULL ), strlen($1)+strlen($2), FREEME);
++                $$ = libsieve_strbuf(context->strbuf, libsieve_strconcat( $1 ? $1 : "", $2, NULL ), strlen($1 ? $1 : "")+strlen($2), FREEME);
+                 };
+ 
+ %%
+diff -wbBur libsieve-2.3.1/src/sv_parser/addr.y libsieve-2.3.1.q/src/sv_parser/addr.y
+--- libsieve-2.3.1/src/sv_parser/addr.y	2012-05-31 13:16:50.000000000 +0400
++++ libsieve-2.3.1.q/src/sv_parser/addr.y	2013-09-02 21:42:15.267979609 +0400
+@@ -38,6 +38,7 @@
+ 
+ /* sv_util */
+ #include "src/sv_util/util.h"
++#include "src/sv_interface/context2.h"
+ 
+ /* sv_parser */
+ #include "addr.h"




More information about the arch-commits mailing list