Move EVO_CHECK_LIB into here, and also create EVO_PURIFY_SUPPORT,

* acinclude.m4: Move EVO_CHECK_LIB into here, and also create
	EVO_PURIFY_SUPPORT, EVO_TIMEZONE_CHECK, and EVO_LDAP_CHECK from
	stuff in configure.in. (This stuff is also used by Connector.)

	* configure.in: Remove the stuff that was moved to acinclude.m4.

	* evolution_addressbookConf.sh.in: Remove db3 and ldap references
	since pas-backend-file and pas-backend-ldap are no longer in
	libpas, and those flags weren't doing anything useful here before
	anyway. (Our attempts to force static linking to those libraries
	end up getting mangled when passed through gnome-config.)

	* evolution_calendarConf.sh.in: Likewise, remove db3 references.

svn path=/trunk/; revision=17531
This commit is contained in:
Dan Winship
2002-07-22 18:24:30 +00:00
parent 3112b69425
commit ed309c6a15
5 changed files with 243 additions and 193 deletions

View File

@ -1,3 +1,19 @@
2002-07-22 Dan Winship <danw@ximian.com>
* acinclude.m4: Move EVO_CHECK_LIB into here, and also create
EVO_PURIFY_SUPPORT, EVO_TIMEZONE_CHECK, and EVO_LDAP_CHECK from
stuff in configure.in. (This stuff is also used by Connector.)
* configure.in: Remove the stuff that was moved to acinclude.m4.
* evolution_addressbookConf.sh.in: Remove db3 and ldap references
since pas-backend-file and pas-backend-ldap are no longer in
libpas, and those flags weren't doing anything useful here before
anyway. (Our attempts to force static linking to those libraries
end up getting mangled when passed through gnome-config.)
* evolution_calendarConf.sh.in: Likewise, remove db3 references.
2002-07-22 Dan Winship <danw@ximian.com>
* configure.in: Check if we're trying to build with the old
@ -26,11 +42,11 @@
2002-07-10 Peter Williams <peterw@ximian.com>
* configure.in (privlibdir): Define a versioned library directory that we can
use for things that are ABI-sensitive: camel providers, importers... Define
camel_providerder in terms of this, resulting in a new location for the
providers. Camel will have to be rebuilt for it to get the new
-D flag.
* configure.in (privlibdir): Define a versioned library directory
that we can use for things that are ABI-sensitive: camel
providers, importers... Define camel_providerder in terms of this,
resulting in a new location for the providers. Camel will have to
be rebuilt for it to get the new -D flag.
2002-07-12 Peter Williams <peterw@ximian.com>

200
acinclude.m4 Normal file
View File

@ -0,0 +1,200 @@
# evolution/acinclude.m4
# shared configure.in hacks between Evolution and Connector
# EVO_CHECK_LIB(dispname, pkgname, minvers[, maxvers])
# Checks if the package with human-readable name @dispname, known
# to gnome-config as @pkgname exists and has an appropriate version.
# The version must be >= @minvers. If @maxvers is equal to @minvers,
# it must be exactly that version. Otherwise, if @maxvers is set,
# the version must be LESS THAN @maxvers (not less than or equal).
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"; then
if test "$pkgvers" -gt $cmpmaxvers; then
ok=no
elif test "$maxvers" != "$minvers" -a "$cmpmaxvers" -eq "$pkgvers"; then
ok=no
fi
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 $PACKAGE"
"If you think you already have this installed, consult the README."])
fi
])
# EVO_PURIFY_SUPPORT
# Add --enable-purify. If the user turns it on, subst PURIFY and set
# the automake conditional ENABLE_PURIFY
AC_DEFUN(EVO_PURIFY_SUPPORT, [
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"
])
# EVO_TIMEZONE_CHECK
# define HAVE_TIMEZONE if there is an external "timezone" variable, or
# HAVE_TM_GMTOFF if struct tm has a tm_gmtoff member. (Note that
# timezone and tm_gmtoff have opposite signs.)
AC_DEFUN(EVO_TIMEZONE_CHECK, [
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
])
# EVO_LDAP_CHECK(default)
# Add --with-openldap and --with-static-ldap options. --with-openldap
# defaults to the given value if not specified. If LDAP support is
# configured, HAVE_LDAP will be defined and the automake conditional
# ENABLE_LDAP will be set. LDAP_CFLAGS and LDAP_LIBS will be set
# appropriately.
AC_DEFUN(EVO_LDAP_CHECK, [
default="$1"
AC_ARG_WITH(openldap, [ --with-openldap=[no/yes/PREFIX] Enable LDAP support in evolution])
AC_ARG_WITH(static-ldap, [ --with-static-ldap=[no/yes] Link LDAP support statically into evolution ])
AC_CACHE_CHECK([for OpenLDAP], ac_cv_with_openldap, ac_cv_with_openldap="${with_openldap:=$default}")
case $ac_cv_with_openldap in
no|"")
with_openldap=no
;;
yes)
with_openldap=/usr
;;
*)
with_openldap=$ac_cv_with_openldap
LDAP_CFLAGS="-I$ac_cv_with_openldap/include"
LDAP_LDFLAGS="-L$ac_cv_with_openldap/lib"
;;
esac
if test "$with_openldap" != no; then
AC_DEFINE(HAVE_LDAP)
case $with_static_ldap in
no|"")
if test -f $with_openldap/lib/libldap.la; then
with_static_ldap=yes
else
with_static_ldap=no
fi
;;
*)
with_static_ldap=yes
;;
esac
AC_CACHE_CHECK(if OpenLDAP is version 2.x, ac_cv_openldap_version2, [
CPPFLAGS_save="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $LDAP_CFLAGS"
AC_EGREP_CPP(yes, [
#include "ldap.h"
#if LDAP_VENDOR_VERSION > 20000
yes
#endif
], ac_cv_openldap_version2=yes, ac_cv_openldap_version2=no)
CPPFLAGS="$CPPFLAGS_save"
])
if test "$ac_cv_openldap_version2" = no; then
AC_MSG_ERROR(evolution requires OpenLDAP version >= 2)
fi
AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="-lresolv")
AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
AC_CHECK_LIB(lber, ber_get_tag, [
if test "$with_static_ldap" = "yes"; then
LDAP_LIBS="$with_openldap/lib/liblber.a $LDAP_LIBS"
# libldap might depend on OpenSSL... We need to pull
# in the dependency libs explicitly here since we're
# not using libtool for the configure test.
if test -f $with_openldap/lib/libldap.la; then
LDAP_LIBS="`. $with_openldap/lib/libldap.la; echo $dependency_libs` $LDAP_LIBS"
fi
else
LDAP_LIBS="-llber $LDAP_LIBS"
fi
AC_CHECK_LIB(ldap, ldap_open, [
if test $with_static_ldap = "yes"; then
LDAP_LIBS="$with_openldap/lib/libldap.a $LDAP_LIBS"
else
LDAP_LIBS="-lldap $LDAP_LIBS"
fi],
LDAP_LIBS="", $LDAP_LDFLAGS $LDAP_LIBS)
LDAP_LIBS="$LDAP_LDFLAGS $LDAP_LIBS"
], LDAP_LIBS="", $LDAP_LDFLAGS $LDAP_LIBS)
if test -z "$LDAP_LIBS"; then
AC_MSG_ERROR(could not find OpenLDAP libraries)
fi
AC_SUBST(LDAP_CFLAGS)
AC_SUBST(LDAP_LIBS)
fi
AM_CONDITIONAL(ENABLE_LDAP, test $with_openldap != no)
])

View File

@ -31,54 +31,6 @@ AC_CANONICAL_HOST
AC_DEFINE_UNQUOTED(VERSION_COMMENT, "(Preview Release)")
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"; then
if test "$pkgvers" -gt $cmpmaxvers; then
ok=no
elif test "$maxvers" != "$minvers" -a "$cmpmaxvers" -eq "$pkgvers"; then
ok=no
fi
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
])
SCROLLKEEPER_REQUIRED=0.1.4
AC_SUBST(SCROLLKEEPER_REQUIRED)
@ -153,22 +105,11 @@ 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"
EVO_PURIFY_SUPPORT
dnl
dnl system mail stuff
dnl
AC_PATH_PROG(SENDMAIL, sendmail, /usr/sbin/sendmail, /usr/sbin:/usr/lib)
AC_DEFINE_UNQUOTED(SENDMAIL_PATH, "$SENDMAIL")
@ -210,29 +151,8 @@ AC_MSG_RESULT([$system_mail_dir, $system_mail_perm])
AC_SUBST(CAMEL_LOCK_HELPER_USER)
AC_SUBST(CAMEL_LOCK_HELPER_GROUP)
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
EVO_TIMEZONE_CHECK
AC_CHECK_FUNCS(mkstemp mkdtemp isblank)
@ -451,110 +371,24 @@ LIBS="$LIBS_save"
dnl **************************************************
dnl * ldap related stuff.
dnl LDAP support.
dnl **************************************************
AC_ARG_WITH(openldap, [ --with-openldap=[no/yes/PREFIX] Enable LDAP support in evolution])
AC_ARG_WITH(static-ldap, [ --with-static-ldap=[no/yes] Link LDAP support statically into evolution ])
AC_CACHE_CHECK([for OpenLDAP], ac_cv_with_openldap, ac_cv_with_openldap="${with_openldap:=no}")
case $ac_cv_with_openldap in
no|"")
EVO_LDAP_CHECK(no)
case $with_openldap in
no)
msg_ldap=no
;;
yes)
with_openldap=/usr
msg_ldap=yes
;;
*)
with_openldap=$ac_cv_with_openldap
LDAP_CFLAGS="-I$ac_cv_with_openldap/include"
LDAP_LDFLAGS="-L$ac_cv_with_openldap/lib"
msg_ldap=yes
;;
esac
if test "$msg_ldap" = yes; then
AC_DEFINE(HAVE_LDAP)
if test -f $with_openldap/lib/libldap.la; then
msg_ldap_linktype="(static)"
else
msg_ldap_linktype="(dynamic)"
fi
if test "${with_static_ldap+set}" = set; then
case $with_static_ldap in
no|"")
msg_ldap_linktype="(dynamic)"
yes)
msg_ldap="yes (static)"
;;
*)
msg_ldap_linktype="(static)"
msg_ldap="yes (dynamic)"
;;
esac
fi
AC_CACHE_CHECK(if OpenLDAP is version 2.x, ac_cv_openldap_version2, [
CPPFLAGS_save="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $LDAP_CFLAGS"
AC_EGREP_CPP(yes, [
#include "ldap.h"
#if LDAP_VENDOR_VERSION > 20000
yes
#endif
], ac_cv_openldap_version2=yes, ac_cv_openldap_version2=no)
CPPFLAGS="$CPPFLAGS_save"
])
if test "$ac_cv_openldap_version2" = no; then
AC_MSG_ERROR(evolution requires OpenLDAP version >= 2)
fi
AC_CHECK_LIB(resolv, res_query, LDAP_LIBS="-lresolv")
AC_CHECK_LIB(socket, bind, LDAP_LIBS="$LDAP_LIBS -lsocket")
AC_CHECK_LIB(nsl, gethostbyaddr, LDAP_LIBS="$LDAP_LIBS -lnsl")
AC_CHECK_LIB(lber, ber_get_tag, [
if test "$msg_ldap_linktype" = "(static)"; then
LDAP_LIBS="$with_openldap/lib/liblber.a $LDAP_LIBS"
# libldap might depend on OpenSSL... We need to pull
# in the dependency libs explicitly here since we're
# not using libtool for the configure test.
if test -f $with_openldap/lib/libldap.la; then
LDAP_LIBS="`. $with_openldap/lib/libldap.la; echo $dependency_libs` $LDAP_LIBS"
fi
else
LDAP_LIBS="-llber $LDAP_LIBS"
fi
AC_CHECK_LIB(ldap, ldap_open, [
if test $msg_ldap_linktype = "(static)"; then
LDAP_LIBS="$with_openldap/lib/libldap.a $LDAP_LIBS"
else
LDAP_LIBS="-lldap $LDAP_LIBS"
fi],
LDAP_LIBS="", $LDAP_LDFLAGS $LDAP_LIBS)
LDAP_LIBS="$LDAP_LDFLAGS $LDAP_LIBS"
], LDAP_LIBS="", $LDAP_LDFLAGS $LDAP_LIBS)
if test -z "$LDAP_LIBS"; then
AC_MSG_ERROR(could not find OpenLDAP libraries)
elif test "$msg_ldap_linktype" = "(static)"; then
case "$host" in
*solaris*)
if echo $LDAP_LIBS | grep -- "-lresolv" >/dev/null 2>&1; then
LDAP_LIBS=`echo $LDAP_LIBS | sed "s,-lresolv ,,g"`
LDAP_SHARED="-lresolv"
fi
;;
esac
LDAP_LIBS="-Wl,-Bstatic $LDAP_LIBS -Wl,-Bdynamic $LDAP_SHARED"
fi
AC_SUBST(LDAP_CFLAGS)
AC_SUBST(LDAP_LIBS)
fi
AM_CONDITIONAL(ENABLE_LDAP, test $msg_ldap = yes)
dnl **************************************************
dnl NNTP support.
dnl **************************************************
@ -1372,7 +1206,7 @@ fi
echo "
Mail Directory: $system_mail_dir, $system_mail_perm
LDAP support: $msg_ldap $msg_ldap_linktype"
LDAP support: $msg_ldap"
if test "$msg_nntp" = "yes"; then
echo "\
NNTP support: $msg_nntp"

View File

@ -4,7 +4,7 @@
EVOLUTION_ADDRESSBOOK_LIBDIR="@EVOLUTION_LIBDIR@"
EVOLUTION_ADDRESSBOOK_DATADIR="@EVOLUTION_DATADIR@"
EVOLUTION_ADDRESSBOOK_INCLUDEDIR="@EVOLUTION_INCLUDEDIR@ @EVOLUTION_ADDRESSBOOK_CFLAGS@ @LDAP_CFLAGS@"
EVOLUTION_ADDRESSBOOK_LIBS="-lpas -lebook -lename -lversit -lcamel -ledb3util -L@privlibdir@ @EVOLUTION_ADDRESSBOOK_LIBS@ @LDAP_LIBS@"
EVOLUTION_ADDRESSBOOK_INCLUDEDIR="@EVOLUTION_INCLUDEDIR@ @EVOLUTION_ADDRESSBOOK_CFLAGS@"
EVOLUTION_ADDRESSBOOK_LIBS="-lpas -lebook -lename -lversit -lcamel -L@privlibdir@ @EVOLUTION_ADDRESSBOOK_LIBS@"
MODULE_VERSION="evolution_addressbook-@VERSION@"

View File

@ -5,6 +5,6 @@ EVOLUTION_CALENDAR_LIBDIR="@EVOLUTION_LIBDIR@"
EVOLUTION_CALENDAR_DATADIR="@EVOLUTION_DATADIR@"
EVOLUTION_CALENDAR_INCLUDEDIR="@EVOLUTION_INCLUDEDIR@ @EVOLUTION_CALENDAR_CFLAGS@"
EVOLUTION_CALENDAR_LIBS="-lpcs -lcal-util -lcal-client -lical-evolution -lwombat -leutil -ledb3util -L@privlibdir@ @EVOLUTION_CALENDAR_LIBS@"
EVOLUTION_CALENDAR_LIBS="-lpcs -lcal-util -lcal-client -lical-evolution -lwombat -leutil -L@privlibdir@ @EVOLUTION_CALENDAR_LIBS@"
MODULE_VERSION="evolution_calendar-@VERSION@"