Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Aug 2005 14:11:36 +0200 (CEST)
From:      Udo Schweigert <udo.schweigert@siemens.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/84907: maintainer-update of mail/mutt-devel
Message-ID:  <200508141211.j7ECBaGD050953@alaska.cert.siemens.com>
Resent-Message-ID: <200508141220.j7ECKPAH039559@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         84907
>Category:       ports
>Synopsis:       maintainer-update of mail/mutt-devel
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Aug 14 12:20:25 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Udo Schweigert
>Release:        FreeBSD 5.4-RELEASE-p5 i386
>Organization:
>Environment:

>Description:

Maintainer update of mail/mutt-devel:

	- Update to mutt-1.5.10

	- Update the maildir header cache patch

	- Change the target when extra-patches are applied from pre-configure
	  to post-patch, so users with local patches can apply them after
	  a "make patch" and then already applied extra-patches.

Commiter: new file (cvs add) files/patch-doc-mutt.1

If this is committed PR 84551 can also be closed as that patch is included also here.

>How-To-Repeat:
>Fix:

diff -ru  /usr/ports/mail/mutt-devel/Makefile ./Makefile
--- /usr/ports/mail/mutt-devel/Makefile	Mon Jul  4 04:49:05 2005
+++ ./Makefile	Sun Aug 14 13:18:43 2005
@@ -71,9 +71,6 @@
 # If you want mutt to use the ispell spelling checker define:
 #  WITH_MUTT_ISPELL
 #
-# If you want to use the rethreading functions define:
-#  WITH_MUTT_EDIT_THREADS
-#
 # If you want to use the signature menu define:
 #  WITH_MUTT_SIGNATURE_MENU
 #
@@ -98,8 +95,8 @@
 #
 
 PORTNAME=	mutt-devel
-PORTVERSION=	1.5.9
-PORTREVISION=	3
+PORTVERSION=	1.5.10
+PORTREVISION=	0
 CATEGORIES+=	mail ipv6
 .if defined(WITH_MUTT_NNTP)
 CATEGORIES+=	news
@@ -185,6 +182,7 @@
 .error The WITH_MUTT_SIGNATURE_MENU does not work at the moment
 .endif
 .if defined(WITH_MUTT_SIDEBAR_PATCH)
+.error The WITH_MUTT_SIDEBAR_PATCH does not work at the moment
 .if defined(WITH_MUTT_NNTP)
 .error The WITH_MUTT_SIDEBAR_PATCH and WITH_MUTT_NNTP are not compatible
 .endif
@@ -282,15 +280,15 @@
 LIB_DEPENDS+=	idn:${PORTSDIR}/devel/libidn
 .endif
 .if ! defined(WITHOUT_MUTT_SMIME_OUTLOOK_COMPAT)
-pre-configure::
+post-patch::
 	@${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-smime-outlook
 .endif
 .if defined(WITH_MUTT_MAILDIR_HEADER_CACHE)
-pre-configure::
+post-patch::
 	@${PATCH} ${PATCH_ARGS} -p1 < ${PATCHDIR}/extra-patch-maildir-header-cache
 .endif
 .if defined(WITH_MUTT_MAILDIR_MTIME_PATCH)
-pre-configure::
+post-patch::
 .if defined(WITH_MUTT_NNTP)
 	@${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-maildir-mtime-nntp
 .else
@@ -298,23 +296,18 @@
 .endif
 .endif
 
-.if defined(WITH_MUTT_EDIT_THREADS)
-pre-configure::
-	@${PATCH} ${PATCH_ARGS} -p1 < ${PATCHDIR}/extra-patch-edit-threads
-.endif
-
 .if defined(WITH_MUTT_SIDEBAR_PATCH)
-pre-configure::
+post-patch::
 	@${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-sidebar
 .endif
 
 .if defined(WITH_MUTT_ASPELL)
-pre-configure::
+post-patch::
 	@${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-aspell
 .endif
 
 .if defined(WITH_MUTT_REVERSE_REPLY_PATCH)
-pre-configure::
+post-patch::
 	@${PATCH} ${PATCH_ARGS} < ${PATCHDIR}/extra-patch-reverse_reply
 .endif
 
@@ -375,10 +368,6 @@
 		patch-${VVV_PATCH_VERSION}.vvv.quote.gz:vvv
 SGML_NEEDED=	yes
 .endif
-.if defined(WITH_MUTT_EDIT_THREADS)
-CONFIGURE_ARGS+=	--enable-imap-edit-threads
-SGML_NEEDED=	yes
-.endif
 .if defined(WITH_MUTT_SIGNATURE_MENU)
 PATCHFILES+=	patch-${CD_PATCH_VERSION}.cd.signatures_menu.2.1:cd
 SGML_NEEDED=	yes
@@ -429,19 +418,16 @@
 SCRIPTS_ENV+=	MUTT_QUOTE_PATCH="yes"
 .endif
 .if defined(WITH_MUTT_IMAP_HEADER_CACHE)
-SCRIPTS_ENV+=	MUTT_IMAP_HEADER_CACHE="yes"
 CONFIGURE_ARGS+=	--enable-hcache --without-gdbm --with-bdb
+.else
+CONFIGURE_ARGS+=	--disable-hcache
 .endif
 .if defined(WITH_MUTT_MAILDIR_HEADER_CACHE)
-SCRIPTS_ENV+=	MUTT_MAILDIR_HEADER_CACHE="yes"
-CONFIGURE_ARGS+=	 --disable-inodesort
+CONFIGURE_ARGS+=	 --disable-inodesort --without-qdbm
 .endif
 .if defined(WITH_MUTT_SIDEBAR_PATCH)
 SCRIPTS_ENV+=	MUTT_SIDEBAR_PATCH="yes"
 .endif
-.if defined(WITH_MUTT_EDIT_THREADS)
-SCRIPTS_ENV+=	MUTT_EDIT_THREADS="yes"
-.endif
 .if defined(WITH_MUTT_SIGNATURE_MENU)
 SCRIPTS_ENV+=	MUTT_SIGNATURE_MENU="yes"
 .endif
@@ -453,9 +439,6 @@
 .endif
 .if !defined(WITHOUT_NLS)
 SCRIPTS_ENV+=	MUTT_NLS="yes"
-.endif
-.if defined(WITH_MUTT_IDN)
-SCRIPTS_ENV+=	MUTT_IDN="yes"
 .endif
 .if defined(WITH_MUTT_REVERSE_REPLY_PATCH)
 SCRIPTS_ENV+=	MUTT_REVERSE_REPLY_PATCH="yes"
diff -ru  /usr/ports/mail/mutt-devel/distinfo ./distinfo
--- /usr/ports/mail/mutt-devel/distinfo	Mon Jul  4 04:49:05 2005
+++ ./distinfo	Sun Aug 14 13:04:06 2005
@@ -1,13 +1,13 @@
-MD5 (mutt/mutt-1.5.9i.tar.gz) = c5318eba3404ebd78a15c680fa1b6056
-SIZE (mutt/mutt-1.5.9i.tar.gz) = 3036003
-MD5 (mutt/patch-1.5.9.rr.compressed.gz) = 9d9ef4ec0e970f9fc3de2d5c6219a349
-SIZE (mutt/patch-1.5.9.rr.compressed.gz) = 10260
-MD5 (mutt/patch-1.5.9.vvv.nntp.gz) = f7cf37af82169eefe94c6c42c6f3b9cd
-SIZE (mutt/patch-1.5.9.vvv.nntp.gz) = 91518
-MD5 (mutt/patch-1.5.9.vvv.initials.gz) = 149c52991b23b9ab3d6add27cb27e151
-SIZE (mutt/patch-1.5.9.vvv.initials.gz) = 689
-MD5 (mutt/patch-1.5.9.vvv.quote.gz) = 08329134d8995c05a28dd8258174a668
-SIZE (mutt/patch-1.5.9.vvv.quote.gz) = 1629
+MD5 (mutt/mutt-1.5.10i.tar.gz) = 59400d12c6b5b3d122531000e53d1914
+SIZE (mutt/mutt-1.5.10i.tar.gz) = 3156345
+MD5 (mutt/patch-1.5.10.rr.compressed.gz) = f6cd5bd6c030d5d691d347a6e9d75b6a
+SIZE (mutt/patch-1.5.10.rr.compressed.gz) = 10095
+MD5 (mutt/patch-1.5.10.vvv.nntp.gz) = ac9a4c8bf25a96648bb08cde4ced4c05
+SIZE (mutt/patch-1.5.10.vvv.nntp.gz) = 98153
+MD5 (mutt/patch-1.5.10.vvv.initials.gz) = 91eea7344625830bf4231dc1d56cb799
+SIZE (mutt/patch-1.5.10.vvv.initials.gz) = 682
+MD5 (mutt/patch-1.5.10.vvv.quote.gz) = 7d9b9c2d52318782d81d2ffb95576d48
+SIZE (mutt/patch-1.5.10.vvv.quote.gz) = 1580
 MD5 (mutt/patch-1.5.4.cd.ifdef.1) = a545036cdb55519154d0b35465f52daa
 SIZE (mutt/patch-1.5.4.cd.ifdef.1) = 3545
 MD5 (mutt/p0-patch-1.5.6.dw.mbox-hook.1) = 9e29a6778ab07a4de3442691e4573fea
diff -ru  /usr/ports/mail/mutt-devel/files/extra-patch-maildir-header-cache ./files/extra-patch-maildir-header-cache
--- /usr/ports/mail/mutt-devel/files/extra-patch-maildir-header-cache	Mon Mar 14 12:59:12 2005
+++ ./files/extra-patch-maildir-header-cache	Sun Aug 14 13:18:43 2005
@@ -2,206 +2,255 @@
 --- a/PATCHES
 +++ b/PATCHES
 @@ -0,0 +1 @@
-+mutt-cvs-header-cache.29
-diff -Nru a/init.h b/init.h
---- a/init.h	2005-02-12 22:08:19 +01:00
-+++ b/init.h	2005-02-13 00:51:10 +01:00
-@@ -1032,6 +1032,13 @@
-   ** global header cache for all folders is used. Per default it is unset and so
-   ** no header caching will be used.
-   */
-+  { "maildir_header_cache_verify", DT_BOOL, R_NONE, OPTHCACHEVERIFY, 1 },
-+  /*
-+  ** .pp
-+  ** Check for Maildir unaware programs other than mutt having modified maildir
-+  ** files when the header cache is in use.  This incurs one stat(2) per
-+  ** message every time the folder is opened.
-+  */
-   { "header_cache_pagesize", DT_STR, R_NONE, UL &HeaderCachePageSize, UL "16384" },
-   /*
-   ** .pp
-diff -Nru a/mh.c b/mh.c
---- a/mh.c	2005-02-03 19:01:43 +01:00
-+++ b/mh.c	2005-02-05 12:25:16 +01:00
-@@ -791,6 +791,14 @@
-   return r;
++mutt-cvs-header-cache.30
+--- a/configure.in
++++ b/configure.in
+@@ -804,10 +804,23 @@
+     OLDLIBS="$LIBS"
+ 
+     need_md5="yes"
++
++    ac_prefer_qdbm=yes
++    AC_ARG_WITH(qdbm, AC_HELP_STRING([--without-qdbm], [Don't use qdbm even if it is available]),
++        ac_prefer_qdbm=$withval)
++    if test x$ac_prefer_qdbm != xno; then
++        CPPFLAGS="$OLDCPPFLAGS"
++        LIBS="$OLDLIBS -lqdbm";
++        AC_CACHE_CHECK(for vlopen, ac_cv_vlopen,[
++            ac_cv_vlopen=no
++            AC_TRY_LINK([#include <villa.h>],[vlopen(0,0,0);],[ac_cv_vlopen=yes])
++        ])
++    fi
++
+     ac_prefer_gdbm=yes
+     AC_ARG_WITH(gdbm, AC_HELP_STRING([--without-gdbm], [Don't use gdbm even if it is available]),
+         ac_prefer_gdbm=$withval)
+-    if test x$ac_prefer_gdbm != xno; then
++    if test x$ac_prefer_gdbm != xno -a x$ac_cv_vlopen != xyes; then
+         CPPFLAGS="$OLDCPPFLAGS"
+         LIBS="$OLDLIBS -lgdbm";
+         AC_CACHE_CHECK(for gdbm_open, ac_cv_gdbmopen,[
+@@ -819,7 +832,7 @@
+     ac_bdb_prefix=yes
+     AC_ARG_WITH(bdb, AC_HELP_STRING([--with-bdb[=DIR]], [Use BerkeleyDB4 if gdbm is not available]),
+         ac_bdb_prefix=$withval)
+-    if test x$ac_bdb_prefix != xno -a x$ac_cv_gdbmopen != xyes; then
++    if test x$ac_bdb_prefix != xno -a x$ac_cv_gdbmopen != xyes -a x$ac_cv_vlopen != xyes; then
+         test x$ac_bdb_prefix = xyes && ac_bdb_prefix="$mutt_cv_prefix /opt/csw/bdb4 /opt /usr/local /usr"
+         for d in $ac_bdb_prefix; do
+             bdbpfx="$bdbpfx $d"
+@@ -865,7 +878,11 @@
+         fi
+     fi
+ 
+-    if test x$ac_cv_gdbmopen = xyes; then
++    if test x$ac_cv_vlopen = xyes; then
++        CPPFLAGS="$OLDCPPFLAGS"
++        LIBS="$OLDLIBS -lqdbm";
++        AC_DEFINE(HAVE_QDBM, 1, [QDBM Support])
++    elif test x$ac_cv_gdbmopen = xyes; then
+         CPPFLAGS="$OLDCPPFLAGS"
+         LIBS="$OLDLIBS -lgdbm";
+         AC_DEFINE(HAVE_GDBM, 1, [GDBM Support])
+--- a/hcache.c
++++ b/hcache.c
+@@ -22,7 +22,11 @@
+ #include "config.h"
+ #endif				/* HAVE_CONFIG_H */
+ 
+-#if HAVE_GDBM
++#if HAVE_QDBM
++#include <depot.h>
++#include <cabin.h>
++#include <villa.h>
++#elif HAVE_GDBM
+ #include <gdbm.h>
+ #elif HAVE_DB4
+ #include <db.h>
+@@ -42,7 +46,14 @@
+ #include "lib.h"
+ #include "md5.h"
+ 
+-#if HAVE_GDBM
++#if HAVE_QDBM
++static struct header_cache
++{
++  VILLA *db;
++  char *folder;
++  unsigned int crc;
++} HEADER_CACHE;
++#elif HAVE_GDBM
+ static struct header_cache
+ {
+   GDBM_FILE db;
+@@ -615,7 +626,139 @@
+   return h;
  }
  
-+#if USE_HCACHE
-+static size_t maildir_hcache_keylen (const char *fn)
+-#if HAVE_GDBM
++#if HAVE_QDBM
++void *
++mutt_hcache_open(const char *path, const char *folder)
 +{
-+  const char * p = strrchr (fn, ':');
-+  return p ? (size_t) (p - fn) : mutt_strlen(fn);
-+}
-+#endif
++  struct header_cache *h = safe_calloc(1, sizeof (HEADER_CACHE));
++  int    flags = 0;
++#if 0 /* FIXME */
++  int pagesize = atoi(HeaderCachePageSize) ? atoi(HeaderCachePageSize) : 16384;
++#endif
++  h->db = NULL;
++  h->folder = safe_strdup(folder);
++  h->crc = generate_crc32();
 +
- #ifdef USE_INODESORT
- /*
-  * Merge two maildir lists according to the inode numbers.
-@@ -886,27 +894,67 @@
-  * This function does the second parsing pass for a maildir-style
-  * folder.
-  */
--
- void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md)
- {
-   struct maildir *p;
-   char fn[_POSIX_PATH_MAX];
-   int count;
- 
-+#if USE_HCACHE
-+  void *hc = NULL;
-+  void *data;
-+  struct timeval *when = NULL;
-+  struct stat lastchanged;
-+  int ret;
++  if (!path || path[0] == '\0')
++  {
++    FREE(&h->folder);
++    FREE(&h);
++    return NULL;
++  }
 +
-+  hc = mutt_hcache_open (HeaderCache, ctx->path);
-+#endif
++  path = mutt_hcache_per_folder(path, folder);
 +
-   for (p = md, count = 0; p; p = p->next, count++)
--    if (p && p->h && !p->header_parsed)
--    {
--      if (!ctx->quiet && ReadInc && ((count % ReadInc) == 0 || count == 1))
--	mutt_message (_("Reading %s... %d"), ctx->path, count);
--      snprintf (fn, sizeof (fn), "%s/%s", ctx->path, p->h->path);
--      if (maildir_parse_message (ctx->magic, fn, p->h->old, p->h))
--	p->header_parsed = 1;
--      else
--	mutt_free_header (&p->h);
--    }
--}
++  if (option(OPTHCACHECOMPRESS))
++    flags = VL_OZCOMP;
++
++  h->db = vlopen(path, flags | VL_OWRITER | VL_OCREAT, VL_CMPLEX);
++  if (h->db)
++    return h;
++
++  /* if rw failed try ro */
++  h->db = vlopen(path, flags | VL_OREADER, 0);
++  if (h->db)
++    return h;
++  else
 +  {
-+    if (! (p && p->h && !p->header_parsed))
-+      continue;
- 
-+    if (!ctx->quiet && ReadInc && ((count % ReadInc) == 0 || count == 1))
-+      mutt_message (_("Reading %s... %d"), ctx->path, count);
- 
-+#if USE_HCACHE
-+    data = mutt_hcache_fetch (hc, p->h->path + 3, &maildir_hcache_keylen);
-+    when = (struct timeval *) data;
-+#endif
++    FREE(&h->folder);
++    FREE(&h);
++
++    return NULL;
++  }
++}
 +
-+    snprintf (fn, sizeof (fn), "%s/%s", ctx->path, p->h->path);
++void
++mutt_hcache_close(void *db)
++{
++  struct header_cache *h = db;
++
++  if (!h)
++    return;
++
++  vlclose(h->db);
++  FREE(&h->folder);
++  FREE(&h);
++}
 +
-+#if USE_HCACHE
-+    if (option(OPTHCACHEVERIFY))
-+      ret = stat(fn, &lastchanged);
-+    else {
-+      lastchanged.st_mtime = 0;
-+      ret = 0;
++void *
++mutt_hcache_fetch(void *db, const char *filename,
++		  size_t(*keylen) (const char *fn))
++{
++  struct header_cache *h = db;
++  char path[_POSIX_PATH_MAX];
++  int ksize;
++  char *data = NULL;
++
++  if (!h)
++    return NULL;
++
++  strncpy(path, h->folder, sizeof (path));
++  safe_strcat(path, sizeof (path), filename);
++
++  ksize = strlen(h->folder) + keylen(path + strlen(h->folder));
++
++  data = vlget(h->db, path, ksize, NULL);
++
++  if (! crc32_matches(data, h->crc))
++  {
++    if (data) { 
++      FREE(&data);
 +    }
-+    
-+    if (data != NULL && !ret && lastchanged.st_mtime <= when->tv_sec)
-+    {
-+      p->h = mutt_hcache_restore ((unsigned char *)data, &p->h);
-+      maildir_parse_flags (p->h, fn);
-+    } else
-+#endif
-+    if (maildir_parse_message (ctx->magic, fn, p->h->old, p->h))
-+    {
-+      p->header_parsed = 1;
-+#if USE_HCACHE
-+      mutt_hcache_store (hc, p->h->path + 3, p->h, 0, &maildir_hcache_keylen);
-+#endif
-+    } else
-+      mutt_free_header (&p->h);
-+#if USE_HCACHE
-+    FREE(&data);
-+#endif
++    return NULL;
 +  }
-+#if USE_HCACHE
-+  mutt_hcache_close (hc);
-+#endif
++
++  return data;
 +}
++
++int
++mutt_hcache_store(void *db, const char *filename, HEADER * header,
++		  unsigned long uid_validity,
++		  size_t(*keylen) (const char *fn))
++{
++  struct header_cache *h = db;
++  char path[_POSIX_PATH_MAX];
++  int ret;
++  int ksize, dsize;
++  char *data = NULL;
++
++  if (!h)
++    return -1;
++
++  strncpy(path, h->folder, sizeof (path));
++  safe_strcat(path, sizeof (path), filename);
++
++  ksize = strlen(h->folder) + keylen(path + strlen(h->folder));
++
++  data  = mutt_hcache_dump(db, header, &dsize, uid_validity);
++
++  ret = vlput(h->db, path, ksize, data, dsize, VL_DOVER);
++
++  FREE(&data);
++
++  return ret;
++}
++
++int
++mutt_hcache_delete(void *db, const char *filename,
++		   size_t(*keylen) (const char *fn))
++{
++  struct header_cache *h = db;
++  char path[_POSIX_PATH_MAX];
++  int ksize;
++
++  if (!h)
++    return -1;
++
++  strncpy(path, h->folder, sizeof (path));
++  safe_strcat(path, sizeof (path), filename);
++
++  ksize = strlen(h->folder) + keylen(path + strlen(h->folder));
++
++  return vlout(h->db, path, ksize);
++}
++
++#elif HAVE_GDBM
  
- /* Read a MH/maildir style mailbox.
-  *
-@@ -1403,6 +1451,9 @@
- {
-   char path[_POSIX_PATH_MAX], tmp[_POSIX_PATH_MAX];
-   int i, j;
-+#if USE_HCACHE
-+  void *hc = NULL;
-+#endif /* USE_HCACHE */
- 
-   if (ctx->magic == M_MH)
-     i = mh_check_mailbox (ctx, index_hint);
-@@ -1412,6 +1463,11 @@
-   if (i != 0)
-     return i;
- 
-+#if USE_HCACHE
-+  if (ctx->magic == M_MAILDIR)
-+    hc = mutt_hcache_open(HeaderCache, ctx->path);
-+#endif /* USE_HCACHE */
-+
-   for (i = 0; i < ctx->msgcount; i++)
-   {
-     if (ctx->hdrs[i]->deleted
-@@ -1420,7 +1476,13 @@
-       snprintf (path, sizeof (path), "%s/%s", ctx->path, ctx->hdrs[i]->path);
-       if (ctx->magic == M_MAILDIR
- 	  || (option (OPTMHPURGE) && ctx->magic == M_MH))
-+      {
-+#if USE_HCACHE
-+        if (ctx->magic == M_MAILDIR)
-+          mutt_hcache_delete (hc, ctx->hdrs[i]->path + 3, &maildir_hcache_keylen);
-+#endif /* USE_HCACHE */
- 	unlink (path);
-+      }
-       else if (ctx->magic == M_MH)
-       {
- 	/* MH just moves files out of the way when you delete them */
-@@ -1442,16 +1504,21 @@
-       if (ctx->magic == M_MAILDIR)
-       {
- 	if (maildir_sync_message (ctx, i) == -1)
--	  return -1;
-+	  goto err;
-       }
-       else
-       {
- 	if (mh_sync_message (ctx, i) == -1)
--	  return -1;
-+	  goto err;
-       }
-     }
-   }
- 
-+#if USE_HCACHE
-+  if (ctx->magic == M_MAILDIR)
-+    mutt_hcache_close (hc);
-+#endif /* USE_HCACHE */
-+
-   if (ctx->magic == M_MH)
-     mh_update_sequences (ctx);
- 
-@@ -1472,6 +1539,13 @@
-   }
- 
-   return 0;
-+
-+err:
-+#if USE_HCACHE
-+  if (ctx->magic == M_MAILDIR)
-+    mutt_hcache_close (hc);
-+#endif /* USE_HCACHE */
-+  return -1;
- }
- 
- static char *maildir_canon_filename (char *dest, const char *src, size_t l)
-diff -Nru a/mutt.h b/mutt.h
---- a/mutt.h	2005-02-12 21:19:25 +01:00
-+++ b/mutt.h	2005-02-13 00:51:10 +01:00
-@@ -351,6 +351,9 @@
-   OPTFORCENAME,
-   OPTFORWDECODE,
+ void *
+ mutt_hcache_open(const char *path, const char *folder)
+--- a/init.h
++++ b/init.h
+@@ -1079,6 +1079,15 @@
+   ** files when the header cache is in use.  This incurs one stat(2) per
+   ** message every time the folder is opened.
+   */
++#if HAVE_QDBM
++  { "header_cache_compress", DT_BOOL, R_NONE, OPTHCACHECOMPRESS, 0 },
++  /*
++  ** .pp
++  ** If enabled the header cache will be compressed. So only one fifth of the usual
++  ** diskspace is used, but the uncompression can result in a slower open of the
++  ** cached folder.
++  */
++#endif /* HAVE_QDBM */
+   { "header_cache_pagesize", DT_STR, R_NONE, UL &HeaderCachePageSize, UL "16384" },
+   /*
+   ** .pp
+--- a/mutt.h
++++ b/mutt.h
+@@ -353,6 +353,9 @@
    OPTFORWQUOTE,
-+#if USE_HCACHE
-+  OPTHCACHEVERIFY,
-+#endif
+ #if USE_HCACHE
+   OPTHCACHEVERIFY,
++#if HAVE_QDBM
++  OPTHCACHECOMPRESS,
++#endif /* HAVE_QDBM */
+ #endif
    OPTHDRS,
    OPTHEADER,
-   OPTHELP,
diff -ru  /usr/ports/mail/mutt-devel/files/extra-patch-nodoc-contrib ./files/extra-patch-nodoc-contrib
--- /usr/ports/mail/mutt-devel/files/extra-patch-nodoc-contrib	Sat Feb 12 22:11:47 2005
+++ ./files/extra-patch-nodoc-contrib	Sun Aug 14 13:01:54 2005
@@ -9,20 +9,20 @@
  
  bin_SCRIPTS = muttbug flea @SMIMEAUX_TARGET@
  
---- doc/Makefile.in.orig	Fri Feb  4 13:46:04 2005
-+++ doc/Makefile.in	Fri Feb  4 13:47:49 2005
-@@ -92,14 +92,6 @@
+--- doc/Makefile.in.orig	Sun Aug 14 11:35:31 2005
++++ doc/Makefile.in	Sun Aug 14 11:37:23 2005
+@@ -93,14 +93,6 @@
  	./instdoc muttrc.man $(DESTDIR)$(mandir)/man5/muttrc.5
  	./instdoc $(srcdir)/mbox.man $(DESTDIR)$(mandir)/man5/mbox.5
  	./instdoc $(srcdir)/mmdf.man $(DESTDIR)$(mandir)/man5/mmdf.5
 -	$(top_srcdir)/mkinstalldirs $(DESTDIR)$(docdir)
--	for f in $(srcdir_DOCFILES) ; do \
--		$(INSTALL) -m 644 $(srcdir)/$$f $(DESTDIR)$(docdir) ; \
--	done
 -	for f in $(topsrcdir_DOCFILES) ; do \
 -		$(INSTALL) -m 644 $(top_srcdir)/$$f $(DESTDIR)$(docdir) ; \
 -	done
+-	for f in $(srcdir_DOCFILES) ; do \
+-		$(INSTALL) -m 644 $(srcdir)/$$f $(DESTDIR)$(docdir) ; \
+-	done
 -	$(INSTALL) -m 644 manual.txt $(DESTDIR)$(docdir) || true
  
  uninstall:
- 	-rm -f $(DESTDIR)$(mandir)/man1/mutt.1
+ 	for f in mutt.1 mutt_dotlock.1 flea.1 muttbug.1 ; do \
diff -ru  /usr/ports/mail/mutt-devel/files/extra-patch-sgmlformat ./files/extra-patch-sgmlformat
--- /usr/ports/mail/mutt-devel/files/extra-patch-sgmlformat	Fri Aug 30 14:32:58 2002
+++ ./files/extra-patch-sgmlformat	Sun Aug 14 13:01:54 2005
@@ -5,7 +5,7 @@
  	README NEWS TODO README.SECURITY README.SSL 
  
 -all:
-+all: muttrc.man try-html try-txt try-latin1 try-ps
++all: mutt.1 muttrc.man try-html try-txt try-latin1 try-ps
  
  try-html: ../makedoc
  	rm -f *.html && $(MAKE) manual.html || cp $(srcdir)/manual*.html ./
diff -ru  /usr/ports/mail/mutt-devel/files/patch-02 ./files/patch-02
--- /usr/ports/mail/mutt-devel/files/patch-02	Mon Mar 14 12:59:12 2005
+++ ./files/patch-02	Sun Aug 14 13:01:54 2005
@@ -1,34 +1,34 @@
---- doc/Makefile.in.orig	Tue Feb 15 20:28:24 2005
-+++ doc/Makefile.in	Mon Mar 14 08:08:25 2005
-@@ -63,13 +63,23 @@
+--- doc/Makefile.in.orig	Thu Aug 11 21:37:02 2005
++++ doc/Makefile.in	Sun Aug 14 11:09:10 2005
+@@ -64,13 +64,23 @@
  	ChangeLog.old					\
  	README NEWS TODO README.SECURITY README.SSL 
  
--all: muttrc.man try-html try-txt
+-all: mutt.1 muttrc.man try-html try-txt
 +all:
  
- try-html: ../makedoc
+ try-html: ../makedoc$(EXEEXT)
 -	test -f manual.html || $(MAKE) manual.html || cp $(srcdir)/manual*.html ./
 +	rm -f *.html && $(MAKE) manual.html || cp $(srcdir)/manual*.html ./
 +	touch $@
  
- try-txt: ../makedoc
+ try-txt: ../makedoc$(EXEEXT)
 -	test -f manual.txt || $(MAKE) manual.txt || cp $(srcdir)/manual.txt ./
 +	$(MAKE) manual.txt || cp $(srcdir)/manual.txt ./
 +	touch $@
 +
-+try-latin1: 
++try-latin1: ../makedoc$(EXEEXT)
 +	$(MAKE) manual.latin1 || cp $(srcdir)/manual.latin1 ./
 +	touch $@
 +
-+try-ps: 
-+	$(MAKE) manual.ps || cp $(srcdir)/manual.ps ./
++try-ps: ../makedoc$(EXEEXT)
++	$(MAKE) manual.ps || cp $(srcdir)/manual.latin1 ./
 +	touch $@
  
  install: all instdoc
  	$(top_srcdir)/mkinstalldirs $(DESTDIR)$(mandir)/man1
-@@ -90,10 +100,6 @@
- 		$(INSTALL) -m 644 $(top_srcdir)/$$f $(DESTDIR)$(docdir) ; \
+@@ -91,10 +101,6 @@
+ 		$(INSTALL) -m 644 $(srcdir)/$$f $(DESTDIR)$(docdir) ; \
  	done
  	$(INSTALL) -m 644 manual.txt $(DESTDIR)$(docdir) || true
 -	$(top_srcdir)/mkinstalldirs $(DESTDIR)$(docdir)/html
@@ -37,12 +37,12 @@
 -	done
  
  uninstall:
- 	-rm -f $(DESTDIR)$(mandir)/man1/mutt.1
-@@ -103,17 +109,20 @@
+ 	for f in mutt.1 mutt_dotlock.1 flea.1 muttbug.1 ; do \
+@@ -114,17 +120,20 @@
  
  check:
  manual.txt: manual.sgml
--	if linuxdoc -B txt --pass='-P -c' manual ; then \
+-	if linuxdoc -B txt -c latin --pass='-P -c' manual ; then \
 -		uniq < manual.txt | expand > _manual.txt ; \
 -		rm manual.txt ; \
 +	if sgmlfmt -f ascii manual; then \
diff -ru  /usr/ports/mail/mutt-devel/files/patch-doc-mutt.1 ./files/patch-doc-mutt.1
--- /usr/ports/mail/mutt-devel/files/patch-doc-mutt.1	Thu Jan  1 01:00:00 1970
+++ ./files/patch-doc-mutt.1	Sun Aug 14 13:01:18 2005
@@ -0,0 +1,11 @@
+--- doc/Makefile.in.orig	Sun Aug 14 11:27:21 2005
++++ doc/Makefile.in	Sun Aug 14 11:28:38 2005
+@@ -179,7 +179,7 @@
+ 	-e 's,@docdir\@,$(docdir),g'
+ 
+ mutt.1: $(srcdir)/mutt.man
+-	$(EDIT) $< > $@
++	$(EDIT) $(srcdir)/mutt.man > $@
+ 
+ muttrc.man stamp-doc-man: ../makedoc$(EXEEXT) $(top_srcdir)/init.h muttrc.man.head muttrc.man.tail
+ 	$(MAKEDOC_CPP) $(top_srcdir)/init.h | ../makedoc -m | 	    \
diff -ru  /usr/ports/mail/mutt-devel/files/patch-doc-mutt.man ./files/patch-doc-mutt.man
--- /usr/ports/mail/mutt-devel/files/patch-doc-mutt.man	Sun Oct 26 14:14:24 2003
+++ ./files/patch-doc-mutt.man	Sun Aug 14 13:01:54 2005
@@ -1,17 +1,3 @@
---- doc/mutt.man.orig	Wed Nov 13 11:07:05 2002
-+++ doc/mutt.man	Wed Sep 24 15:36:17 2003
-@@ -148,9 +148,9 @@
- User's personal mapping between MIME types and file extensions.
- .IP "/etc/mime.types"
- System mapping between MIME types and file extensions.
--.IP "/usr/local/bin/mutt_dotlock"
-+.IP "${PREFIX}/bin/mutt_dotlock"
- The privileged dotlocking program.
--.IP "/usr/local/doc/mutt/manual.txt"
-+.IP "${DOCSDIR}/manual.txt"
- The Mutt manual.
- .SH BUGS
- .PP
 --- doc/muttrc.man.orig	Wed Mar 19 22:55:03 2003
 +++ doc/muttrc.man	Sun Oct 26 11:16:05 2003
 @@ -1031,7 +1031,7 @@
diff -ru  /usr/ports/mail/mutt-devel/scripts/generate-plist ./scripts/generate-plist
--- /usr/ports/mail/mutt-devel/scripts/generate-plist	Mon Jul  4 04:49:05 2005
+++ ./scripts/generate-plist	Sun Aug 14 13:01:54 2005
@@ -126,7 +126,7 @@
   fi
 
   if [ "$MUTT_HTML" = "yes" ]; then
-    html=383
+    html=395
     if [ "$MUTT_COMPRESSED_FOLDERS" = "yes" ]; then
       html=$(($html + 5))
     fi
@@ -136,15 +136,6 @@
     if [ "$MUTT_QUOTE_PATCH" = "yes" ]; then
       html=$(($html + 2))
     fi
-    if [ "$MUTT_EDIT_THREADS" = "yes" ]; then
-      html=$(($html + 3))
-    fi
-    if [ "$MUTT_IMAP_HEADER_CACHE" = "yes" ]; then
-      html=$(($html + 2))
-    fi
-    if [ "$MUTT_MAILDIR_HEADER_CACHE" = "yes" ]; then
-      html=$(($html + 1))
-    fi
     if [ "$MUTT_SIDEBAR_PATCH" = "yes" ]; then
       html=$(($html + 2))
     fi
@@ -152,9 +143,6 @@
       html=$(($html + 1))
     fi
     if [ "$MUTT_IFDEF_PATCH" = "yes" ]; then
-      html=$(($html + 1))
-    fi
-    if [ "$MUTT_IDN" = "yes" ]; then
       html=$(($html + 1))
     fi
     if [ "$MUTT_REVERSE_REPLY_PATCH" = "yes" ]; then
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508141211.j7ECBaGD050953>