commit 4b23885cce72c47f3c83c743fdca880cfa90bbf2 Author: Jacob Welsh AuthorDate: Wed Nov 2 20:51:04 2022 +0000 Commit: Jacob Welsh CommitDate: Wed Nov 2 20:51:04 2022 +0000 Type: option removal configure, m4, lib-sql, master: remove plugin/module mode for SQL drivers so they're either builtin or absent As with the authdb and mech options. diff --git a/configure.ac b/configure.ac index 60023240b6..dbc1a79f3d 100644 --- a/configure.ac +++ b/configure.ac @@ -104,13 +104,6 @@ AS_HELP_STRING([--with-cdb], [Build with CDB support]), TEST_WITH(cdb, $withval), want_cdb=no) -dnl The --with-sql is useful only if Dovecot is being built with all the SQL -dnl drivers as modules. If any SQL driver is built-in, this option is ignored. -AC_ARG_WITH(sql, -AS_HELP_STRING([--with-sql=yes|plugin], [Build with generic SQL support]), - TEST_WITH(sql, $withval, plugin), - want_sql=no) - AC_ARG_WITH(pgsql, AS_HELP_STRING([--with-pgsql], [Build with PostgreSQL driver support]), TEST_WITH(pgsql, $withval), @@ -673,7 +666,6 @@ AM_CONDITIONAL(BUILD_PGSQL, test "$build_pgsql" = "yes") AM_CONDITIONAL(BUILD_MYSQL, test "$build_mysql" = "yes") AM_CONDITIONAL(BUILD_SQLITE, test "$build_sqlite" = "yes") AM_CONDITIONAL(BUILD_CASSANDRA, test "$build_cassandra" = "yes") -AM_CONDITIONAL(SQL_PLUGINS, test "$want_sql" = "plugin") dnl ** dnl ** Plugins @@ -877,10 +869,6 @@ dovecot-config.in]) AC_OUTPUT -if test "$want_sql" = "plugin"; then - sql_drivers="$sql_drivers (plugins)" -fi - not_passdb=`echo "$not_passdb"|sed 's/ / -/g'` not_userdb=`echo "$not_userdb"|sed 's/ / -/g'` not_sql_drivers=`echo "$not_sql_drivers"|sed 's/ / -/g'` diff --git a/m4/sql.m4 b/m4/sql.m4 index 3a8b67ec6e..df5dfa1cf7 100644 --- a/m4/sql.m4 +++ b/m4/sql.m4 @@ -1,14 +1,10 @@ AC_DEFUN([DOVECOT_SQL], [ SQL_CFLAGS="$MYSQL_CFLAGS $PGSQL_CFLAGS $SQLITE_CFLAGS $CASSANDRA_CFLAGS" - if test "$want_sql" != "plugin"; then - SQL_LIBS="$MYSQL_LIBS $PGSQL_LIBS $SQLITE_LIBS $CASSANDRA_LIBS" - else - AC_DEFINE(SQL_DRIVER_PLUGINS,, [Build SQL drivers as plugins]) - fi + SQL_LIBS="$MYSQL_LIBS $PGSQL_LIBS $SQLITE_LIBS $CASSANDRA_LIBS" sql_drivers= not_sql_drivers= - if test "$found_sql_drivers" != "" || test "$want_sql" != "no"; then + if test "$found_sql_drivers" != ""; then sql_drivers="$found_sql_drivers" AC_DEFINE(PASSDB_SQL,, [Build with SQL support]) diff --git a/src/lib-sql/Makefile.am b/src/lib-sql/Makefile.am index 89c3d2dcdd..0e54677ee9 100644 --- a/src/lib-sql/Makefile.am +++ b/src/lib-sql/Makefile.am @@ -1,37 +1,8 @@ noinst_LTLIBRARIES = libsql.la libdriver_test.la -SQL_DRIVER_PLUGINS = - # automake seems to force making this unconditional.. NOPLUGIN_LDFLAGS = -if SQL_PLUGINS -if BUILD_MYSQL -MYSQL_LIB = libdriver_mysql.la -SQL_DRIVER_PLUGINS += mysql -endif -if BUILD_PGSQL -PGSQL_LIB = libdriver_pgsql.la -SQL_DRIVER_PLUGINS += pgsql -endif -if BUILD_SQLITE -SQLITE_LIB = libdriver_sqlite.la -SQL_DRIVER_PLUGINS += sqlite -endif -if BUILD_CASSANDRA -CASSANDRA_LIB = libdriver_cassandra.la -SQL_DRIVER_PLUGINS += cassandra -endif - -sql_module_LTLIBRARIES = \ - $(MYSQL_LIB) \ - $(PGSQL_LIB) \ - $(SQLITE_LIB) \ - $(CASSANDRA_LIB) - -sql_moduledir = $(moduledir) -endif - sql_drivers = @sql_drivers@ AM_CPPFLAGS = \ @@ -43,13 +14,11 @@ dist_sources = \ sql-api.c \ sql-db-cache.c -if ! SQL_PLUGINS driver_sources = \ driver-mysql.c \ driver-pgsql.c \ driver-sqlite.c \ driver-cassandra.c -endif libsql_la_SOURCES = \ $(dist_sources) \ @@ -62,29 +31,6 @@ nodist_libsql_la_SOURCES = sql-drivers-register.c deplibs = \ ../lib-dovecot/libdovecot.la -if SQL_PLUGINS -libdriver_mysql_la_LDFLAGS = -module -avoid-version -libdriver_mysql_la_LIBADD = $(MYSQL_LIBS) -libdriver_mysql_la_CPPFLAGS = $(AM_CPPFLAGS) $(MYSQL_CFLAGS) -libdriver_mysql_la_SOURCES = driver-mysql.c - -libdriver_pgsql_la_LDFLAGS = -module -avoid-version -libdriver_pgsql_la_LIBADD = $(PGSQL_LIBS) -libdriver_pgsql_la_CPPFLAGS = $(AM_CPPFLAGS) $(PGSQL_CFLAGS) -libdriver_pgsql_la_SOURCES = driver-pgsql.c - -libdriver_sqlite_la_LDFLAGS = -module -avoid-version -libdriver_sqlite_la_LIBADD = $(SQLITE_LIBS) -libdriver_sqlite_la_CPPFLAGS = $(AM_CPPFLAGS) $(SQLITE_CFLAGS) -libdriver_sqlite_la_SOURCES = driver-sqlite.c - -libdriver_cassandra_la_LDFLAGS = -module -avoid-version -libdriver_cassandra_la_LIBADD = $(CASSANDRA_LIBS) -libdriver_cassandra_la_CPPFLAGS = $(AM_CPPFLAGS) $(CASSANDRA_CFLAGS) -libdriver_cassandra_la_SOURCES = driver-cassandra.c -else -endif - libdriver_test_la_LDFLAGS = -avoid-version libdriver_test_la_CPPFLAGS = $(AM_CPPFLAGS) \ -I$(top_srcdir)/src/lib-test @@ -111,34 +57,18 @@ sql-drivers-register.c: Makefile echo '/* this file automatically generated by Makefile */' >$@ echo '#include "lib.h"' >>$@ echo '#include "sql-api.h"' >>$@ -if ! SQL_PLUGINS for i in $(sql_drivers) null; do \ if [ "$${i}" != "null" ]; then \ echo "extern struct sql_db driver_$${i}_db;" >>$@ ; \ fi; \ done -endif echo 'void sql_drivers_register_all(void) {' >>$@ -if ! SQL_PLUGINS for i in $(sql_drivers) null; do \ if [ "$${i}" != "null" ]; then \ echo "sql_driver_register(&driver_$${i}_db);" >>$@ ; \ fi; \ done -endif echo '}' >>$@ -if SQL_PLUGINS -install-exec-local: - for d in auth dict; do \ - $(mkdir_p) $(DESTDIR)$(moduledir)/$$d; \ - for driver in $(SQL_DRIVER_PLUGINS); do \ - rm -f $(DESTDIR)$(moduledir)/$$d/libdriver_$$driver.so; \ - $(LN_S) ../libdriver_$$driver.so $(DESTDIR)$(moduledir)/$$d; \ - done; \ - done -endif - - distclean-generic: rm -f Makefile sql-drivers-register.c diff --git a/src/lib-sql/driver-cassandra.c b/src/lib-sql/driver-cassandra.c index 4e66809573..49f1035b08 100644 --- a/src/lib-sql/driver-cassandra.c +++ b/src/lib-sql/driver-cassandra.c @@ -2561,19 +2561,4 @@ const struct sql_result driver_cassandra_result = { } }; -const char *driver_cassandra_version = DOVECOT_ABI_VERSION; - -void driver_cassandra_init(void); -void driver_cassandra_deinit(void); - -void driver_cassandra_init(void) -{ - sql_driver_register(&driver_cassandra_db); -} - -void driver_cassandra_deinit(void) -{ - sql_driver_unregister(&driver_cassandra_db); -} - #endif diff --git a/src/lib-sql/driver-mysql.c b/src/lib-sql/driver-mysql.c index b8308cc1ab..bea67a5791 100644 --- a/src/lib-sql/driver-mysql.c +++ b/src/lib-sql/driver-mysql.c @@ -817,19 +817,4 @@ const struct sql_result driver_mysql_error_result = { .failed_try_retry = TRUE }; -const char *driver_mysql_version = DOVECOT_ABI_VERSION; - -void driver_mysql_init(void); -void driver_mysql_deinit(void); - -void driver_mysql_init(void) -{ - sql_driver_register(&driver_mysql_db); -} - -void driver_mysql_deinit(void) -{ - sql_driver_unregister(&driver_mysql_db); -} - #endif diff --git a/src/lib-sql/driver-pgsql.c b/src/lib-sql/driver-pgsql.c index e4b0c63f67..de9b0a9615 100644 --- a/src/lib-sql/driver-pgsql.c +++ b/src/lib-sql/driver-pgsql.c @@ -1326,19 +1326,4 @@ const struct sql_result driver_pgsql_result = { } }; -const char *driver_pgsql_version = DOVECOT_ABI_VERSION; - -void driver_pgsql_init(void); -void driver_pgsql_deinit(void); - -void driver_pgsql_init(void) -{ - sql_driver_register(&driver_pgsql_db); -} - -void driver_pgsql_deinit(void) -{ - sql_driver_unregister(&driver_pgsql_db); -} - #endif diff --git a/src/lib-sql/driver-sqlite.c b/src/lib-sql/driver-sqlite.c index e05ed1843d..0c5cf0036f 100644 --- a/src/lib-sql/driver-sqlite.c +++ b/src/lib-sql/driver-sqlite.c @@ -537,19 +537,4 @@ const struct sql_result driver_sqlite_error_result = { } }; -const char *driver_sqlite_version = DOVECOT_ABI_VERSION; - -void driver_sqlite_init(void); -void driver_sqlite_deinit(void); - -void driver_sqlite_init(void) -{ - sql_driver_register(&driver_sqlite_db); -} - -void driver_sqlite_deinit(void) -{ - sql_driver_unregister(&driver_sqlite_db); -} - #endif diff --git a/src/master/main.c b/src/master/main.c index 00eda1d542..cf12184dff 100644 --- a/src/master/main.c +++ b/src/master/main.c @@ -689,11 +689,7 @@ static void print_build_options(void) " openssl" #endif " io_block_size=%u" -#ifdef SQL_DRIVER_PLUGINS - "\nSQL driver plugins:" -#else "\nSQL drivers:" -#endif #ifdef BUILD_CASSANDRA " cassandra" #endif