]> git.notmuchmail.org Git - notmuch/blobdiff - configure
Merge tag 'debian/0.12-1'
[notmuch] / configure
index 3df2dc97fb5a903e5d5dd5100dbb88532c4cab16..8cf6f2d703529d70e0cdb10a174e608a17458405 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,8 @@
 #! /bin/sh
 
+# Store original IFS value so it can be changed (and restored) in many places.
+readonly DEFAULT_IFS=$IFS
+
 srcdir=$(dirname "$0")
 
 # For a non-srcdir configure invocation (such as ../configure), create
@@ -45,6 +48,11 @@ WITH_EMACS=1
 WITH_BASH=1
 WITH_ZSH=1
 
+GMIME_24_VERSION='gmime-2.4'
+GMIME_26_VERSION='gmime-2.6 >= 2.6.7'
+
+WITH_GMIME_VERSIONS="$GMIME_26_VERSION;$GMIME_24_VERSION"
+
 usage ()
 {
     cat <<EOF
@@ -170,6 +178,12 @@ for option; do
        fi
     elif [ "${option}" = '--without-zsh-completion' ] ; then
        WITH_ZSH=0
+    elif [ "${option%%=*}" = '--with-gmime-version' ] ; then
+       if [ "${option#*=}" = '2.4' ]; then
+            WITH_GMIME_VERSIONS=$GMIME_24_VERSION
+        elif [ "${option#*=}" = '2.6' ]; then
+            WITH_GMIME_VERSIONS=$GMIME_26_VERSION
+       fi
     elif [ "${option%%=*}" = '--build' ] ; then
        true
     elif [ "${option%%=*}" = '--host' ] ; then
@@ -249,7 +263,8 @@ fi
 # crypto bug. We need 2.6.7 for permissive "From " header handling.
 printf "Checking for GMime development files... "
 have_gmime=0
-for gmimepc in 'gmime-2.6 >= 2.6.7' gmime-2.4; do
+IFS=';'
+for gmimepc in $WITH_GMIME_VERSIONS; do
     if pkg-config --exists $gmimepc; then
        printf "Yes ($gmimepc).\n"
        have_gmime=1
@@ -258,6 +273,7 @@ for gmimepc in 'gmime-2.6 >= 2.6.7' gmime-2.4; do
        break
     fi
 done
+IFS=$DEFAULT_IFS
 if [ "$have_gmime" = "0" ]; then
     printf "No.\n"
     errors=$((errors + 1))
@@ -351,7 +367,6 @@ elif [ $uname = "Linux" ] || [ $uname = "GNU" ] ; then
     #  IFS=$(printf '\n')
     #
     # because the shell's command substitution deletes any trailing newlines.
-    OLD_IFS=$IFS
     IFS="
 "
     for path in $ldconfig_paths; do
@@ -359,7 +374,7 @@ elif [ $uname = "Linux" ] || [ $uname = "GNU" ] ; then
            libdir_in_ldconfig=1
        fi
     done
-    IFS=$OLD_IFS
+    IFS=$DEFAULT_IFS
     if [ "$libdir_in_ldconfig" = '0' ]; then
        printf "No (will set RPATH)\n"
     else
@@ -508,7 +523,7 @@ done
 printf "\n\t${WARN_CFLAGS}\n"
 
 rm -f minimal minimal.c
-       
+
 cat <<EOF
 
 All required packages were found. You may now run the following