aboutsummaryrefslogblamecommitdiffstats
path: root/configure.in
blob: 3304686ff01c695f209190e8caa803069d5beadc (plain) (tree)
1
2
3
4
5
6
7
8
9

                                                                
                          
 

                         
                          
                                                         
                 



                                    

                         




                                      
 







                                                                                                       





















                                                                                                          
  
                                                 
                                                                     



          


                              


            

            




                                                       




                
 





                             
                          
            
                      
              
                                       
 
                                                                                                       
                

                                           
 
   
                  
   


                                                                             
                                    






                                                                                                                                                   
                

                                                                                         
 











                                                                        







                                                          
                                








                                                                                  
                                         




                                                                    
                                       
 
                                                      






















                                                                            


                                                      
                                





















                                                                                           
    





                                                         


                                                    
                                                         

                                                      
                          
 
                                                      

                                                      

                                                                                 



                                                                             
                                                   
                                                                             
    
  

 
                                               












                                                                             

                            
                    


                                                              
    
                   
                      
  
                                                      

                                                      




                                                                                 
                              
                    
    
                   



                                                      

                                                      
 


                                                                             
 
                   
 


                                                                          
 



                                                                            
 

                                                        


                        
                         
 
                                                      






                                                                                                                 
             
    
                











                                                                                                                              
                


    
 
 


                   



                                                                             
                                 

                                                                     


                                       
 
 
 


                             

                                    


                     






                                                                                                              
 


                            

                                                                                                                     


                             

                                                                                                                                      


                                  



                                                


                                                
                                                   

                        
                         
 



                                              
 

                                                                                                            


                                 




                                                              




                                                                                                                                           


                                  


                                                                                                           
                 

                                                                              
                                            
                
    
               
  
 




                                                                                   
           
                                    
                               



                                                             
         








                                                                                                                    
                                    
                            


                                                                    


                                       
  
 
           
                                      
                               
                                                           
         


















                                                                                                            
                         



                                                                                               
          


                                                  
                            













                                                                                                     


                                       
  
 





                      
                                                                                   
                                                 
     

                                                                              

                                                                                   


                                                                                                   

                                               

                                 
                                                                          
                         
        



                                                                    
                                                                                         


                                                   
    
                                                   
                         
  
 
                                                                                       
                                  




                                                                                
                                                      


                                                                   






                                                                      






                                                                                  

                              



                                                    

  
                                                                                                
                                                                               

                                                                               

                                 

                                                                        






                                                                               

                                                                          
        
                                                                                      


                                                 

                               





                                                  
                                                                                        
                                 
            
                                                                              

                               
                                                      


                                                                 
                                                                                        





                                                                                 
                                                       
            
                             

                               




                                                  
 




                      



                                        
































                                                                                                   






                                                                  

                                                             
                                                                                





                                                                                 
                                                                               





















                                                                  
 
                                  





















                                                                                                                                                 








                                                                            
                                                       






                                                                                    
                                                                             











                                                                              
 








                                                      



                                                                                     
                                                    
 
                                  


                                  

                          
                                 

                       


               
             
              
               
                     
                

                                             
                              
                                    
                                       
              
                        
                             
                                 
                             
                             
                             



                              
                         
                           
                          
                           
                 
                
                                 
                     
                      
                    
                            
                                   
                             



                                  
                        
                                
                               
                                  
                                               
              
                    
                       
             
                       
             
                  
                
                 
                     
                          

                            
                     
                                  
                             


                                   
               
               
                 
                  
            
           
                     



                                    
                                             

                                  
                                
                                 
                                 
              
                          

                    
              

              


                                      
                                    
                                    
  
 
                                         
      




                                                                       
 
      

                                          
                                   
                                    
                                             

                                  


                                        








                                                                    

                                                             
 
  
# Process this file with autoconf to produce a configure script.
AC_INIT(camel)
AM_CONFIG_HEADER(config.h)

EVOLUTION_MAJOR_VERSION=0
EVOLUTION_MINOR_VERSION=0
EVOLUTION_MICRO_VERSION=10
VERSION=$EVOLUTION_MINOR_VERSION.$EVOLUTION_MICRO_VERSION
PACKAGE=evolution

AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
AC_SUBST(VERSION)

AC_DEFUN(EVO_CHECK_LIB, [
    dispname="$1"
    pkgname="$2"
    minvers="$3"
    maxvers="$4"

    AC_MSG_CHECKING(for $dispname)

    if gnome-config --libs $pkgname > /dev/null 2>&1; then
        pkgvers=`gnome-config --modversion $pkgname | sed -e 's/^[[^0-9]]*//'`
    else
        pkgvers=not
    fi
    AC_MSG_RESULT($pkgvers found)

    pkgvers=`echo $pkgvers | awk -F. '{ print $[]1 * 1000000 + $[]2 * 10000 + $[]3 * 100 + $[]4;}'`
    cmpminvers=`echo $minvers | awk -F. '{ print $[]1 * 1000000 + $[]2 * 10000 + $[]3 * 100 + $[]4;}'`
    cmpmaxvers=`echo $maxvers | awk -F. '{ print $[]1 * 1000000 + $[]2 * 10000 + $[]3 * 100 + $[]4;}'`
    ok=yes
    if test "$pkgvers" -lt $cmpminvers; then
        ok=no
    elif test -n "$maxvers" -a "$pkgvers" -ge $cmpmaxvers; then
        ok=no
    fi
    if test $ok = no; then
        case $maxvers in
        "")
            dispvers="$minvers or higher"
            ;;
        $minvers)
            dispvers="$minvers (exactly)"
            ;;
        *)
            dispvers="$minvers or higher, but less than $maxvers,"
            ;;
        esac

        AC_MSG_ERROR([
""
"You need $dispname $dispvers to build Evolution"
"If you think you already have this installed, consult the README."])
    fi
])


dnl Initialize maintainer mode
AM_MAINTAINER_MODE

AC_ISC_POSIX
AC_PROG_CC
AC_PROG_CPP
AM_PROG_LEX
AC_PROG_YACC
case $YACC in
*yacc*)
    AC_MSG_ERROR(You need bison to build Evolution)
    ;;
esac
AC_STDC_HEADERS
AC_ARG_PROGRAM
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET

dnl Initialize xml-i18n-tools
AM_PROG_XML_I18N_TOOLS

dnl Initialize libtool
AM_PROG_LIBTOOL

AM_ACLOCAL_INCLUDE(macros)
GNOME_INIT()
GNOME_COMPILE_WARNINGS
GNOME_X_CHECKS
EVO_CHECK_LIB(gnome-libs, gnome, 1.2.9)

ALL_LINGUAS="az ca da de el en_GB es fi fr ga gl hu it ja ko lt nl nn no pl pt pt_BR ru sk sl sv tr uk"
AM_GNOME_GETTEXT
localedir='$(prefix)/$(DATADIRNAME)/locale'
AC_SUBST(localedir)

dnl
dnl Purify support
dnl
AC_ARG_ENABLE(purify, 
[  --enable-purify=[no/yes]      Enable support for building executables with
                                Purify.],,enable_purify=no)
AC_PATH_PROG(PURIFY, purify, impure)
AC_ARG_WITH(purify-options, [  --with-purify-options=OPTIONS      Options passed to the purify command line (defaults to PURIFYOPTIONS variable).])
if test "x$with_purify_options" = "xno"; then
  with_purify_options="-always-use-cache-dir=yes -cache-dir=/gnome/lib/purify"
fi
if test "x$PURIFYOPTIONS" = "x"; then
  PURIFYOPTIONS=$with_purify_options
fi
AC_SUBST(PURIFY)
AM_CONDITIONAL(ENABLE_PURIFY, test "x$enable_purify" = "xyes" -a "x$PURIFY" != "ximpure")
PURIFY="$PURIFY $PURIFYOPTIONS"


AC_PATH_PROG(SENDMAIL, sendmail, /usr/sbin/sendmail, /usr/sbin:/usr/lib)
AC_DEFINE_UNQUOTED(SENDMAIL_PATH, "$SENDMAIL")

AC_MSG_CHECKING(system mail directory)
if test -d /var/mail; then
    system_mail_dir=/var/mail
else
    system_mail_dir=/var/spool/mail
fi
AC_DEFINE_UNQUOTED(SYSTEM_MAIL_DIR, "$system_mail_dir")

dnl * Time zone stuff
AC_CACHE_CHECK(for timezone variable, ac_cv_var_timezone,
    AC_TRY_COMPILE([
        #include <time.h>
    ], [
        timezone = 1;
    ], ac_cv_var_timezone=yes, ac_cv_var_timezone=no))
if test $ac_cv_var_timezone = yes; then
    AC_DEFINE(HAVE_TIMEZONE)
else
    AC_CACHE_CHECK(for tm_gmtoff in struct tm, ac_cv_struct_tm_gmtoff,
        AC_TRY_COMPILE([
            #include <time.h>
            ], [
            struct tm tm;
            tm.tm_gmtoff = 1;
            ], ac_cv_struct_tm_gmtoff=yes, ac_cv_struct_tm_gmtoff=no))
    if test $ac_cv_struct_tm_gmtoff = yes; then
        AC_DEFINE(HAVE_TM_GMTOFF)
    else
        AC_ERROR(unable to find a way to determine timezone)
    fi
fi

AC_CHECK_FUNCS(mkstemp mkdtemp isblank)

dnl **************************************************
dnl ctime_r prototype
dnl **************************************************

AC_CACHE_CHECK([if ctime_r wants three arguments], ac_cv_ctime_r_three_args,
[
    AC_TRY_COMPILE([
        #include <time.h>
    ],[
        char *buf;
        time_t date;
        ctime_r( &date, buf, 100 );
    ],[
        ac_cv_ctime_r_three_args=yes
    ],[
        ac_cv_ctime_r_three_args=no
    ])
])
    
if test x"$ac_cv_ctime_r_three_args" = xyes ; then
    AC_DEFINE(CTIME_R_THREE_ARGS)
fi

dnl **************************************************
dnl gethostbyname_r prototype
dnl **************************************************

AC_CHECK_FUNCS(gethostbyname_r,[
AC_CACHE_CHECK([if gethostbyname_r wants five arguments], ac_cv_gethostbyname_r_five_args,
[
    AC_TRY_COMPILE([
        #include "confdefs.h"
        #include <sys/types.h>
        #include <sys/socket.h>
        #include <netinet/in.h>
        #include <netdb.h>

        #define BUFSIZE (sizeof(struct hostent)+10)
    ],[
        struct hostent hent;
        char buffer[BUFSIZE];
        int bufsize=BUFSIZE;
        int h_errno;

        (void)gethostbyname_r( "www.ximian.com", &hent, buffer, bufsize, &h_errno);
    ],[
        ac_cv_gethostbyname_r_five_args=yes
    ],[
        ac_cv_gethostbyname_r_five_args=no
    ])
])])
    
if test x"$ac_cv_gethostbyname_r_five_args" = xyes ; then
    AC_DEFINE(GETHOSTBYNAME_R_FIVE_ARGS)
fi

dnl **************************************************
dnl * pas-backend-file stuff.
dnl * check for db_185.h.  if it's there, we use it.
dnl * otherwise, we use db.h (since it'll be 185).
dnl * Except on RH7.0, which puts db in yet another place
dnl **************************************************
AC_CHECK_HEADERS(db_185.h)
AC_CHECK_HEADERS(db1/db.h)

dnl **************************************************
dnl * ldap related stuff.
dnl **************************************************
AC_ARG_ENABLE(ldap, 
[  --enable-ldap=[no/yes]      Enable LDAP support in evolution],,enable_ldap=no)
if test x$enable_ldap = xyes; then
  LDAP_LIBS=
  AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="-lresolv")
  AC_CHECK_LIB(lber, ber_get_tag, LDAP_LIBS="-llber $LDAP_LIBS", ,$LDAP_LIBS)
  if test x$ac_cv_lib_lber_ber_get_tag = xyes; then
    AC_CHECK_LIB(ldap, ldap_open, LDAP_LIBS="-lldap $LDAP_LIBS", ,$LDAP_LIBS)
  fi
fi


if test x$ac_cv_lib_ldap_ldap_open = xyes; then
dnl *
dnl * check for openldap version 2.x, since 1.x doesn't have the schema stuff
dnl *
    AC_MSG_CHECKING(if openldap is version 2.x)
    AC_EGREP_CPP(yes,
    [#include "ldap.h"
     #if LDAP_VENDOR_VERSION > 20000
     yes
     #endif
     ], is_2x=yes, is_2x=no)

    if test x$is_2x = xyes; then
        AC_MSG_RESULT(yes)
    AC_DEFINE(HAVE_LDAP)
    AC_SUBST(LDAP_LIBS)
    msg_ldap=yes
    else
    AC_MSG_ERROR(evolution requires OpenLDAP version >= 2)
    fi
else
    msg_ldap=no
        enable_ldap=no
fi
AM_CONDITIONAL(ENABLE_LDAP, test x$enable_ldap = xyes)

dnl **************************************************
dnl NNTP support.
dnl **************************************************
AC_ARG_ENABLE(nntp, 
[  --enable-nntp=[no/yes]      Enable NNTP support in evolution],,enable_nntp=no)
if test "x$enable_nntp" = "xyes"; then
    AC_DEFINE(ENABLE_NNTP)
    msg_nntp=yes
else
    msg_nntp=no
fi
AM_CONDITIONAL(ENABLE_NNTP, test x$enable_nntp = xyes)

dnl **************************************************
dnl * Posix thread support
dnl **************************************************

dnl Hah! Threads are no longer an option
dnl AC_ARG_WITH(threads, [  --with-threads          Include thread support],[
dnl FIXME: support more thread types, pth at least

GNOME_PTHREAD_CHECK

if test "x$PTHREAD_LIB" = "x" ; then
    AC_MSG_ERROR([POSIX threads are currently required for Evolution])
fi

dnl
dnl Notice that this is a hack, and we wont be able to use this forever, but
dnl at least for some time
dnl

THREADS_LIBS="$PTHREAD_LIB `glib-config --libs gthread`"
THREADS_CFLAGS="`glib-config --cflags gthread`"

AC_SUBST(THREADS_LIBS)
AC_SUBST(THREADS_CFLAGS)
AC_DEFINE(ENABLE_THREADS)

dnl **************************************************
dnl * File locking
dnl **************************************************

AC_ARG_ENABLE(dot-locking, 
[  --enable-dot-locking=[yes/no] Enable support for locking mail files with dot locking],,enable_dot_locking=yes)
if test "x$enable_dot_locking" = "xyes"; then
  AC_DEFINE(USE_DOT)
  msg_dot=yes
else
  msg_dot=no    
fi

AC_ARG_ENABLE(file-locking, 
[  --enable-file-locking=[fcntl/flock/no] Enable support for locking mail files with file locking],,enable_file_locking=fcntl)
if test "x$enable_file_locking" = "xfcntl"; then
  AC_DEFINE(USE_FCNTL)
  msg_file=fcntl
else
  if test "x$enable_file_locking" = "xflock"; then
    AC_DEFINE(USE_FLOCK)
    msg_file=flock
  else
    msg_file=no 
  fi
fi



dnl ***************
dnl GNOME Libraries
dnl ***************
EVO_CHECK_LIB(Bonobo, bonobox, 1.0.3)
EVO_CHECK_LIB(OAF, oaf, 0.6.2)
EVO_CHECK_LIB(libglade, libglade, 0.14)
EVO_CHECK_LIB(gdk-pixbuf with GNOME canvas support, gnomecanvaspixbuf, 0.9.0)
EVO_CHECK_LIB(GAL, gal, 0.8.99.1)
dnl FIXME: really a post-0.9.3 version (as of April 25) is needed for
dnl changes in Editor.idl (menesis)
EVO_CHECK_LIB(GtkHTML, gtkhtml, 0.9.3)
EVO_CHECK_LIB(GNOME-VFS, vfs, 1.0)
EVO_CHECK_LIB(libxml, xml, 1.8.10, 2.0)



dnl *************************
dnl CFLAGS and LIBS and stuff
dnl *************************
GLIB_CFLAGS="`glib-config --cflags`"
GLIB_LIBS="`glib-config --libs`"
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)

GAL_CFLAGS="`gnome-config --cflags gal`"
GAL_LIBS="`gnome-config --libs gal`"
AC_SUBST(GAL_CFLAGS)
AC_SUBST(GAL_LIBS)

EXTRA_GNOME_LIBS="`gnome-config --libs libglade gdk_pixbuf gnomecanvaspixbuf gnomeui gal` $THREADS_LIBS"
EXTRA_GNOME_CFLAGS="`gnome-config --cflags libglade gdk_pixbuf gnomecanvaspixbuf gnomeui gal` $THREADS_CFLAGS"

AC_SUBST(EXTRA_GNOME_LIBS)
AC_SUBST(EXTRA_GNOME_CFLAGS)

BONOBO_GNOME_LIBS="`gnome-config --libs bonobox_print libglade gdk_pixbuf gnomecanvaspixbuf gnomeui` $OAF_LIBS"
BONOBO_GNOME_CFLAGS="`gnome-config --cflags bonobox_print libglade gdk_pixbuf gnomecanvaspixbuf gnomeui` $OAF_CFLAGS"
AC_SUBST(BONOBO_GNOME_LIBS)
AC_SUBST(BONOBO_GNOME_CFLAGS)

BONOBO_HTML_GNOME_LIBS="`gnome-config --libs bonobox_print libglade gdk_pixbuf gtkhtml gnomecanvaspixbuf gnomeui ` $THREAD_LIBS"
BONOBO_HTML_GNOME_CFLAGS="`gnome-config --cflags bonobox_print libglade gdk_pixbuf gtkhtml gnomecanvaspixbuf gnomeui ` $THREAD_CFLAGS"
AC_SUBST(BONOBO_HTML_GNOME_LIBS)
AC_SUBST(BONOBO_HTML_GNOME_CFLAGS)

GNOME_PRINT_LIBS=`gnome-config --libs print`
GNOME_PRINT_CFLAGS=`gnome-config --cflags print`
AC_SUBST(GNOME_PRINT_LIBS)
AC_SUBST(GNOME_PRINT_CFLAGS)

GTKHTML_CFLAGS="`gnome-config --cflags gtkhtml`"
GTKHTML_LIBS="`gnome-config --libs gtkhtml`"
GTKHTML_DATADIR=`gnome-config --moddatadir gtkhtml`
AC_SUBST(GTKHTML_CFLAGS)
AC_SUBST(GTKHTML_LIBS)
AC_SUBST(GTKHTML_DATADIR)

GNOME_VFS_LIBS="`gnome-config --libs vfs`"
GNOME_VFS_CFLAGS="`gnome-config --cflags vfs`"
AC_SUBST(GNOME_VFS_LIBS)
AC_SUBST(GNOME_VFS_CFLAGS)

BONOBO_VFS_GNOME_LIBS="`gnome-config --libs bonobox libglade gdk_pixbuf gnomecanvaspixbuf vfs gnomeui `"
BONOBO_VFS_GNOME_CFLAGS="`gnome-config --cflags bonobox libglade gdk_pixbuf gnomecanvaspixbuf vfs gnomeui `"
AC_SUBST(BONOBO_VFS_GNOME_LIBS)
AC_SUBST(BONOBO_VFS_GNOME_CFLAGS)

CAMEL_CFLAGS="`gnome-config --cflags gal xml` $THREADS_CFLAGS"
CAMEL_LIBS="`gnome-config --libs gal xml` $THREADS_LIBS"
AC_SUBST(CAMEL_CFLAGS)
AC_SUBST(CAMEL_LIBS)

MAILER_CFLAGS="`gnome-config --cflags gtkhtml libglade gdk_pixbuf gnomecanvaspixbuf gnomeui gal bonobox bonobox_print vfs` $THREADS_CFLAGS"
MAILER_LIBS="`gnome-config --libs gtkhtml libglade gdk_pixbuf gnomecanvaspixbuf gnomeui gal bonobox bonobox_print vfs` $THREADS_LIBS"
AC_SUBST(MAILER_CFLAGS)
AC_SUBST(MAILER_LIBS)

dnl ******************************
dnl Pilot checking
dnl ******************************
AC_ARG_ENABLE(pilot-conduits, 
[  --enable-pilot-conduits=[no/yes] Enable support for building pilot conduits.],,enable_pilot_conduits=no)
if test "x$enable_pilot_conduits" = "xyes"; then
GNOME_PILOT_CHECK
fi
AM_CONDITIONAL(ENABLE_PILOT_CONDUITS, test "x$enable_pilot_conduits" = "xyes")
if test x$enable_pilot_conduits = xyes; then
   msg_pilot=yes
else
   msg_pilot=no
fi

dnl ********
dnl Kerberos
dnl ********
AC_ARG_WITH(krb5, [  --with-krb5=PREFIX      Location of Kerberos 5 libs/includes])
AC_ARG_WITH(krb4, [  --with-krb4=PREFIX      Location of Kerberos 4 libs/includes])
msg_krb5=no
if test ${with_krb5:=no} != no; then
    LDFLAGS_save="$LDFLAGS"

    mitlibs="-lkrb5 -lk5crypto -lcom_err"
    heimlibs="-lkrb5 -lcrypto -lasn1 -lcom_err -lroken"
    AC_CACHE_CHECK([for Kerberos 5], ac_cv_lib_kerberos5,
    [
        LDFLAGS="$LDFLAGS -L$with_krb5/lib $mitlibs"
        AC_TRY_LINK_FUNC(krb5_init_context, ac_cv_lib_kerberos5="$mitlibs",
        [
            LDFLAGS="$LDFLAGS_save -L$with_krb5/lib $heimlibs"
            AC_TRY_LINK_FUNC(krb5_init_context, ac_cv_lib_kerberos5="$heimlibs", ac_cv_lib_kerberos5=no)
        ])
        LDFLAGS="$LDFLAGS_save"
    ])
    if test "$ac_cv_lib_kerberos5" != no; then
        AC_DEFINE(HAVE_KRB5)
        msg_krb5=yes
        KRB5_CFLAGS="-I$with_krb5/include/krb5"
        KRB5_LDFLAGS="-L$with_krb5/lib $ac_cv_lib_kerberos5"
    fi
else
    AC_MSG_CHECKING(for Kerberos 5)
    AC_MSG_RESULT($with_krb5)
fi

msg_krb4=no
if test x${with_krb4:=no} != xno; then
    LDFLAGS_save="$LDFLAGS"
    AC_CACHE_CHECK(for Kerberos 4, ac_cv_lib_kerberos4,
    [
        ac_cv_lib_kerberos4=no

        case $ac_cv_lib_kerberos5 in
        *k5crypto*)
            # Look for MIT krb5 compat krb4
            LDFLAGS="$LDFLAGS -L$with_krb4/lib -lkrb4 -ldes425 $KRB5_LDFLAGS"
            AC_TRY_LINK_FUNC(krb_mk_req, ac_cv_lib_kerberos4="-lkrb4 -ldes425 $KRB5_LDFLAGS")
            ;;
        esac

        if test "$ac_cv_lib_kerberos4" = no; then
            # Look for KTH krb4
            LDFLAGS="$LDFLAGS_save -L$with_krb4/lib -lkrb -lcrypto -lcom_err -lroken"
            AC_TRY_LINK_FUNC(krb_mk_req, ac_cv_lib_kerberos4="-lkrb -lcrypto -lcom_err -lroken")
        fi
        if test "$ac_cv_lib_kerberos4" = no; then
            # Look for old MIT krb4
            LDFLAGS="$LDFLAGS_save -L$with_krb4/lib -lkrb"
            AC_TRY_LINK_FUNC(krb_mk_req, ac_cv_lib_kerberos4=-lkrb,
            [
                LDFLAGS="$LDFLAGS -ldes"
                AC_TRY_LINK_FUNC(krb_mk_req, ac_cv_lib_kerberos4="-lkrb -ldes")
            ])
        fi
    ])
    LDFLAGS="$LDFLAGS_save"
    if test "$ac_cv_lib_kerberos4" != no; then
        AC_DEFINE(HAVE_KRB4)
        msg_krb4=yes
        if test -f "$with_krb4/include/krb.h" -o -f "$with_krb4/include/port-sockets.h"; then
            KRB4_CFLAGS="-I$with_krb4/include"
        else
            KRB4_CFLAGS="-I$with_krb4/include/kerberosIV"
        fi
        KRB4_LDFLAGS="-L$with_krb4/lib $ac_cv_lib_kerberos4"

        CFLAGS_save="$CFLAGS"
        CFLAGS="$CFLAGS $KRB4_CFLAGS"
        AC_TRY_COMPILE([#include "krb.h"
        int krb_sendauth;
        ],[return 0],[AC_DEFINE(NEED_KRB_SENDAUTH_PROTO)],)
        CFLAGS="$CFLAGS_save"
    fi
else
    AC_MSG_CHECKING(for Kerberos 4)
    AC_MSG_RESULT(${with_krb4})
fi

AC_SUBST(KRB5_CFLAGS)
AC_SUBST(KRB5_LDFLAGS)
AC_SUBST(KRB4_CFLAGS)
AC_SUBST(KRB4_LDFLAGS)


dnl ===============================================================================
dnl = security extension support (SSL and S/MIME)
dnl =
dnl = The following voodoo does detection of mozilla libraries (nspr and nss) 
dnl = needed by Camel (SSL) and Evolution (S/MIME).
dnl =
dnl = The Evolution security extensions are only built if these libraries are found
dnl ===============================================================================
AC_ARG_WITH(nspr-includes, [  --with-nspr-includes=PREFIX     Location of Mozilla nspr4 includes.],
    with_nspr_includes="$withval", with_nspr_includes="/usr/include/mozilla")
have_nspr_includes="no"
if test "x${with_nspr_includes}" != "xno"; then
    CPPFLAGS_save="$CPPFLAGS"
    
    AC_MSG_CHECKING(for Mozilla nspr4 includes in $with_nspr_includes)
    AC_MSG_RESULT("")
    
    CPPFLAGS="$CPPFLAGS -I$with_nspr_includes"
    AC_CHECK_HEADERS(nspr.h prio.h, [ moz_nspr_includes="yes" ])
    CPPFLAGS="$CPPFLAGS_save"
    
    if test "x{$moz_nspr_includes}" != "xno" -a "x{$moz_nspr_includes}" != "x" ; then
        have_nspr_includes="yes"
        NSPR_CFLAGS="-I$with_nspr_includes"
    fi
else
    AC_MSG_CHECKING(for Mozilla nspr4 includes)
    AC_MSG_RESULT(no)
fi

AC_ARG_WITH(nspr-libs, [  --with-nspr-libs=PREFIX     Location of Mozilla nspr4 libs.],
    with_nspr_libs="$withval")
have_nspr_libs="no"
if test "x${with_nspr_libs}" != "xno" -a "x${have_nspr_includes}" != "xno"; then
    CFLAGS_save="$CFLAGS"
    LDFLAGS_save="$LDFLAGS"
    
    nsprlibs="-lnspr4 -lplc4 -lplds4 $PTHREAD_LIB"
    AC_CACHE_CHECK([for Mozilla nspr libraries], moz_nspr_libs,
    [
        CFLAGS="$CFLAGS $NSPR_CFLAGS"
        
        if test "x${with_nspr_libs}" != "x"; then
            LDFLAGS="$LDFLAGS -L$with_nspr_libs $nsprlibs"
        else
            LDFLAGS="$LDFLAGS $nsprlibs"
        fi
        
        AC_TRY_LINK_FUNC(PR_Init, moz_nspr_libs="yes", moz_nspr_libs="no")
        CFLAGS="$CFLAGS_save"
        LDFLAGS="$LDFLAGS_save"
    ])
    if test "x$moz_nspr_libs" != "xno"; then
        have_nspr_libs="yes"
        NSPR_LDFLAGS="-L$with_nspr_libs $nsprlibs"
    else
        NSPR_CLFAGS=""
    fi
else
    AC_MSG_CHECKING(for Mozilla nspr4 libraries)
    AC_MSG_RESULT(no)
fi

AC_ARG_WITH(nss-includes, [  --with-nss-includes=PREFIX     Location of Mozilla nss3 includes.],
    with_nss_includes="$withval", with_nss_includes="/usr/include/mozilla")
have_nss_includes="no"
if test "x${with_nss_includes}" != "xno" -a "x${have_nspr_libs}" != "xno"; then
    CPPFLAGS_save="$CPPFLAGS"
    
    AC_MSG_CHECKING(for Mozilla nss3 includes in $with_nss_includes)
    AC_MSG_RESULT("")

        if test "x${with_nspr_includes}" != "x"; then
            CPPFLAGS="$CPPFLAGS -I$with_nspr_includes -I$with_nss_includes"
        else
            CPPFLAGS="$CPPFLAGS -I$with_nss_includes"
        fi

    AC_CHECK_HEADERS(nss.h ssl.h smime.h, [ moz_nspr_includes="yes" ])
    CPPFLAGS="$CPPFLAGS_save"
    
    if test "x{$moz_nss_includes}" != "xno" -a "x{$moz_nss_includes}" != "x"; then
        have_nss_includes="yes"
        NSS_CFLAGS="-I$with_nss_includes"
    else
        NSPR_CFLAGS=""
        NSPR_LDFLAGS=""
    fi
else
    AC_MSG_CHECKING(for Mozilla nss3 includes)
    AC_MSG_RESULT(no)
fi

AC_ARG_WITH(nss-libs, [  --with-nss-libs=PREFIX         Location of Mozilla nss3 libs.],
    with_nss_libs="$withval")
msg_nss="no"
if test "x${with_nss_libs}" != "xno" -a "x${have_nss_includes}" != "xno"; then
    LDFLAGS_save="$LDFLAGS"
    
    nsprlibs="-lnspr4 -lplc4 -lplds4 $PTHREAD_LIB"
    nsslibs="-lnss3 -lnssckbi -lssl3 -lsmime3"
    AC_CACHE_CHECK([for Mozilla nss libraries], moz_nss_libs,
    [
        LDFLAGS="$LDFLAGS -L$with_nspr_libs $nsprlibs -L$with_nss_libs $nsslibs"
        AC_TRY_LINK_FUNC(NSS_Init, moz_nss_libs="yes", moz_nss_libs="no")
        LDFLAGS="$LDFLAGS_save"
    ])
    if test "$moz_nss_libs" != no; then
        AC_DEFINE(HAVE_NSS)
        msg_nss="yes"
        NSS_LDFLAGS="-L$with_nss_libs $nsslibs"
    else
        NSS_CFLAGS=""
        NSPR_CFLAGS=""
        NSPR_LDFLAGS=""
    fi
else
    AC_MSG_CHECKING(for Mozilla nss libraries)
    AC_MSG_RESULT(no)
fi

AC_SUBST(NSPR_CFLAGS)
AC_SUBST(NSPR_LDFLAGS)
AC_SUBST(NSS_CFLAGS)
AC_SUBST(NSS_LDFLAGS)

dnl ====================================
dnl = End mozilla hacks
dnl ====================================

dnl ******************************
dnl OpenSSL
dnl ******************************

AC_ARG_WITH(openssl-includes, [  --with-openssl-includes=PREFIX     Location of OpenSSL includes.],
    with_openssl_includes="$withval", with_openssl_includes="/usr/include")
have_openssl_includes="no"
if test "x${with_openssl_includes}" != "xno"; then
    CPPFLAGS_save="$CPPFLAGS"
    
    AC_MSG_CHECKING(for OpenSSL includes)
    AC_MSG_RESULT("")
    
    CPPFLAGS="$CPPFLAGS -I$with_openssl_includes"
    AC_CHECK_HEADERS(openssl/ssl.h openssl/x509.h, [ openssl_includes="yes" ])
    CPPFLAGS="$CPPFLAGS_save"
    
    if test "x{$openssl_includes}" != "xno" -a "x{$openssl_includes}" != "x"; then
        have_openssl_includes="yes"
        OPENSSL_CFLAGS="-I$with_openssl_includes"
    else
        OPENSSL_CFLAGS=""
    fi
else
    AC_MSG_CHECKING(for OpenSSL includes)
    AC_MSG_RESULT(no)
fi

AC_ARG_WITH(openssl-libs, [  --with-openssl-libs=PREFIX         Location of OpenSSL libs.],
    with_openssl_libs="$withval")
msg_openssl="no"
if test "x${with_openssl_libs}" != "xno" -a "x${have_openssl_includes}" != "xno"; then
    LDFLAGS_save="$LDFLAGS"

    case $with_openssl_libs in
    ""|-L*) ;;
    *) $with_openssl_libs="-L$with_openssl_libs" ;;
    esac

    AC_CHECK_LIB(dl, dlopen, DL_LDFLAGS="-ldl", DL_LDFLAGS="")
    AC_CACHE_CHECK([for OpenSSL libraries], openssl_libs,
    [
        LDFLAGS="$LDFLAGS $with_openssl_libs -lssl -lcrypto $DL_LDFLAGS"
        AC_TRY_LINK_FUNC(SSL_read, openssl_libs="yes", openssl_libs="no")
        LDFLAGS="$LDFLAGS_save"
    ])
    if test "x${openssl_libs}" != "xno"; then
        AC_DEFINE(HAVE_OPENSSL)
        msg_openssl="yes"
        OPENSSL_LDFLAGS="$with_openssl_libs -lssl -lcrypto $DL_LDFLAGS"
    else
        OPENSSL_CFLAGS=""
        OPENSSL_LDFLAGS=""
    fi
else
    AC_MSG_CHECKING(for OpenSSL libraries)
    AC_MSG_RESULT(no)
fi

AC_SUBST(OPENSSL_CFLAGS)
AC_SUBST(OPENSSL_LDFLAGS)

dnl ******************************
dnl See if we have SSL support
dnl ******************************

if test "x${msg_nss}" != "xno" -o "x${msg_openssl}" != "xno"; then
    msg_ssl="yes"
    AC_DEFINE(HAVE_SSL)
else
    msg_ssl="no"
fi

dnl ******************************
dnl gtk-doc
dnl ******************************

AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
AM_CONDITIONAL(HAVE_GTK_DOC, $GTKDOC)
AC_SUBST(HAVE_GTK_DOC)

dnl Let people disable the gtk-doc stuff.
AC_ARG_ENABLE(gtk-doc, [  --enable-gtk-doc  Use gtk-doc to build documentation [default=auto]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)

if test x$enable_gtk_doc = xauto ; then
  if test x$GTKDOC = xtrue ; then
    enable_gtk_doc=yes
  else
    enable_gtk_doc=no
  fi
fi

dnl NOTE: We need to use a separate automake conditional for this
dnl       to make this work with the tarballs.
AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)

dnl ********
dnl movemail
dnl ********
AC_ARG_WITH(movemail, [  --with-movemail=PATH    Path to a movemail binary])
AC_MSG_CHECKING(for movemail)
if test x$with_movemail = xyes -o x$with_movemail = x; then
    with_movemail=no
fi
if test x$with_movemail != xno; then
    AC_DEFINE_UNQUOTED(MOVEMAIL_PATH, "$with_movemail")
    AC_MSG_RESULT($with_movemail)
else
    emacs_exec_dir=`emacs --batch --eval '(message exec-directory)' 2>&1`
    case $emacs_exec_dir in
    /*) if test -x $emacs_exec_dir/movemail; then
        if test -u $emacs_exec_dir/movemail -o -g $emacs_exec_dir/movemail; then
        AC_MSG_RESULT($emacs_exec_dir/movemail)
        AC_DEFINE_UNQUOTED(MOVEMAIL_PATH, "$emacs_exec_dir/movemail")
        else
        AC_MSG_RESULT($emacs_exec_dir/movemail... not set-id: ignored)
        fi
    else
        AC_MSG_RESULT(no)
    fi
    ;;
    *)
    AC_MSG_RESULT(no)
    ;;
    esac
fi

dnl
dnl Compose program
dnl
compose_libs="bonobo gnomeui"
COMPOSE_LIBS="`gnome-config --libs $compose_libs`"
COMPOSE_CFLAGS="`gnome-config --cflags $compose_libs`"
AC_SUBST(COMPOSE_LIBS)
AC_SUBST(COMPOSE_CFLAGS)

dnl ******************
dnl Sub-version number
dnl ******************
AC_ARG_WITH(sub-version, [  --with-sub-version=VERSION Specify a sub-version string])
AC_DEFINE_UNQUOTED(SUB_VERSION, "$with_sub_version")

dnl ******************************
dnl Makefiles
dnl ******************************

AC_CONFIG_SUBDIRS(libical)

EVOLUTION_DIR=`(cd $srcdir; pwd)`
AC_SUBST(EVOLUTION_DIR)

AC_OUTPUT([
Makefile
macros/Makefile
intl/Makefile
po/Makefile.in
e-util/Makefile
e-util/ename/Makefile
libibex/Makefile
executive-summary/Makefile
executive-summary/evolution-services/Makefile
executive-summary/idl/Makefile
executive-summary/component/Makefile
executive-summary/test-service/Makefile
camel/Makefile
camel/providers/Makefile
camel/providers/pop3/Makefile
camel/providers/sendmail/Makefile
camel/providers/smtp/Makefile
camel/providers/imap/Makefile
camel/providers/nntp/Makefile
camel/providers/local/Makefile
camel/tests/Makefile
camel/tests/lib/Makefile
camel/tests/message/Makefile
camel/tests/misc/Makefile
camel/tests/folder/Makefile
camel/tests/smime/Makefile
camel/tests/stream/Makefile
composer/Makefile
widgets/Makefile
widgets/meeting-time-sel/Makefile
widgets/misc/Makefile
widgets/menus/Makefile
addressbook/Makefile
addressbook/conduit/Makefile
addressbook/contact-editor/Makefile
addressbook/printing/Makefile
addressbook/backend/Makefile
addressbook/backend/idl/Makefile
addressbook/backend/pas/Makefile
addressbook/backend/ebook/Makefile
addressbook/gui/Makefile
addressbook/gui/widgets/Makefile
addressbook/gui/search/Makefile
addressbook/gui/component/Makefile
addressbook/gui/component/select-names/Makefile
shell/Makefile
shell/glade/Makefile
shell/importer/Makefile
mail/Makefile
mail/importers/Makefile
data/Makefile
libversit/Makefile
libibex/Makefile
calendar/Makefile
calendar/idl/Makefile
calendar/cal-util/Makefile
calendar/cal-client/Makefile
calendar/pcs/Makefile
calendar/gui/Makefile
calendar/gui/alarm-notify/Makefile
calendar/gui/dialogs/Makefile
calendar/conduits/Makefile
calendar/conduits/calendar/Makefile
calendar/conduits/todo/Makefile
filter/Makefile
wombat/Makefile
composer/Makefile
importers/Makefile
art/Makefile
ui/Makefile
default_user/Makefile
default_user/local/Makefile
default_user/local/Calendar/Makefile
default_user/local/Contacts/Makefile
default_user/local/Drafts/Makefile
default_user/local/Executive-Summary/Makefile
default_user/local/Inbox/Makefile
default_user/local/Outbox/Makefile
default_user/local/Sent/Makefile
default_user/local/Tasks/Makefile
default_user/local/Trash/Makefile
views/Makefile
views/addressbook/Makefile
views/mail/Makefile
views/tasks/Makefile
tools/Makefile
doc/Makefile
doc/C/Makefile
doc/devel/Makefile
doc/devel/calendar/Makefile
doc/devel/calendar/cal-client/Makefile
doc/devel/calendar/cal-util/Makefile
doc/devel/executive-summary/Makefile
])

if test "x$with_sub_version" != "x"; then
echo "
    Evolution ($with_sub_version) has been configured as follows: "
else
echo "
    Evolution has been configured as follows: "
fi

echo "
    Mail Directory:   $system_mail_dir
    LDAP support:     $msg_ldap
    NNTP support:     $msg_nntp
    Pilot conduits:   $msg_pilot
    Kerberos 4/5:     $msg_krb4/$msg_krb5
    SSL support:      $msg_ssl
    S/MIME support:   $msg_nss
    Use movemail:     $with_movemail
    Dot Locking:      $msg_dot
    File Locking:     $msg_file
    Gtk-doc:      $enable_gtk_doc"

if test x$enable_gtk_doc = xyes; then
echo "
    Programming documentation files will be built automatically.
"
else
echo "
    Programming documentation files will not be built.
    You may want to install the gtk-doc package
    so that you will get the Evolution Developer's Guide.
"
fi