]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
plugins: Added dependencies.
authorTimo Sirainen <tss@iki.fi>
Fri, 9 Oct 2009 01:22:12 +0000 (21:22 -0400)
committerTimo Sirainen <tss@iki.fi>
Fri, 9 Oct 2009 01:22:12 +0000 (21:22 -0400)
The dependencies can only be checked if the dlopen() can successfully open
the module, so use (apparently) non-portable ltlibrary linking to force the
libraries we depend on to load with us.

--HG--
branch : HEAD

18 files changed:
src/plugins/fts-solr/Makefile.am
src/plugins/fts-solr/fts-solr-plugin.c
src/plugins/fts-solr/fts-solr-plugin.h
src/plugins/fts-squat/Makefile.am
src/plugins/fts-squat/fts-squat-plugin.c
src/plugins/fts-squat/fts-squat-plugin.h
src/plugins/imap-acl/Makefile.am
src/plugins/imap-acl/imap-acl-plugin.c
src/plugins/imap-acl/imap-acl-plugin.h
src/plugins/imap-quota/Makefile.am
src/plugins/imap-quota/imap-quota-plugin.c
src/plugins/imap-quota/imap-quota-plugin.h
src/plugins/mail-log/Makefile.am
src/plugins/mail-log/mail-log-plugin.c
src/plugins/mail-log/mail-log-plugin.h
src/plugins/trash/Makefile.am
src/plugins/trash/trash-plugin.c
src/plugins/trash/trash-plugin.h

index cc3d63190321c6a9c6430762fda6e1d4122da8e6..f09a6663be0d0a736c51fd0ce79261c73ee0eb5f 100644 (file)
@@ -12,6 +12,7 @@ module_LTLIBRARIES = \
        lib21_fts_solr_plugin.la
 
 lib21_fts_solr_plugin_la_LIBADD = \
+       ../fts/lib20_fts_plugin.la \
        $(CURL_LIBS) -lexpat
 
 lib21_fts_solr_plugin_la_SOURCES = \
index cab40debef87615d30ff60dcf3d30d56cd203a34..bbff7cf1f6b01f4aac8f5d35681e35ebb4603f12 100644 (file)
@@ -83,3 +83,5 @@ void fts_solr_plugin_deinit(void)
        fts_backend_unregister(fts_backend_solr.name);
        hook_mail_user_created = fts_solr_next_hook_mail_user_created;
 }
+
+const char *fts_solr_plugin_dependencies[] = { "fts", NULL };
index a47d78d5ed0139cd267dadf3addedae596b4deeb..2069d131ff77123b64e5578aaa722cabfaa10088 100644 (file)
@@ -18,6 +18,7 @@ struct fts_solr_user {
        struct fts_solr_settings set;
 };
 
+extern const char *fts_solr_plugin_dependencies[];
 extern struct fts_backend fts_backend_solr;
 extern MODULE_CONTEXT_DEFINE(fts_solr_user_module, &mail_user_module_register);
 
index 8d5f6c04d70812852a115bce676f520f7189da03..a20bc9311699213ee47fe42c53c1a98a3209bba3 100644 (file)
@@ -10,6 +10,9 @@ lib21_fts_squat_plugin_la_LDFLAGS = -module -avoid-version
 module_LTLIBRARIES = \
        lib21_fts_squat_plugin.la
 
+lib21_fts_squat_plugin_la_LIBADD = \
+       ../fts/lib20_fts_plugin.la
+
 lib21_fts_squat_plugin_la_SOURCES = \
        fts-squat-plugin.c \
        fts-backend-squat.c \
index ee93ce84aafaf1207057ec4ca5635b20a72d0cfc..2b88600768b8ad8ad04f547246a6674c63adf7ab 100644 (file)
@@ -14,3 +14,5 @@ void fts_squat_plugin_deinit(void)
 {
        fts_backend_unregister(fts_backend_squat.name);
 }
+
+const char *fts_squat_plugin_dependencies[] = { "fts", NULL };
index a0f7bd0dac5259f52bd1adb5b1b20326456dd61e..b37951189e95e3dba01c540d9e0d1bdd640c6a7a 100644 (file)
@@ -3,6 +3,7 @@
 
 #include "fts-api-private.h"
 
+extern const char *fts_squat_plugin_dependencies[];
 extern struct fts_backend fts_backend_squat;
 
 void fts_squat_plugin_init(void);
index 07071d443d7609edd40f19c71b9451e122443505..82dade93ee1b31e677740d443ce3b53c099924a3 100644 (file)
@@ -14,6 +14,9 @@ lib02_imap_acl_plugin_la_LDFLAGS = -module -avoid-version
 imap_module_LTLIBRARIES = \
        lib02_imap_acl_plugin.la
 
+lib02_imap_acl_plugin_la_LIBADD = \
+       ../acl/lib01_acl_plugin.la
+
 lib02_imap_acl_plugin_la_SOURCES = \
        imap-acl-plugin.c
 
index 8a26f9db85134eac226f4f3e261253182f7b5cea..aaefb1aaccbe252a8ee8bf81907e7c4786d52322 100644 (file)
@@ -643,3 +643,5 @@ void imap_acl_plugin_deinit(void)
 
        hook_client_created = next_hook_client_created;
 }
+
+const char *imap_acl_plugin_dependencies[] = { "acl", NULL };
index 866db5f392f314c195d1fc005eb9d78b4700f973..71ce66b02855ad3922347a20689a7b2aaa07adf6 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef IMAP_ACL_PLUGIN_H
 #define IMAP_ACL_PLUGIN_H
 
+extern const char *imap_acl_plugin_dependencies[];
+
 void imap_acl_plugin_init(void);
 void imap_acl_plugin_deinit(void);
 
index c9302bfa75ffb9023d6ef397d14fbf4920d65cf6..2a81ec26776c87e3e3672cab7e3b2b6e2499f648 100644 (file)
@@ -13,6 +13,9 @@ lib11_imap_quota_plugin_la_LDFLAGS = -module -avoid-version
 imap_module_LTLIBRARIES = \
        lib11_imap_quota_plugin.la
 
+lib11_imap_quota_plugin_la_LIBADD = \
+       ../quota/lib10_quota_plugin.la
+
 lib11_imap_quota_plugin_la_SOURCES = \
        imap-quota-plugin.c
 
index 51a3bcc40ead789cbacb80adaf4be232e3d86ec9..86ecd7330a825d55a491d199c36bbac0e91c280c 100644 (file)
@@ -223,3 +223,5 @@ void imap_quota_plugin_deinit(void)
 
        hook_client_created = next_hook_client_created;
 }
+
+const char *imap_quota_plugin_dependencies[] = { "quota", NULL };
index 990974c1489efbf87e69c08274f091599ade64d2..057e4f6acef7e469baa2c54cb03c1042704a5d05 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef IMAP_QUOTA_PLUGIN_H
 #define IMAP_QUOTA_PLUGIN_H
 
+extern const char *imap_quota_plugin_dependencies[];
+
 void imap_quota_plugin_init(void);
 void imap_quota_plugin_deinit(void);
 
index 8ea32ccfd1890ce192a177fcf62ebed217d83900..c0a0706f0bd1a610f9ddc6f971fb42df0e94d32e 100644 (file)
@@ -13,6 +13,9 @@ lib20_mail_log_plugin_la_LDFLAGS = -module -avoid-version
 module_LTLIBRARIES = \
        lib20_mail_log_plugin.la
 
+lib20_mail_log_plugin_la_LIBADD = \
+       ../notify/lib15_notify_plugin.la
+
 lib20_mail_log_plugin_la_SOURCES = \
        mail-log-plugin.c
 
index 4483a6cf4494acde43b80cc244a0c13d33c6ae12..be5652ffaab62e6f170ac4a6b5bb7f2baefe203f 100644 (file)
@@ -430,3 +430,5 @@ void mail_log_plugin_deinit(void)
 {
        notify_unregister(mail_log_ctx);
 }
+
+const char *mail_log_plugin_dependencies[] = { "notify", NULL };
index 105cdf4807b39d6e88f9bbdec63aa37ed88989e5..face3ca39d1f64c5914092dce303ebb219c33baa 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef MAIL_LOG_PLUGIN_H
 #define MAIL_LOG_PLUGIN_H
 
+extern const char *mail_log_plugin_dependencies[];
+
 void mail_log_plugin_init(void);
 void mail_log_plugin_deinit(void);
 
index 8b18ab71ef391ac9eb5b960c3bf5f701665f55c2..cf719a0e531beeadb1251e85a544613e6a7d0825 100644 (file)
@@ -10,6 +10,9 @@ lib11_trash_plugin_la_LDFLAGS = -module -avoid-version
 module_LTLIBRARIES = \
        lib11_trash_plugin.la
 
+lib11_trash_plugin_la_LIBADD = \
+       ../quota/lib10_quota_plugin.la
+
 lib11_trash_plugin_la_SOURCES = \
        trash-plugin.c
 
index 1cd3d3f952871d85f244a3989c9f874ea421fb55..f39330df55f171d70acc806a74b1c0749e6f36a6 100644 (file)
@@ -333,3 +333,5 @@ void trash_plugin_deinit(void)
 {
        hook_mail_namespaces_created = trash_hook_mail_namespaces_created;
 }
+
+const char *trash_plugin_dependencies[] = { "quota", NULL };
index 880e4036c0b319c62579e091e34adff4f86c6cfb..6d9873f3fb5951b9eb361e2e7c357f3a9057dc6c 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef TRASH_PLUGIN_H
 #define TRASH_PLUGIN_H
 
+extern const char *trash_plugin_dependencies[];
+
 void trash_plugin_init(void);
 void trash_plugin_deinit(void);