diff options
author | Sascha Schumann <sas@php.net> | 2000-02-29 13:12:48 +0000 |
---|---|---|
committer | Sascha Schumann <sas@php.net> | 2000-02-29 13:12:48 +0000 |
commit | a05db57374df2956c68b0a540d6884bd82ca9cbf (patch) | |
tree | 1d13458c2af02ac4603a878279572bd94874ab1f /ext/imap/config.m4 | |
parent | c5977f650317d903f12c4abdb4fcec013787182c (diff) | |
download | php-git-a05db57374df2956c68b0a540d6884bd82ca9cbf.tar.gz |
Rewrite IMAP checks. This should solve the problems people had with
shared imap libs
Diffstat (limited to 'ext/imap/config.m4')
-rw-r--r-- | ext/imap/config.m4 | 100 |
1 files changed, 45 insertions, 55 deletions
diff --git a/ext/imap/config.m4 b/ext/imap/config.m4 index 857ffdf4da..3ac7ece7ca 100644 --- a/ext/imap/config.m4 +++ b/ext/imap/config.m4 @@ -1,63 +1,53 @@ dnl $Id$ +RESULT=no AC_MSG_CHECKING(for IMAP support) AC_ARG_WITH(imap, [ --with-imap[=DIR] Include IMAP support. DIR is the IMAP include and c-client.a directory.], [ - if test "$withval" = "yes"; then - if test -f /usr/local/include/mail.h; then - withval=/usr/local - elif test -f /usr/include/mail.h; then - withval=/usr - elif test -f /usr/include/imap/mail.h; then - withval=/usr - elif test -f /usr/include/c-client/mail.h; then - withval=/usr - fi - fi - if test "$withval" != "no" && test "$withval" != "yes"; then - IMAP_DIR=$withval - if test -f $IMAP_DIR/include/imap/mail.h; then - IMAP_INC_DIR=$IMAP_DIR/include/imap - elif test -f $IMAP_DIR/include/c-client/mail.h; then - IMAP_INC_DIR=$IMAP_DIR/include/c-client - else - IMAP_INC_DIR=$withval/include - fi - if test ! -f $IMAP_INC_DIR/mail.h; then - AC_MSG_ERROR(could not find mail.h in $IMAP_INC_DIR !) - fi - if test ! -f $IMAP_INC_DIR/rfc822.h; then - AC_MSG_ERROR(could not find rfc822.h in $IMAP_INC_DIR !) - fi - if test ! -f $IMAP_INC_DIR/linkage.h; then - AC_MSG_ERROR(could not find linkage.h in $IMAP_INC_DIR !) - fi - if test -f $IMAP_DIR/lib/libimap.a; then - IMAP_LIBDIR="$IMAP_DIR/lib" - IMAP_LIB="imap" - elif test ! -f $IMAP_DIR/lib/libc-client.a; then - if test ! -f $IMAP_DIR/lib/libc-client4.so; then - AC_MSG_ERROR(You need to copy or link $IMAP_DIR/lib/c-client.a to $IMAP_DIR/lib/libc-client.a) - else - IMAP_LIBDIR="$IMAP_DIR/lib" - IMAP_LIB="c-client4" - fi - else - IMAP_LIBDIR="$IMAP_DIR/lib" - IMAP_LIB="c-client" - fi - AC_ADD_LIBRARY_WITH_PATH($IMAP_LIB, $IMAP_LIBDIR) - AC_ADD_INCLUDE($IMAP_INC_DIR) - AC_DEFINE(HAVE_IMAP,1,[ ]) - AC_MSG_RESULT(yes) - PHP_EXTENSION(imap) - else - AC_MSG_ERROR(could not find imap library!) - fi -],[ - AC_MSG_RESULT(no) -]) - + if test "$withval" != "no"; then + for i in /usr/local /usr $withval; do + if test -f $i/rfc822.h; then + IMAP_DIR=$i + IMAP_INC_DIR=$i + elif test -f $i/imap/rfc822.h; then + IMAP_DIR=$i + IMAP_INC_DIR=$i/imap + elif test -f $i/c-client/rfc822.h; then + IMAP_DIR=$i + IMAP_INC_DIR=$i/c-client + fi + done + + AC_EXPAND_PATH($IMAP_DIR, IMAP_DIR) + + if test -z "$IMAP_DIR"; then + AC_MSG_ERROR(Cannot find rfc822.h. Please check your IMAP installation) + fi + + for lib in imap c-client c-client4; do + IMAP_LIB=$lib + if eval test -r "$IMAP_DIR/lib/lib$lib*"; then + IMAP_LIB_DIR=$IMAP_DIR/lib + break + fi + if eval test -r "$IMAP_DIR/c-client/lib$lib*"; then + IMAP_LIB_DIR=$IMAP_DIR/c-client + break 2 + fi + done + if test -z "$IMAP_LIB_DIR"; then + AC_MSG_ERROR(Cannot find imap library. Please check your IMAP installation) + fi + + AC_ADD_INCLUDE($IMAP_INC_DIR) + AC_ADD_LIBPATH($IMAP_LIB_DIR) + AC_ADD_LIBRARY_DEFER($IMAP_LIB) + + AC_DEFINE(HAVE_IMAP,1,[ ]) + RESULT=yes + fi +]) +AC_MSG_RESULT($RESULT) |