diff options
author | Dan Winship <danw@src.gnome.org> | 2002-07-23 02:24:30 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2002-07-23 02:24:30 +0800 |
commit | ed309c6a1523e3b48392781aeafd0a94a1c9042b (patch) | |
tree | 346ae12cd97c4696205fcb89effb8ed2e5b26402 | |
parent | 3112b6942561e0b027133547feb66cdf24dbd945 (diff) | |
download | gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar.gz gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar.bz2 gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar.lz gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar.xz gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.tar.zst gsoc2013-evolution-ed309c6a1523e3b48392781aeafd0a94a1c9042b.zip |
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
-rw-r--r-- | ChangeLog | 26 | ||||
-rw-r--r-- | acinclude.m4 | 200 | ||||
-rw-r--r-- | configure.in | 204 | ||||
-rw-r--r-- | evolution_addressbookConf.sh.in | 4 | ||||
-rw-r--r-- | evolution_calendarConf.sh.in | 2 |
5 files changed, 243 insertions, 193 deletions
@@ -1,5 +1,21 @@ 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 libversit module borrowed from gnome-pim instead of our own new one, and refuse to build if so. @@ -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> diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000000..a9701d3042 --- /dev/null +++ b/acinclude.m4 @@ -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) +])
\ No newline at end of file diff --git a/configure.in b/configure.in index bfcd6e686a..aef1c3f008 100644 --- a/configure.in +++ b/configure.in @@ -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 - ;; + case $with_static_ldap in + yes) + msg_ldap="yes (static)" + ;; + *) + msg_ldap="yes (dynamic)" + ;; + esac 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)" - ;; - *) - msg_ldap_linktype="(static)" - ;; - 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" diff --git a/evolution_addressbookConf.sh.in b/evolution_addressbookConf.sh.in index 1fda57f5f2..0aee3050c8 100644 --- a/evolution_addressbookConf.sh.in +++ b/evolution_addressbookConf.sh.in @@ -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@" diff --git a/evolution_calendarConf.sh.in b/evolution_calendarConf.sh.in index 6880e8624a..a8adf1d2b3 100644 --- a/evolution_calendarConf.sh.in +++ b/evolution_calendarConf.sh.in @@ -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@" |