]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
m4: want_lua.m4 - Maintain code quality
authorKarl Fleischmann <karl.fleischmann@open-xchange.com>
Thu, 16 Jun 2022 13:27:02 +0000 (15:27 +0200)
committerKarl Fleischmann <karl.fleischmann@open-xchange.com>
Mon, 4 Jul 2022 09:43:26 +0000 (11:43 +0200)
This commit is mainly for making the lua-related macros consistent with
the rest of the configurations. No functional changes were made:
- Move lua argument registration into configure to be co-located with
  other options,
- move lua conditionals into want_lua macro for increased consistency,
- rename parameter to "want_lua", and
- fix indentation.

configure.ac
m4/want_lua.m4

index 16323e851454014a3567a011f0d19f6e507bba73..c2992b6765dfed70cbcb47ed5a507adf1fdd18f4 100644 (file)
@@ -216,6 +216,11 @@ AC_ARG_WITH([systemd],
    want_systemd="auto"
 )
 
+AC_ARG_WITH([lua],
+AS_HELP_STRING([--with-lua=yes|plugin], [Build with Lua bindings]),
+  TEST_WITH(lua, $withval, plugin),
+  want_lua=no)
+
 DOVECOT_WANT_SYSTEMD
 
 dovecot_moduledir="$libdir/dovecot"
@@ -525,15 +530,6 @@ DOVECOT_WANT_CASSANDRA
 
 DOVECOT_SQL
 
-AM_CONDITIONAL([AUTH_LUA_PLUGIN], [test "x$with_lua_plugin" = "xyes"])
-AM_CONDITIONAL([HAVE_LUA], [test "x$with_lua" = "xyes"])
-AS_IF([test "x$with_lua" = "xyes"],
-  AS_IF([test "x$with_lua_plugin" = "xyes"],
-      [userdb="$userdb lua (plugin)"; passdb="$passdb lua (plugin)"],
-      [userdb="$userdb lua"; passdb="$passdb lua"],
-  ), [])
-AM_CONDITIONAL([DLUA_WITH_YIELDS], [test "$dlua_with_yields" = "yes"])
-
 if test $have_modules = yes; then
   AC_DEFINE(HAVE_MODULES,, [Define if you have dynamic module support])
   AC_SUBST(MODULE_LIBS)
@@ -625,7 +621,7 @@ LIBDOVECOT_SQL='$(top_builddir)/src/lib-sql/libsql.la'
 LIBDOVECOT_COMPRESS='$(top_builddir)/src/lib-compression/libcompression.la'
 LIBDOVECOT_LIBFTS='$(top_builddir)/src/lib-fts/libfts.la'
 
-if test $with_lua != no; then
+if test $want_lua != no; then
   LIBDOVECOT_LUA='$(top_builddir)/src/lib-lua/libdovecot-lua.la'
 else
   LIBDOVECOT_LUA=''
index 5e82ad0f21586a3e9029c04cf8cabad37d426557..bb7e1f935b696f2670c5367717bf32812f623d2a 100644 (file)
@@ -1,13 +1,7 @@
-AC_DEFUN([DOVECOT_WANT_LUA],[
+AC_DEFUN([DOVECOT_WANT_LUA], [
   have_lua=no
 
-  AC_ARG_WITH([lua],
-    [AS_HELP_STRING([--with-lua=yes|plugin], [build Lua Bindings])],
-    [with_lua=$withval],
-    [with_lua=no]
-  )
-
-  AS_IF([test "$with_lua" != "no"], [
+  AS_IF([test "$want_lua" != "no"], [
     for LUAPC in lua5.3 lua-5.3 lua53 lua5.1 lua-5.1 lua51 lua; do
       PKG_CHECK_MODULES([LUA], [$LUAPC >= 5.1 $LUAPC != 5.2], [
         have_lua=yes
@@ -18,7 +12,7 @@ AC_DEFUN([DOVECOT_WANT_LUA],[
       ])
     done
 
-    AS_IF([test "$with_lua" = "yes" && test "$have_lua" = "no"], [
+    AS_IF([test "$want_lua" = "yes" && test "$have_lua" = "no"], [
       AC_MSG_ERROR([cannot build with Lua support: lua not found])
     ])
   ])
@@ -26,32 +20,46 @@ AC_DEFUN([DOVECOT_WANT_LUA],[
   AS_IF([test "$have_lua" != "no"], [
     AC_DEFINE([HAVE_LUA], [1], [Define to 1 if you have Lua])
 
-    AS_IF([test "$have_lua" = "yes"],
-     AC_DEFINE([BUILTIN_LUA],, [Lua support is builtin])
-   )
-
-   dnl Check if various lua functions are present
-   old_CFLAGS="$CFLAGS"
-   CFLAGS="$CFLAGS $LUA_CFLAGS"
-   old_LIBS="$LIBS"
-   LIBS="$LIBS $LUA_LIBS"
-
-   AC_CHECK_FUNCS([luaL_setfuncs])
-   AC_CHECK_FUNCS([luaL_setmetatable])
-   AC_CHECK_FUNCS([lua_isinteger])
-   AC_CHECK_FUNCS([lua_resume])
-   AC_CHECK_FUNCS([lua_seti])
-   AC_CHECK_FUNCS([lua_tointegerx])
-   AC_CHECK_FUNCS([lua_yieldk])
-
-   AS_IF([test "$ac_cv_func_lua_resume" = "yes" -a \
-               "$ac_cv_func_lua_yieldk" = "yes"],
-     AC_DEFINE([DLUA_WITH_YIELDS],,
-       [Lua scripts will be able to yield])
-     dlua_with_yields=yes
-   )
-
-   CFLAGS="$old_CFLAGS"
-   LIBS="$old_LIBS"
-  )
+    AS_IF([test "$want_lua" = "yes"], [
+      AC_DEFINE([BUILTIN_LUA],, [Lua support is builtin])
+    ])
+
+    dnl at this point $want_lua is either "plugin", or "yes", so add
+    dnl values to userdb and passdb accordingly
+    AS_IF([test "$want_lua" = "plugin"], [
+      with_lua_plugin=yes
+      userdb="$userdb lua (plugin)"
+      passdb="$passdb lua (plugin)"
+    ], [
+      userdb="$userdb lua"
+      passdb="$passdb lua"
+    ])
+
+    dnl Check if various lua functions are present
+    old_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $LUA_CFLAGS"
+    old_LIBS="$LIBS"
+    LIBS="$LIBS $LUA_LIBS"
+
+    AC_CHECK_FUNCS([luaL_setfuncs])
+    AC_CHECK_FUNCS([luaL_setmetatable])
+    AC_CHECK_FUNCS([lua_isinteger])
+    AC_CHECK_FUNCS([lua_resume])
+    AC_CHECK_FUNCS([lua_seti])
+    AC_CHECK_FUNCS([lua_tointegerx])
+    AC_CHECK_FUNCS([lua_yieldk])
+
+    AS_IF([test "$ac_cv_func_lua_resume" = "yes" -a \
+                "$ac_cv_func_lua_yieldk" = "yes"], [
+      AC_DEFINE([DLUA_WITH_YIELDS],, [Lua scripts will be able to yield])
+      dlua_with_yields=yes
+    ])
+
+    CFLAGS="$old_CFLAGS"
+    LIBS="$old_LIBS"
+  ])
+
+  AM_CONDITIONAL([AUTH_LUA_PLUGIN], [test "$with_lua_plugin" = "yes"])
+  AM_CONDITIONAL([HAVE_LUA], [test "$have_lua" != "no"])
+  AM_CONDITIONAL([DLUA_WITH_YIELDS], [test "$dlua_with_yields" = "yes"])
 ])