build: drop support for gmime-2.6
authorDavid Bremner <david@tethera.net>
Thu, 2 May 2019 13:19:33 +0000 (09:19 -0400)
committerDavid Bremner <david@tethera.net>
Fri, 3 May 2019 09:49:49 +0000 (06:49 -0300)
GMime 3.0 is over 2 years old now, and 2.6 has been deprecated in
notmuch for about 1.5 years.

Comments and documentation no longer need to refer to GMime 2.6, so
clean them all up.

Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
INSTALL
configure
debian/control
mime-node.c
notmuch-reply.c
notmuch-show.c

diff --git a/INSTALL b/INSTALL
index 6e6f4799aee7ffc8137c6b76b59ae32894d59df6..f1236e713e11085b626f79c5b22c89719cdd6b6d 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -20,7 +20,7 @@ configure stage.
 
 Dependencies
 ------------
-Notmuch depends on four libraries: Xapian, GMime 2.6,
+Notmuch depends on four libraries: Xapian, GMime 3.0,
 Talloc, and zlib which are each described below:
 
        Xapian
index 5e7e5aa9478e8ee2c844f727dce17dfd3b3d1a64..e6f33575350ed23a870b0501e3ad872c16e59634 100755 (executable)
--- a/configure
+++ b/configure
@@ -489,30 +489,16 @@ EOF
     rm -rf test.db _default_backend _default_backend.cc
 fi
 
-# we need to have a version >= 2.6.5 to avoid a crypto bug. We need
-# 2.6.7 for permissive "From " header handling.
-GMIME_MINVER=2.6.7
-GMIME3_MINVER=3.0.3
+GMIME_MINVER=3.0.3
 
 printf "Checking for GMime development files... "
-if pkg-config --exists "gmime-3.0 > $GMIME3_MINVER"; then
-    printf "Yes (3.0).\n"
+if pkg-config --exists "gmime-3.0 > $GMIME_MINVER"; then
+    printf "Yes.\n"
     have_gmime=1
     gmime_cflags=$(pkg-config --cflags gmime-3.0)
     gmime_ldflags=$(pkg-config --libs gmime-3.0)
     gmime_major=3
     have_gmime_session_keys=1
-elif pkg-config --exists "gmime-2.6 >= $GMIME_MINVER"; then
-    printf "Yes (2.6).\n"
-    have_gmime=1
-    gmime_cflags=$(pkg-config --cflags gmime-2.6)
-    gmime_ldflags=$(pkg-config --libs gmime-2.6)
-    gmime_major=2
-    if pkg-config --exists "gmime-2.6 >= 2.6.21"; then
-        have_gmime_session_keys=1
-    else
-        have_gmime_session_keys=0
-    fi
 else
     have_gmime=0
     have_gmime_session_keys=0
@@ -788,7 +774,7 @@ EOF
        echo
     fi
     if [ $have_gmime -eq 0 ]; then
-       echo "  GMime 2.6 library >= $GMIME_MINVER"
+       echo "  GMime library >= $GMIME_MINVER"
        echo "  (including development files such as headers)"
        echo "  https://github.com/jstedfast/gmime/"
        echo
@@ -810,7 +796,7 @@ case a simple command will install everything you need. For example:
 
 On Debian and similar systems:
 
-       sudo apt-get install libxapian-dev libgmime-2.6-dev libtalloc-dev zlib1g-dev
+       sudo apt-get install libxapian-dev libgmime-3.0-dev libtalloc-dev zlib1g-dev
 
 Or on Fedora and similar systems:
 
index 922f6d8c847a9488ce6ca5cfc409f95c33e3950e..31d6471c28b29dee9a19e567e57196493302afee 100644 (file)
@@ -11,7 +11,7 @@ Build-Depends:
  debhelper (>= 11~),
  pkg-config,
  libxapian-dev,
- libgmime-3.0-dev (>= 3.0.3~) | libgmime-2.6-dev (>= 2.6.7~),
+ libgmime-3.0-dev (>= 3.0.3~),
  libtalloc-dev,
  libz-dev,
  python-all (>= 2.6.6-3~),
index 1bfb479ba1705c46d808d0fbd7344f3c0fceb292..053f044a7e72ab79695a5a0ff581be3f49fee5db 100644 (file)
@@ -149,7 +149,7 @@ DONE:
     return status;
 }
 
-/* Signature list destructor (GMime 2.6) */
+/* Signature list destructor */
 static int
 _signature_list_free (GMimeSignatureList **proxy)
 {
@@ -157,7 +157,7 @@ _signature_list_free (GMimeSignatureList **proxy)
     return 0;
 }
 
-/* Set up signature list destructor (GMime 2.6) */
+/* Set up signature list destructor */
 static void
 set_signature_list_destructor (mime_node_t *node)
 {
@@ -168,7 +168,7 @@ set_signature_list_destructor (mime_node_t *node)
     }
 }
 
-/* Verify a signed mime node (GMime 2.6) */
+/* Verify a signed mime node */
 static void
 node_verify (mime_node_t *node, GMimeObject *part,
             g_mime_3_unused(GMimeCryptoContext *cryptoctx))
@@ -189,7 +189,7 @@ node_verify (mime_node_t *node, GMimeObject *part,
        g_error_free (err);
 }
 
-/* Decrypt and optionally verify an encrypted mime node (GMime 2.6) */
+/* Decrypt and optionally verify an encrypted mime node */
 static void
 node_decrypt_and_verify (mime_node_t *node, GMimeObject *part,
                         g_mime_3_unused(GMimeCryptoContext *cryptoctx))
index d87ec06d83f4989a8d6563fe141fd025c656b4c4..cd1b602b10dade4132d932b527e5784af4a3393f 100644 (file)
@@ -325,12 +325,6 @@ add_recipients_from_message (GMimeMessage *reply,
                             GMimeMessage *message,
                             bool reply_all)
 {
-
-    /* There is a memory leak here with gmime-2.6 because get_sender
-     * returns a newly allocated list, while the others return
-     * references to libgmime owned data. This leak will be fixed with
-     * the transition to gmime-3.0.
-     */
     struct {
        InternetAddressList * (*get_header)(GMimeMessage *message);
        GMimeRecipientType recipient_type;
index 88699e90666d4715a302d78426352e36b57f1312..4ed5ff2b7dc54c2f2791a8685ea207b7ae166ba3 100644 (file)
@@ -427,7 +427,7 @@ format_signature_errors (sprinter_t *sp, GMimeSignature *signature)
 }
 #endif
 
-/* Signature status sprinter (GMime 2.6) */
+/* Signature status sprinter */
 static void
 format_part_sigstatus_sprinter (sprinter_t *sp, GMimeSignatureList *siglist)
 {