src/lib-fts/word-break-data.c
src/lib-dict/dict-drivers-register.c
src/lib-sql/sql-drivers-register.c
-src/lib-storage/register/mail-storage-register.c
-src/lib-storage/register/mailbox-list-register.c
src/log/log
src/lmtp/lmtp
src/master/dovecot
TEST_WITH(gc, $withval),
want_gc=no)
-AC_ARG_WITH(storages,
-AS_HELP_STRING([--with-storages], [Build with specified mail storage formats (mdbox sdbox maildir mbox cydir imapc pop3c)]), [
- if test "$withval" = "yes" || test "$withval" = "no"; then
- AC_MSG_ERROR([--with-storages needs storage list as parameter])
- fi
- mail_storages="shared `echo "$withval"|sed 's/,/ /g'`" ],
- mail_storages="shared mdbox sdbox maildir mbox cydir imapc pop3c")
-AC_SUBST(mail_storages)
-mail_storages="$mail_storages raw fail"
-# drop duplicates
-duplicates=`(for i in $mail_storages; do echo $i; done)|sort|uniq -d|xargs echo`
-if test "$duplicates" != ""; then
- AC_ERROR([Duplicate --with-storages: $duplicates])
-fi
-
DC_DOVECOT_MODULEDIR
AC_ARG_WITH(docs,
dnl ** storage classes
dnl **
-maildir_libs='$(top_builddir)/src/lib-storage/index/maildir/libstorage_maildir.la'
-mbox_libs='$(top_builddir)/src/lib-storage/index/mbox/libstorage_mbox.la'
-dbox_common_libs='$(top_builddir)/src/lib-storage/index/dbox-common/libstorage_dbox_common.la'
-sdbox_libs='$(top_builddir)/src/lib-storage/index/dbox-single/libstorage_dbox_single.la'
-mdbox_libs='$(top_builddir)/src/lib-storage/index/dbox-multi/libstorage_dbox_multi.la'
-cydir_libs='$(top_builddir)/src/lib-storage/index/cydir/libstorage_cydir.la'
-imapc_libs='$(top_builddir)/src/lib-storage/index/imapc/libstorage_imapc.la $(top_builddir)/src/lib-imap-client/libimap_client.la'
-pop3c_libs='$(top_builddir)/src/lib-storage/index/pop3c/libstorage_pop3c.la'
-raw_libs='$(top_builddir)/src/lib-storage/index/raw/libstorage_raw.la'
-shared_libs='$(top_builddir)/src/lib-storage/index/shared/libstorage_shared.la'
-
CORE_LIBS='$(top_builddir)/src/lib-dovecot/libdovecot.la'
STORAGE_LIB='$(top_builddir)/src/lib-storage/libdovecot-storage.la'
-LINKED_STORAGE_LIBS=
-
-mailbox_list_drivers="maildir imapdir fs index none shared"
-have_sdbox=no
-have_mdbox=no
-for storage in $mail_storages; do
- LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS `eval echo \\$${storage}_libs`"
- if test $storage = sdbox; then
- have_sdbox=yes
- fi
- if test $storage = mdbox; then
- have_mdbox=yes
- fi
- if test $storage = sdbox || test $storage = mdbox; then
- LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS $dbox_common_libs"
- dbox_common_libs=""
- fi
- if test $storage = imapc; then
- mailbox_list_drivers="$mailbox_list_drivers imapc"
- fi
-done
LINKED_STORAGE_LDADD=
-AC_SUBST(LINKED_STORAGE_LIBS)
AC_SUBST(LINKED_STORAGE_LDADD)
-AC_SUBST(mailbox_list_drivers)
-AC_DEFINE_UNQUOTED(MAIL_STORAGES, "$mail_storages", [List of compiled in mail storages])
-
-if test $have_sdbox = yes; then
- # create alias for sdbox
- mail_storages="$mail_storages dbox"
-fi
-if test $have_mdbox = yes; then
- mail_storages="$mail_storages mdbox_deleted"
-fi
dnl **
dnl ** Shared libraries usage
src/lib-storage/index/cydir/Makefile
src/lib-storage/index/raw/Makefile
src/lib-storage/index/shared/Makefile
-src/lib-storage/register/Makefile
src/anvil/Makefile
src/auth/Makefile
src/config/Makefile
-SUBDIRS = list index register
+SUBDIRS = list index
noinst_LTLIBRARIES = libstorage.la
mail-search-register-imap.c \
mail-storage.c \
mail-storage-hooks.c \
+ mail-storage-register.c \
mail-storage-service.c \
mail-storage-settings.c \
mail-thread.c \
mailbox-keywords.c \
mailbox-list.c \
mailbox-list-notify.c \
+ mailbox-list-register.c \
mailbox-recent-flags.c \
mailbox-search-result.c \
mailbox-tree.c \
mailbox-watch.h
shlibs = \
- @LINKED_STORAGE_LIBS@ \
+ index/shared/libstorage_shared.la \
+ index/dbox-multi/libstorage_dbox_multi.la \
+ index/dbox-single/libstorage_dbox_single.la \
+ index/dbox-common/libstorage_dbox_common.la \
+ index/maildir/libstorage_maildir.la \
+ index/mbox/libstorage_mbox.la \
+ index/cydir/libstorage_cydir.la \
+ index/imapc/libstorage_imapc.la \
+ ../lib-imap-client/libimap_client.la \
+ index/pop3c/libstorage_pop3c.la \
+ index/raw/libstorage_raw.la \
list/libstorage_list.la \
index/libstorage_index.la \
- register/libstorage_register.la \
../lib-index/libindex.la \
../lib-imap-storage/libimap-storage.la
--- /dev/null
+/* Copyright (c) 2017 Dovecot authors, see the included COPYING file */
+
+#include "lib.h"
+#include "mail-storage.h"
+
+extern struct mail_storage shared_storage;
+extern struct mail_storage dbox_storage;
+extern struct mail_storage mdbox_storage;
+extern struct mail_storage mdbox_deleted_storage;
+extern struct mail_storage sdbox_storage;
+extern struct mail_storage maildir_storage;
+extern struct mail_storage mbox_storage;
+extern struct mail_storage cydir_storage;
+extern struct mail_storage imapc_storage;
+extern struct mail_storage pop3c_storage;
+extern struct mail_storage raw_storage;
+extern struct mail_storage fail_storage;
+
+void mail_storage_register_all(void)
+{
+ mail_storage_class_register(&shared_storage);
+ mail_storage_class_register(&dbox_storage);
+ mail_storage_class_register(&mdbox_storage);
+ mail_storage_class_register(&mdbox_deleted_storage);
+ mail_storage_class_register(&sdbox_storage);
+ mail_storage_class_register(&maildir_storage);
+ mail_storage_class_register(&mbox_storage);
+ mail_storage_class_register(&cydir_storage);
+ mail_storage_class_register(&imapc_storage);
+ mail_storage_class_register(&pop3c_storage);
+ mail_storage_class_register(&raw_storage);
+ mail_storage_class_register(&fail_storage);
+}
--- /dev/null
+/* Copyright (c) 2017 Dovecot authors, see the included COPYING file */
+
+#include "lib.h"
+#include "mailbox-list.h"
+
+extern struct mailbox_list maildir_mailbox_list;
+extern struct mailbox_list imapdir_mailbox_list;
+extern struct mailbox_list fs_mailbox_list;
+extern struct mailbox_list index_mailbox_list;
+extern struct mailbox_list imapc_mailbox_list;
+extern struct mailbox_list none_mailbox_list;
+extern struct mailbox_list shared_mailbox_list;
+
+void mailbox_list_index_init(void);
+
+void mailbox_list_register_all(void)
+{
+ mailbox_list_register(&maildir_mailbox_list);
+ mailbox_list_register(&imapdir_mailbox_list);
+ mailbox_list_register(&fs_mailbox_list);
+ mailbox_list_register(&index_mailbox_list);
+ mailbox_list_register(&imapc_mailbox_list);
+ mailbox_list_register(&none_mailbox_list);
+ mailbox_list_register(&shared_mailbox_list);
+ mailbox_list_index_init();
+}
+++ /dev/null
-noinst_LTLIBRARIES = libstorage_register.la
-
-mail_storages = @mail_storages@
-
-mailbox_list_drivers = @mailbox_list_drivers@
-
-mail-storage-register.c: Makefile
- rm -f $@
- echo '/* this file automatically generated by Makefile */' >$@
- echo '#include "lib.h"' >>$@
- echo '#include "mail-storage.h"' >>$@
- for i in $(mail_storages) ; do \
- echo "extern struct mail_storage $${i}_storage;" >>$@ ; \
- done
- echo 'void mail_storage_register_all(void) {' >>$@
- for i in $(mail_storages) ; do \
- echo "mail_storage_class_register(&$${i}_storage);" >>$@ ; \
- done
- echo '}' >>$@
-
-mailbox-list-register.c: Makefile
- rm -f $@
- echo '/* this file automatically generated by Makefile */' >$@
- echo '#include "lib.h"' >>$@
- echo '#include "mailbox-list.h"' >>$@
- for i in $(mailbox_list_drivers) ; do \
- echo "extern struct mailbox_list $${i}_mailbox_list;" >>$@ ; \
- done
- echo "void mailbox_list_index_init(void);" >>$@
- echo 'void mailbox_list_register_all(void) {' >>$@
- for i in $(mailbox_list_drivers) ; do \
- echo "mailbox_list_register(&$${i}_mailbox_list);" >>$@ ; \
- done
- echo "mailbox_list_index_init();" >>$@
- echo '}' >>$@
-
-AM_CPPFLAGS = \
- -I$(top_srcdir)/src/lib \
- -I$(top_srcdir)/src/lib-mail \
- -I$(top_srcdir)/src/lib-storage
-
-nodist_libstorage_register_la_SOURCES = \
- mail-storage-register.c \
- mailbox-list-register.c
-
-distclean-generic:
- rm -f Makefile mail-storage-register.c mailbox-list-register.c
" openssl"
#endif
" io_block_size=%u"
- "\nMail storages: "MAIL_STORAGES"\n"
#ifdef SQL_DRIVER_PLUGINS
"SQL driver plugins:"
#else