From: Aki Tuomi Date: Wed, 8 Nov 2017 12:09:26 +0000 (+0200) Subject: configure: Detect lua X-Git-Tag: 2.3.0.rc1~411 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=feaa7d39544129c232f61e5c79d89de2c7d529c8;p=thirdparty%2Fdovecot%2Fcore.git configure: Detect lua --- diff --git a/configure.ac b/configure.ac index 154f08f83c..4ee09d8a86 100644 --- a/configure.ac +++ b/configure.ac @@ -541,6 +541,9 @@ userdb="$userdb static" dict_drivers="" dnl *** auth/userdb/dict things +DOVECOT_WANT_LUA_PLUGIN +DOVECOT_WANT_LUA +DOVECOT_WANT_LUAJIT DOVECOT_WANT_PREFETCH DOVECOT_WANT_PASSWD DOVECOT_WANT_SHADOW @@ -561,6 +564,14 @@ DOVECOT_WANT_VPOPMAIL DOVECOT_SQL +AM_CONDITIONAL([HAVE_LUA], [test "x$with_luajit" = "xyes" || test "x$with_lua" = "xyes"]) + +AS_IF([test "x$with_luajit" = "xyes" || 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"], + ), []) + if test $have_modules = yes; then AC_DEFINE(HAVE_MODULES,, [Define if you have dynamic module support]) AC_SUBST(MODULE_LIBS) diff --git a/m4/want_lua.m4 b/m4/want_lua.m4 new file mode 100644 index 0000000000..0ff3cebe70 --- /dev/null +++ b/m4/want_lua.m4 @@ -0,0 +1,79 @@ +AC_DEFUN([DOVECOT_WANT_LUA_PLUGIN],[ + AC_ARG_WITH([lua-plugin], + [AS_HELP_STRING([--with-lua-plugin], [build Lua as plugin @<:@default=no@:>@])], + [with_lua_plugin=$withval], + [with_lua_plugin=no] + ) + AM_CONDITIONAL([AUTH_LUA_PLUGIN], [test "x$with_lua_plugin" = "xyes"]) +]) + +AC_DEFUN([DOVECOT_WANT_LUAJIT],[ + AS_IF([test "$xwith_luajit" = "xplugin"], [with_lua_plugin=yes], []) + AC_MSG_CHECKING([whether we will be linking in LuaJIT]) + AC_ARG_WITH([luajit], + [AS_HELP_STRING([--with-luajit], [build LuaJIT bindings @<:@default=auto@:>@])], + [with_luajit=$withval], + [with_luajit=no] + ) + AC_MSG_RESULT([$with_luajit]) + + AS_IF([test "x$with_luajit" != "xno"], [ + LUAJITPC="$with_luajit" + PKG_CHECK_MODULES([LUA], [luajit], + [AC_DEFINE([HAVE_LUA], [1], [Define to 1 if you have LuaJIT])], + [LUAJITPC=""] + ) + AS_IF([test "x$LUAJITPC" = "x"], [ + AC_MSG_ERROR([LuaJIT not found])] + ) + ]) + + AS_IF([test "x$with_luajit" = "xyes"], + AS_IF([test "x$with_lua_plugin" != "xyes"], + AC_DEFINE([BUILTIN_LUA],, [Lua support is builtin]) + ) + ) +]) + +AC_DEFUN([DOVECOT_WANT_LUA],[ + AS_IF([test "$xwith_lua" = "xplugin"], [with_lua_plugin=yes], []) + AC_MSG_CHECKING([whether we will be linking in Lua]) + AC_ARG_WITH([lua], + [AS_HELP_STRING([--with-lua], [build Lua Bindings @<:@default=auto@:>@])], + [with_lua=$withval], + [with_lua=auto] + ) + AC_MSG_RESULT([$with_lua]) + + AS_IF([test "x$with_lua" != "xno"],[ + AS_IF([test "x$with_lua" = "xyes" -o "x$with_lua" = "xauto"], + [for LUAPC in lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua; do + PKG_CHECK_MODULES([LUA], $LUAPC >= 5.1, [ + AC_DEFINE([HAVE_LUA], [1], [Define to 1 if you have lua]) + with_lua=yes + ], [LUAPC=""]) # otherwise pkg_check will fail + if test "x$LUA_LIBS" != "x"; then break; fi + done + ], + [LUAPC="$with_lua" + PKG_CHECK_MODULES([LUA], $LUAPC >= 5.1, [ + AC_DEFINE([HAVE_LUA], [1], [Define to 1 if you have lua]) + with_lua=yes + ]) + ]) + AC_MSG_CHECKING([for chosen LUA]) + AS_IF([test "x$LUAPC" = "x"], [ + AS_IF([test "x$with_lua" = "xyes"], + [AC_MSG_ERROR([cannot find lua])], + [AC_MSG_RESULT([not found])] + )],[ + AC_MSG_RESULT([$LUAPC]) + ]) + ]) + + AS_IF([test "x$with_lua" = "xyes"], + AS_IF([test "x$with_lua_plugin" != "xyes"], + AC_DEFINE([BUILTIN_LUA],, [Lua support is builtin]) + ) + ) +])