commit f6f8694abcb7b1df1080ee8d0d08428fc83390f8 Author: Jan Palus <at...@pld-linux.org> Date: Fri Sep 12 20:22:21 2014 +0200
- up to 1.1.1 - drop recursive_imap_ubuntu.patch - looks like it already wroks fine from 1.1.0 - run autotools - dropped converting ChangeLog to utf8 (not sure what's the rationale behind this) isync.spec | 22 ++++----- recursive_imap_ubuntu.patch | 114 -------------------------------------------- 2 files changed, 9 insertions(+), 127 deletions(-) --- diff --git a/isync.spec b/isync.spec index 16b71ff..f9dd80b 100644 --- a/isync.spec +++ b/isync.spec @@ -2,16 +2,16 @@ # - new name will be probably mbsync, but project name still stays isync Summary: Tool to synchronize IMAP4 and Maildir mailboxes Name: isync -Version: 1.0.6 +Version: 1.1.1 Release: 1 License: GPL v2+ Group: Applications/Networking URL: http://isync.sourceforge.net/ Source0: http://downloads.sourceforge.net/isync/%{name}-%{version}.tar.gz -# Source0-md5: 18d2e3acb2fe6cae7233f7b5f6cc3292 -Patch0: recursive_imap_ubuntu.patch -BuildRequires: db-devel -BuildRequires: iconv +# Source0-md5: 3d5f8746dc039c4098c28d8002d2ccbd +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: db-devel >= 4.2 BuildRequires: openssl-devel BuildRequires: pkgconfig BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -24,16 +24,12 @@ is suitable for use in IMAP-disconnected mode. %prep %setup -q -%patch0 -p1 - -# Convert to utf-8 -for file in ChangeLog; do - mv $file timestamp - iconv -f ISO-8859-1 -t UTF-8 -o $file timestamp - touch -r timestamp $file -done %build +%{__aclocal} +%{__autoconf} +%{__autoheader} +%{__automake} %configure %{__make} diff --git a/recursive_imap_ubuntu.patch b/recursive_imap_ubuntu.patch deleted file mode 100644 index db12069..0000000 --- a/recursive_imap_ubuntu.patch +++ /dev/null @@ -1,114 +0,0 @@ -diff -rupN ../isync-1.0.4_original/./src/drv_imap.c ./src/drv_imap.c ---- ../isync-1.0.4_original/./src/drv_imap.c 2007-09-22 01:44:12.000000000 -0700 -+++ ./src/drv_imap.c 2009-04-22 15:28:58.000000000 -0700 -@@ -1678,7 +1678,7 @@ imap_list( store_t *gctx, string_list_t - int ret; - - imap->boxes = 0; -- if ((ret = imap_exec_b( ctx, 0, "LIST \"\" \"%s%%\"", ctx->prefix )) != DRV_OK) -+ if ((ret = imap_exec_b( ctx, 0, "LIST \"\" \"%s*\"", ctx->prefix )) != DRV_OK) - return ret; - *retb = imap->boxes; - return DRV_OK; -diff -rupN ../isync-1.0.4_original/./src/drv_maildir.c ./src/drv_maildir.c ---- ../isync-1.0.4_original/./src/drv_maildir.c 2008-02-23 01:02:21.000000000 -0800 -+++ ./src/drv_maildir.c 2009-04-22 15:34:05.000000000 -0700 -@@ -24,6 +24,7 @@ - - #include "isync.h" - -+#include <assert.h> - #include <limits.h> - #include <stdlib.h> - #include <string.h> -@@ -46,6 +47,56 @@ - #include <db.h> - #endif /* USE_DB */ - -+static void encode_maildir_box(const char* in, char* out, size_t size) -+{ -+ const char* p; -+ char c; -+ size_t out_chars; -+ -+ for (p = in, out_chars = 0; (c = *p); ++p, ++out, ++out_chars) { -+ assert(out_chars < size); -+ if (c == '/') { -+ assert(out_chars < size - 1); -+ *(out++) = '~'; -+ *out = '-'; -+ ++out_chars; -+ } -+ else if (c == '~') { -+ assert(out_chars < size - 1); -+ *(out++) = '~'; -+ *out = '~'; -+ ++out_chars; -+ } -+ else { -+ *out = c; -+ } -+ } -+ assert(out_chars < size); -+ *out = 0; -+} -+ -+static void decode_maildir_box(const char* in, char* out, size_t size) -+{ -+ const char* p; -+ char c; -+ size_t out_chars; -+ -+ for (p = in, out_chars = 0; (c = *p); ++p, ++out, ++out_chars) { -+ assert(out_chars < size); -+ if (c == '~') { -+ assert(out_chars < size - 1); -+ c = *(++p); -+ *out = (c == '-' ? '/' : '~'); -+ ++out_chars; -+ } -+ else { -+ *out = c; -+ } -+ } -+ assert(out_chars < size); -+ *out = 0; -+} -+ - typedef struct maildir_store_conf { - store_conf_t gen; - char *inbox; -@@ -164,14 +215,17 @@ maildir_list( store_t *gctx, string_list - const char *inbox = ((maildir_store_conf_t *)gctx->conf)->inbox; - int bl; - struct stat st; -- char buf[PATH_MAX]; -+ char buf[PATH_MAX], box[PATH_MAX]; - - if (*de->d_name == '.') - continue; - bl = nfsnprintf( buf, sizeof(buf), "%s%s/cur", gctx->conf->path, de->d_name ); - if (stat( buf, &st ) || !S_ISDIR(st.st_mode)) - continue; -- add_string_list( retb, !memcmp( buf, inbox, bl - 4 ) && !inbox[bl - 4] ? "INBOX" : de->d_name ); -+ -+ decode_maildir_box(de->d_name, box, PATH_MAX); -+ add_string_list( retb, -+ !memcmp( buf, inbox, bl - 4 ) && !inbox[bl - 4] ? "INBOX" : box ); - } - closedir (dir); - -@@ -717,8 +771,11 @@ maildir_prepare( store_t *gctx, int opts - #endif /* USE_DB */ - if (!strcmp( gctx->name, "INBOX" )) - gctx->path = nfstrdup( ((maildir_store_conf_t *)gctx->conf)->inbox ); -- else -- nfasprintf( &gctx->path, "%s%s", gctx->conf->path, gctx->name ); -+ else { -+ char box[_POSIX_PATH_MAX]; -+ encode_maildir_box(gctx->name, box, _POSIX_PATH_MAX); -+ nfasprintf( &gctx->path, "%s%s", gctx->conf->path, box ); -+ } - if (opts & OPEN_SETFLAGS) - opts |= OPEN_OLD; - if (opts & OPEN_EXPUNGE) ================================================================ ---- gitweb: http://git.pld-linux.org/gitweb.cgi/packages/isync.git/commitdiff/f6f8694abcb7b1df1080ee8d0d08428fc83390f8 _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit