changeset 9017:1b586a2fee8b HEAD

Build libdovecot.so and libdovecot-storage.so. Based on patch by Stephan Bosch.
author Timo Sirainen <tss@iki.fi>
date Fri, 03 Apr 2009 19:47:59 -0400
parents fdcb1629ddcc
children aeb2bd9d6951
files .hgignore configure.in src/Makefile.am src/auth/Makefile.am src/config/Makefile.am src/deliver/Makefile.am src/dict/Makefile.am src/imap-login/Makefile.am src/imap/Makefile.am src/lib-auth/Makefile.am src/lib-charset/Makefile.am src/lib-dict/Makefile.am src/lib-dovecot/Makefile.am src/lib-imap/Makefile.am src/lib-index/Makefile.am src/lib-mail/Makefile.am src/lib-settings/Makefile.am src/lib-sql/Makefile.am src/lib-storage/Makefile.am src/lib-storage/index/Makefile.am src/lib-storage/index/cydir/Makefile.am src/lib-storage/index/dbox/Makefile.am src/lib-storage/index/maildir/Makefile.am src/lib-storage/index/mbox/Makefile.am src/lib-storage/index/raw/Makefile.am src/lib-storage/index/shared/Makefile.am src/lib-storage/list/Makefile.am src/lib-storage/register/Makefile.am src/lib/Makefile.am src/login-common/Makefile.am src/master/Makefile.am src/plugins/convert/Makefile.am src/plugins/expire/Makefile.am src/plugins/fts-squat/Makefile.am src/pop3-login/Makefile.am src/pop3/Makefile.am src/tests/Makefile.am src/util/Makefile.am
diffstat 38 files changed, 131 insertions(+), 140 deletions(-) [+]
line wrap: on
line diff
--- a/.hgignore	Fri Apr 03 19:04:43 2009 -0400
+++ b/.hgignore	Fri Apr 03 19:47:59 2009 -0400
@@ -47,6 +47,7 @@
 **/Makefile
 **/Makefile.in
 **/Info.plist
+**/.libs
 
 doc/wiki/*.txt
 doc/wiki/Makefile.am
--- a/configure.in	Fri Apr 03 19:04:43 2009 -0400
+++ b/configure.in	Fri Apr 03 19:47:59 2009 -0400
@@ -2210,35 +2210,25 @@
 dnl ** storage classes
 dnl **
 
-maildir_libs='$(top_builddir)/src/lib-storage/index/maildir/libstorage_maildir.a'
-mbox_libs='$(top_builddir)/src/lib-storage/index/mbox/libstorage_mbox.a'
-dbox_libs='$(top_builddir)/src/lib-storage/index/dbox/libstorage_dbox.a'
-cydir_libs='$(top_builddir)/src/lib-storage/index/cydir/libstorage_cydir.a'
-raw_libs='$(top_builddir)/src/lib-storage/index/raw/libstorage_raw.a'
-shared_libs='$(top_builddir)/src/lib-storage/index/shared/libstorage_shared.a'
+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_libs='$(top_builddir)/src/lib-storage/index/dbox/libstorage_dbox.la'
+cydir_libs='$(top_builddir)/src/lib-storage/index/cydir/libstorage_cydir.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'
 
-REGISTER_LIBS='$(top_builddir)/src/lib-storage/register/libstorage-register.a '\
-'$(top_builddir)/src/lib-storage/list/libstorage_list.a'
-
-CORE_LIBS='$(top_builddir)/src/lib-storage/index/libstorage_index.a '\
-'$(top_builddir)/src/lib-storage/libstorage.a '\
-'$(top_builddir)/src/lib-index/libindex.a '\
-'$(top_builddir)/src/lib-imap/libimap.a '\
-'$(top_builddir)/src/lib-mail/libmail.a '\
-'$(top_builddir)/src/lib-auth/libauth.a '\
-'$(top_builddir)/src/lib-charset/libcharset.a '\
-'$(top_builddir)/src/lib/liblib.a'
+CORE_LIBS='$(top_builddir)/src/lib-dovecot/libdovecot.la'
+STORAGE_LIB='$(top_builddir)/src/lib-storage/libdovecot-storage.la'
 
 deliver_storage="raw"
-STORAGE_LIBS=
+LINKED_STORAGE_LIBS=
 for storage in $mail_storages; do
   if test "$storage" = "$deliver_storage"; then
     deliver_storage=""
   fi
-  STORAGE_LIBS="$STORAGE_LIBS `eval echo \\$${storage}_libs`"
+  LINKED_STORAGE_LIBS="$LINKED_STORAGE_LIBS `eval echo \\$${storage}_libs`"
 done
-STORAGE_LIBS="$REGISTER_LIBS $STORAGE_LIBS $CORE_LIBS"
-AC_SUBST(STORAGE_LIBS)
+AC_SUBST(LINKED_STORAGE_LIBS)
 AC_DEFINE_UNQUOTED(MAIL_STORAGES, "$mail_storages", List of compiled in mail storages)
 
 if test -n "$deliver_storage" && test "$want_deliver" != no; then
@@ -2392,6 +2382,7 @@
 src/lib-mail/Makefile
 src/lib-ntlm/Makefile
 src/lib-otp/Makefile
+src/lib-dovecot/Makefile
 src/lib-settings/Makefile
 src/lib-storage/Makefile
 src/lib-storage/list/Makefile
--- a/src/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -8,6 +8,7 @@
 
 SUBDIRS = \
 	lib \
+	lib-auth \
 	lib-dict \
 	lib-sql \
 	lib-ntlm \
@@ -17,8 +18,8 @@
 	lib-mail \
 	lib-imap \
 	lib-index \
+	lib-dovecot \
 	lib-storage \
-	lib-auth \
 	auth \
 	config \
 	dict \
--- a/src/auth/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/auth/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -39,11 +39,10 @@
 
 dovecot_auth_LDADD = \
 	libpassword.a \
-	../lib-settings/libsettings.a \
 	../lib-ntlm/libntlm.a \
 	../lib-otp/libotp.a \
-	../lib-sql/libsql.a \
-	../lib/liblib.a \
+	../lib-sql/libsql.la \
+	../lib-dovecot/libdovecot.la \
 	$(AUTH_LIBS) \
 	$(MODULE_LIBS)
 
@@ -158,7 +157,7 @@
 endif
 
 checkpassword_reply_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 
 checkpassword_reply_sources = \
 	checkpassword-reply.c
--- a/src/config/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/config/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -10,8 +10,7 @@
 	-DSSLDIR=\""$(ssldir)\""
 
 doveconf_LDADD = \
-	../lib-settings/libsettings.a \
-	../lib/liblib.a \
+	../lib-dovecot/libdovecot.la \
 	$(RAND_LIBS)
 
 doveconf_SOURCES = \
--- a/src/deliver/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/deliver/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -21,17 +21,9 @@
 
 deliver_LDFLAGS = -export-dynamic
 
-# get some functions included which only plugins use. liblib should probably
-# be a shared library so this wouldn't be needed..
-unused_objects = \
-	../lib/mountpoint.o \
-	../lib-imap/imap-util.o
-
 libs = \
-	$(STORAGE_LIBS) \
-	../lib-dict/libdict.a \
-	../lib-settings/libsettings.a \
-	$(unused_objects)
+	../lib-storage/libdovecot-storage.la \
+	../lib-dovecot/libdovecot.la
 
 deliver_LDADD = \
 	$(libs) \
--- a/src/dict/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/dict/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -13,10 +13,8 @@
 
 libs = \
 	../lib-dict/libdict_backend.a \
-	../lib-dict/libdict.a \
-	../lib-sql/libsql.a \
-	../lib-settings/libsettings.a \
-	../lib/liblib.a
+	../lib-sql/libsql.la \
+	../lib-dovecot/libdovecot.la
 
 dict_LDADD = \
 	$(libs) \
--- a/src/imap-login/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/imap-login/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -9,12 +9,8 @@
 	-I$(top_srcdir)/src/login-common
 
 imap_login_LDADD = \
-	../login-common/liblogin-common.a \
-	../lib-imap/libimap.a \
-	../lib-auth/libauth.a \
-	../lib-settings/libsettings.a \
-	../lib/liblib.a \
-	$(SSL_LIBS)
+	../login-common/libdovecot-login.la \
+	../lib-dovecot/libdovecot.la
 
 imap_login_SOURCES = \
 	client.c \
--- a/src/imap/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/imap/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -15,16 +15,9 @@
 
 imap_LDFLAGS = -export-dynamic
 
-# get some functions included which only plugins use. liblib should probably
-# be a shared library so this wouldn't be needed..
-unused_objects = \
-	../lib/mountpoint.o
-
 libs = \
-	$(STORAGE_LIBS) \
-	../lib-dict/libdict.a \
-	../lib-settings/libsettings.a \
-	$(unused_objects)
+	../lib-storage/libdovecot-storage.la \
+	../lib-dovecot/libdovecot.la
 
 imap_LDADD = \
 	$(libs) \
--- a/src/lib-auth/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-auth/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,9 +1,9 @@
-noinst_LIBRARIES = libauth.a
+noinst_LTLIBRARIES = libauth.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib
 
-libauth_a_SOURCES = \
+libauth_la_SOURCES = \
 	auth-client.c \
 	auth-master.c \
 	auth-server-connection.c \
--- a/src/lib-charset/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-charset/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,9 +1,9 @@
-noinst_LIBRARIES = libcharset.a
+noinst_LTLIBRARIES = libcharset.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib
 
-libcharset_a_SOURCES = \
+libcharset_la_SOURCES = \
 	charset-iconv.c \
 	charset-utf8.c
 
--- a/src/lib-dict/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-dict/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,5 @@
-noinst_LIBRARIES = libdict.a libdict_backend.a
+noinst_LTLIBRARIES = libdict.la
+noinst_LIBRARIES = libdict_backend.a
 
 dict_drivers = @dict_drivers@
 
@@ -19,7 +20,7 @@
 	dict-sql.c \
 	dict-sql-settings.c
 
-libdict_a_SOURCES = \
+libdict_la_SOURCES = \
 	$(base_sources)
 
 libdict_backend_a_SOURCES = \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/lib-dovecot/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -0,0 +1,21 @@
+pkglib_LTLIBRARIES = libdovecot.la
+
+libdovecot_la_SOURCES = 
+
+libs = \
+	../lib-settings/libsettings.la \
+	../lib-dict/libdict.la \
+	../lib-index/libindex.la \
+	../lib-imap/libimap.la \
+	../lib-mail/libmail.la \
+	../lib-auth/libauth.la \
+	../lib-charset/libcharset.la \
+	../lib/liblib.la
+
+libdovecot_la_LIBADD = \
+	$(libs) \
+	$(MODULE_LIBS)
+
+libdovecot_la_DEPENDENCIES = $(libs)
+
+libdovecot_la_LDFLAGS = -export-dynamic
--- a/src/lib-imap/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-imap/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,11 +1,11 @@
-noinst_LIBRARIES = libimap.a
+noinst_LTLIBRARIES = libimap.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
 	-I$(top_srcdir)/src/lib-charset \
 	-I$(top_srcdir)/src/lib-mail
 
-libimap_a_SOURCES = \
+libimap_la_SOURCES = \
 	imap-base-subject.c \
 	imap-bodystructure.c \
 	imap-date.c \
--- a/src/lib-index/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-index/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,10 +1,10 @@
-noinst_LIBRARIES = libindex.a
+noinst_LTLIBRARIES = libindex.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
 	-I$(top_srcdir)/src/lib-mail
 
-libindex_a_SOURCES = \
+libindex_la_SOURCES = \
 	mail-cache.c \
 	mail-cache-compress.c \
 	mail-cache-decisions.c \
--- a/src/lib-mail/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-mail/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,10 +1,10 @@
-noinst_LIBRARIES = libmail.a
+noinst_LTLIBRARIES = libmail.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
 	-I$(top_srcdir)/src/lib-charset
 
-libmail_a_SOURCES = \
+libmail_la_SOURCES = \
 	istream-header-filter.c \
 	mbox-from.c \
 	message-address.c \
--- a/src/lib-settings/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-settings/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,9 +1,9 @@
-noinst_LIBRARIES = libsettings.a
+noinst_LTLIBRARIES = libsettings.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib
 
-libsettings_a_SOURCES = \
+libsettings_la_SOURCES = \
 	settings.c \
 	settings-parser.c
 
--- a/src/lib-sql/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-sql/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libsql.a
+noinst_LTLIBRARIES = libsql.la
 
 SQL_DRIVER_PLUGINS =
 
@@ -42,7 +42,7 @@
 	driver-sqlite.c
 endif
 
-libsql_a_SOURCES = \
+libsql_la_SOURCES = \
 	$(dist_sources) \
 	$(driver_sources) \
 	sql-drivers-register.c
--- a/src/lib-storage/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,6 +1,6 @@
 SUBDIRS = list index register
 
-noinst_LIBRARIES = libstorage.a
+pkglib_LTLIBRARIES = libdovecot-storage.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -11,7 +11,7 @@
 	-I$(top_srcdir)/src/lib-index \
 	-DPKG_RUNDIR=\""$(rundir)"\"
 
-libstorage_a_SOURCES = \
+libdovecot_storage_la_SOURCES = \
 	mail.c \
 	mail-copy.c \
 	mail-error.c \
@@ -26,6 +26,16 @@
 	mailbox-tree.c \
 	mailbox-uidvalidity.c
 
+libs = \
+	list/libstorage_list.la \
+	index/libstorage_index.la \
+	register/libstorage_register.la	
+
+libdovecot_storage_la_LIBADD = $(libs)
+libdovecot_storage_la_DEPENDENCIES = $(libs)
+
+libdovecot_storage_la_LDFLAGS = -export-dynamic
+
 headers = \
 	mail-copy.h \
 	mail-error.h \
--- a/src/lib-storage/index/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,6 +1,6 @@
 SUBDIRS = maildir mbox dbox cydir raw shared
 
-noinst_LIBRARIES = libstorage_index.a
+noinst_LTLIBRARIES = libstorage_index.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-I$(top_srcdir)/src/lib-index \
 	-I$(top_srcdir)/src/lib-storage
 
-libstorage_index_a_SOURCES = \
+libstorage_index_la_SOURCES = \
 	index-fetch.c \
 	index-mail.c \
 	index-mail-headers.c \
@@ -28,6 +28,9 @@
 	index-thread-links.c \
 	index-transaction.c
 
+libstorage_index_la_LIBADD = @LINKED_STORAGE_LIBS@
+libstorage_index_la_DEPENDENCIES = @LINKED_STORAGE_LIBS@
+
 headers = \
 	index-mail.h \
 	index-search-result.h \
--- a/src/lib-storage/index/cydir/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/cydir/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_cydir.a
+noinst_LTLIBRARIES = libstorage_cydir.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -8,7 +8,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_cydir_a_SOURCES = \
+libstorage_cydir_la_SOURCES = \
 	cydir-mail.c \
 	cydir-save.c \
 	cydir-sync.c \
--- a/src/lib-storage/index/dbox/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/dbox/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_dbox.a
+noinst_LTLIBRARIES = libstorage_dbox.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_dbox_a_SOURCES = \
+libstorage_dbox_la_SOURCES = \
 	dbox-file.c \
 	dbox-file-fix.c \
 	dbox-file-maildir.c \
--- a/src/lib-storage/index/maildir/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/maildir/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_maildir.a
+noinst_LTLIBRARIES = libstorage_maildir.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_maildir_a_SOURCES = \
+libstorage_maildir_la_SOURCES = \
 	maildir-copy.c \
 	maildir-filename.c \
 	maildir-keywords.c \
--- a/src/lib-storage/index/mbox/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/mbox/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_mbox.a
+noinst_LTLIBRARIES = libstorage_mbox.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_mbox_a_SOURCES = \
+libstorage_mbox_la_SOURCES = \
 	istream-raw-mbox.c \
 	mbox-file.c \
 	mbox-lock.c \
--- a/src/lib-storage/index/raw/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/raw/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_raw.a
+noinst_LTLIBRARIES = libstorage_raw.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -8,7 +8,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_raw_a_SOURCES = \
+libstorage_raw_la_SOURCES = \
 	raw-mail.c \
 	raw-sync.c \
 	raw-storage.c \
--- a/src/lib-storage/index/shared/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/index/shared/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_shared.a
+noinst_LTLIBRARIES = libstorage_shared.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-I$(top_srcdir)/src/lib-storage/index \
 	-DPKG_RUNDIR=\""$(rundir)"\"
 
-libstorage_shared_a_SOURCES = \
+libstorage_shared_la_SOURCES = \
 	shared-list.c \
 	shared-storage.c
 
--- a/src/lib-storage/list/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/list/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage_list.a
+noinst_LTLIBRARIES = libstorage_list.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -8,7 +8,7 @@
 	-I$(top_srcdir)/src/lib-storage \
 	-I$(top_srcdir)/src/lib-storage/index
 
-libstorage_list_a_SOURCES = \
+libstorage_list_la_SOURCES = \
 	index-mailbox-list.c \
 	index-mailbox-list-sync.c \
 	mailbox-list-fs.c \
--- a/src/lib-storage/register/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib-storage/register/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = libstorage-register.a
+noinst_LTLIBRARIES = libstorage_register.la
 
 BUILT_SOURCES = mail-storage-register.c
 mail_storages = @mail_storages@
@@ -40,7 +40,7 @@
 	-I$(top_srcdir)/src/lib-mail \
 	-I$(top_srcdir)/src/lib-storage
 
-libstorage_register_a_SOURCES = \
+libstorage_register_la_SOURCES = \
 	mail-storage-register.c \
 	mailbox-list-register.c
 
--- a/src/lib/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/lib/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = liblib.a
+noinst_LTLIBRARIES = liblib.la
 
 BUILT_SOURCES = unicodemap.c
 
@@ -8,7 +8,7 @@
 	test -f UnicodeData.txt || wget http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
 	perl $(srcdir)/unicodemap.pl < UnicodeData.txt > $@
 
-liblib_a_SOURCES = \
+liblib_la_SOURCES = \
 	array.c \
 	aqueue.c \
 	backtrace-string.c \
--- a/src/login-common/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/login-common/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -1,4 +1,4 @@
-noinst_LIBRARIES = liblogin-common.a
+pkglib_LTLIBRARIES = libdovecot-login.la
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/src/lib \
@@ -9,7 +9,7 @@
 	-DSBINDIR=\""$(sbindir)"\" \
 	-DSSLDIR=\""$(ssldir)\""
 
-liblogin_common_a_SOURCES = \
+libdovecot_login_la_SOURCES = \
 	client-common.c \
 	login-proxy.c \
 	login-settings.c \
@@ -20,6 +20,9 @@
 	ssl-proxy-gnutls.c \
 	ssl-proxy-openssl.c
 
+libdovecot_login_la_LIBADD = \
+	$(SSL_LIBS)
+
 noinst_HEADERS = \
 	client-common.h \
 	login-proxy.h \
--- a/src/master/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/master/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -16,8 +16,7 @@
 
 dovecot_LDADD = \
 	$(LIBCAP) \
-	../lib-settings/libsettings.a \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 
 dovecot_SOURCES = \
 	auth-process.c \
@@ -60,6 +59,6 @@
 	ssl-init-gnutls.c
 
 ssl_build_param_LDADD = \
-	../lib/liblib.a \
+	../lib-dovecot/libdovecot.la \
 	$(SSL_LIBS)
 
--- a/src/plugins/convert/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/plugins/convert/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -32,8 +32,9 @@
 common_objects = \
 	convert-storage.lo
 
-libs = $(STORAGE_LIBS) \
-	$(top_builddir)/src/lib-settings/libsettings.a
+libs = \
+	$(top_builddir)/src/lib-storage/libdovecot-storage.la \
+	$(top_builddir)/src/lib-dovecot/libdovecot.la
 
 convert_tool_LDADD = \
 	$(common_objects) \
--- a/src/plugins/expire/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/plugins/expire/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -35,9 +35,8 @@
 	expire-tool.c
 
 libs = \
-	$(STORAGE_LIBS) \
-	$(top_builddir)/src/lib-settings/libsettings.a \
-	$(top_builddir)/src/lib-dict/libdict.a
+	$(top_builddir)/src/lib-storage/libdovecot-storage.la \
+	$(top_builddir)/src/lib-dovecot/libdovecot.la
 
 expire_tool_LDADD = \
 	$(libs) \
--- a/src/plugins/fts-squat/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/plugins/fts-squat/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -31,7 +31,9 @@
 	squat-trie.lo \
 	squat-uidlist.lo
 
-libs = $(STORAGE_LIBS)
+libs = \
+	$(top_builddir)/src/lib-storage/libdovecot-storage.la \
+	$(top_builddir)/src/lib-dovecot/libdovecot.la
 
 squat_test_LDADD = \
 	$(common_objects) \
--- a/src/pop3-login/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/pop3-login/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -8,11 +8,8 @@
 	-I$(top_srcdir)/src/login-common
 
 pop3_login_LDADD = \
-	../login-common/liblogin-common.a \
-	../lib-auth/libauth.a \
-	../lib-settings/libsettings.a \
-	../lib/liblib.a \
-	$(SSL_LIBS)
+	../login-common/libdovecot-login.la \
+	../lib-dovecot/libdovecot.la
 
 pop3_login_SOURCES = \
 	client.c \
--- a/src/pop3/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/pop3/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -13,17 +13,9 @@
 
 pop3_LDFLAGS = -export-dynamic
 
-# get some functions included which only plugins use. liblib should probably
-# be a shared library so this wouldn't be needed..
-unused_objects = \
-	../lib/mountpoint.o \
-	../lib-imap/imap-util.o
-
 libs = \
-	$(STORAGE_LIBS) \
-	../lib-dict/libdict.a \
-	../lib-settings/libsettings.a \
-	$(unused_objects)
+	../lib-storage/libdovecot-storage.la \
+	../lib-dovecot/libdovecot.la
 
 pop3_LDADD = \
 	$(libs) \
--- a/src/tests/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/tests/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -18,7 +18,7 @@
 
 test_lib_LDADD = \
 	libtest.a \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 
 test_mail_SOURCES = \
 	test-mail.c
@@ -33,14 +33,9 @@
 test_mail_LDADD = \
 	$(LIBICONV) \
 	libtest.a \
-	../lib-mail/libmail.a \
-	../lib-charset/libcharset.a \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 
 test_imap_LDADD = \
 	$(LIBICONV) \
 	libtest.a \
-	../lib-imap/libimap.a \
-	../lib-mail/libmail.a \
-	../lib-charset/libcharset.a \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
--- a/src/util/Makefile.am	Fri Apr 03 19:04:43 2009 -0400
+++ b/src/util/Makefile.am	Fri Apr 03 19:47:59 2009 -0400
@@ -21,44 +21,42 @@
 	-I$(top_srcdir)/src/auth
 
 rawlog_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 rawlog_SOURCES = \
 	rawlog.c
 
 gdbhelper_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 gdbhelper_SOURCES = \
 	gdbhelper.c
 
 idxview_LDADD = \
-	../lib-index/libindex.a \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 idxview_SOURCES = \
 	idxview.c
 
 imap_utf7_LDADD = \
-	../lib-imap/imap-utf7.o \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 imap_utf7_SOURCES = \
 	imap-utf7.c
 
 listview_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 listview_SOURCES = \
 	listview.c
 
 logview_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 logview_SOURCES = \
 	logview.c
 
 maildirlock_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 maildirlock_SOURCES = \
 	maildirlock.c
 
 threadview_LDADD = \
-	../lib/liblib.a
+	../lib-dovecot/libdovecot.la
 threadview_SOURCES = \
 	threadview.c
 
@@ -66,7 +64,7 @@
 	../auth/libpassword.a \
 	../lib-ntlm/libntlm.a \
 	../lib-otp/libotp.a \
-	../lib/liblib.a \
+	../lib-dovecot/libdovecot.la \
 	$(AUTH_LIBS) \
 	$(MODULE_LIBS)