Mercurial > dovecot > core-2.2
changeset 10753:80a11f8650a4 HEAD
Added dovecot.m4 file that external plugins can use.
Based on patch by Dennis Schridde.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 18 Feb 2010 09:14:43 +0200 |
parents | 6aa76d89195d |
children | c5cbc99f4627 |
files | Makefile.am autogen.sh configure.in dovecot.m4 src/plugins/fts-solr/Makefile.am src/plugins/fts-squat/Makefile.am src/plugins/imap-acl/Makefile.am src/plugins/imap-quota/Makefile.am src/plugins/imap-zlib/Makefile.am src/plugins/mail-log/Makefile.am src/plugins/trash/Makefile.am |
diffstat | 11 files changed, 109 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -1,3 +1,5 @@ +aclocaldir = $(datadir)/aclocal + if BUILD_DOCS DOCS = doc endif @@ -27,6 +29,8 @@ hg log --style=changelog > ChangeLog endif +aclocal_DATA = dovecot.m4 + dovecot-config: dovecot-config.in Makefile old=`pwd` && cd $(top_builddir) && abs_builddir=`pwd` && cd $$old && \ cd $(top_srcdir) && abs_srcdir=`pwd` && cd $$old && \
--- a/autogen.sh Thu Feb 18 08:43:35 2010 +0200 +++ b/autogen.sh Thu Feb 18 09:14:43 2010 +0200 @@ -4,10 +4,11 @@ #ACLOCAL_DIR= #GETTEXT_DIR= +ACLOCAL="aclocal -I ." if test "$ACLOCAL_DIR" != ""; then - ACLOCAL="aclocal -I $ACLOCAL_DIR" - export ACLOCAL + ACLOCAL="$ACLOCAL -I $ACLOCAL_DIR" fi +export ACLOCAL for dir in $GETTEXT_DIR /usr/share/gettext /usr/local/share/gettext; do if test -f $dir/config.rpath; then
--- a/configure.in Thu Feb 18 08:43:35 2010 +0200 +++ b/configure.in Thu Feb 18 09:14:43 2010 +0200 @@ -614,7 +614,7 @@ fi dnl * OS specific options -have_plugin_deps=yes +DC_PLUGIN_DEPS case "$host_os" in hpux*) CFLAGS="$CFLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED" @@ -626,14 +626,9 @@ linux*) AC_DEFINE(PROCTITLE_HACK,, Define if process title can be changed by modifying argv) ;; - darwin*) - # OSX loads the plugins twice, which breaks stuff - have_plugin_deps=no - ;; *) ;; esac -AM_CONDITIONAL(PLUGIN_DEPS, test "$have_plugin_deps" = "yes") AC_CHECK_SIZEOF(int) AC_CHECK_SIZEOF(long)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dovecot.m4 Thu Feb 18 09:14:43 2010 +0200 @@ -0,0 +1,94 @@ +# dovecot.m4 - Check presence of dovecot -*-Autoconf-*- +# +# Copyright (C) 2010 Dennis Schridde +# +# This file is free software; the authors give +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +AC_DEFUN([DC_PLUGIN_DEPS],[ + _plugin_deps=yes + AC_MSG_CHECKING([whether OS supports plugin dependencies]) + AS_CASE([$host_os], + [darwin*],[ + # OSX loads the plugins twice, which breaks stuff + _plugin_deps=no + ] + ) + AC_MSG_RESULT([$_plugin_deps]) + AM_CONDITIONAL([DOVECOT_PLUGIN_DEPS], [test "x$_plugin_deps" = "xyes"]) + AS_UNSET([_plugin_deps]) +]) + +# Substitute every var in the given comma seperated list +AC_DEFUN([AX_SUBST_L],[ + m4_foreach([__var__], [$@], [AC_SUBST(__var__)]) +]) + +AC_DEFUN([DC_DOVECOT],[ + AC_ARG_WITH(dovecot, + AS_HELP_STRING([--with-dovecot=DIR],[Dovecot base directory [LIBDIR/dovecot]]), + [ dovecotdir="$withval" ], [ dovecotdir="${libdir}"/dovecot ] + ) + + AC_MSG_CHECKING([for dovecot-config in "$dovecotdir"]) + AS_IF([test -f "$dovecotdir/dovecot-config"],[ + AC_MSG_RESULT([$dovecotdir/dovecot-config]) + ],[ + AC_MSG_RESULT([not found]) + AC_MSG_NOTICE([]) + AC_MSG_NOTICE([Use --with-dovecot=DIR to provide the path to the dovecot-config file.]) + AC_MSG_ERROR([dovecot-config not found]) + ]) + + eval `grep \ + -e ^dovecot_[[a-z]]*= \ + -e ^LIBDOVECOT[[A-Z_]]*= \ + "$dovecotdir"/dovecot-config` + AX_SUBST_L([dovecot_moduledir], [dovecot_pkgincludedir], [dovecot_pkglibexecdir], [dovecot_pkglibdir], [dovecot_docdir]) + AX_SUBST_L([LIBDOVECOT], [LIBDOVECOT_LOGIN], [LIBDOVECOT_SQL], [LIBDOVECOT_STORAGE]) + AX_SUBST_L([LIBDOVECOT_DEPS], [LIBDOVECOT_LOGIN_DEPS], [LIBDOVECOT_SQL_DEPS], [LIBDOVECOT_STORAGE_DEPS]) + AX_SUBST_L([LIBDOVECOT_INCLUDE], [LIBDOVECOT_LDA_INCLUDE], [LIBDOVECOT_SERVICE_INCLUDE], [LIBDOVECOT_STORAGE_INCLUDE], [LIBDOVECOT_LOGIN_INCLUDE]) + + _cppflags=$CPPFLAGS + CPPFLAGS=$LIBDOVECOT_INCLUDE + AC_MSG_CHECKING([dovecot version]) + AC_RUN_IFELSE([ + AC_LANG_PROGRAM([[ + /* needed for dovecot to include its own config.h ... */ + #define HAVE_CONFIG_H + #include "lib.h" + #include <stdlib.h> + #include <stdio.h> + ]],[[ + printf("%s\n", DOVECOT_VERSION); + ]]) + ],[ + DOVECOT_VERSION=`./conftest$EXEEXT` + ],[ + AC_MSG_FAILURE([unable to determine dovecot version]) + ]) + AC_SUBST([DOVECOT_VERSION]) + CPPFLAGS=$_cppflags + AS_UNSET([_cppflags]) + + m4_foreach_w([__flag__],[$1],[ + # Inside m4_foreach __flag__ is a variable! + # This expands *entirely* for every flag in the argument list! + AS_CASE([__flag__], + [ + # assume an unknown flag is a version number + AC_MSG_CHECKING([whether dovecot is newer than __flag__]) + AS_VERSION_COMPARE([$DOVECOT_VERSION],[__flag__],[ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([at least dovecot-flag is required, your version seems older]) + ],[ + AC_MSG_RESULT([yes]) + ],[ + AC_MSG_RESULT([yes]) + ]) + ]) + ]) + + DC_PLUGIN_DEPS +])
--- a/src/plugins/fts-solr/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/fts-solr/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -11,7 +11,7 @@ module_LTLIBRARIES = \ lib21_fts_solr_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS fts_plugin_dep = ../fts/lib20_fts_plugin.la endif
--- a/src/plugins/fts-squat/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/fts-squat/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -10,7 +10,7 @@ module_LTLIBRARIES = \ lib21_fts_squat_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib21_fts_squat_plugin_la_LIBADD = \ ../fts/lib20_fts_plugin.la endif
--- a/src/plugins/imap-acl/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/imap-acl/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -14,7 +14,7 @@ imap_module_LTLIBRARIES = \ lib02_imap_acl_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib02_imap_acl_plugin_la_LIBADD = \ ../acl/lib01_acl_plugin.la endif
--- a/src/plugins/imap-quota/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/imap-quota/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -13,7 +13,7 @@ imap_module_LTLIBRARIES = \ lib11_imap_quota_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib11_imap_quota_plugin_la_LIBADD = \ ../quota/lib10_quota_plugin.la endif
--- a/src/plugins/imap-zlib/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/imap-zlib/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -14,7 +14,7 @@ imap_module_LTLIBRARIES = \ lib30_imap_zlib_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib30_imap_zlib_plugin_la_LIBADD = \ ../zlib/lib20_zlib_plugin.la endif
--- a/src/plugins/mail-log/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/mail-log/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -13,7 +13,7 @@ module_LTLIBRARIES = \ lib20_mail_log_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib20_mail_log_plugin_la_LIBADD = \ ../notify/lib15_notify_plugin.la endif
--- a/src/plugins/trash/Makefile.am Thu Feb 18 08:43:35 2010 +0200 +++ b/src/plugins/trash/Makefile.am Thu Feb 18 09:14:43 2010 +0200 @@ -10,7 +10,7 @@ module_LTLIBRARIES = \ lib11_trash_plugin.la -if PLUGIN_DEPS +if DOVECOT_PLUGIN_DEPS lib11_trash_plugin_la_LIBADD = \ ../quota/lib10_quota_plugin.la endif