summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Traud <pabstraud@compuserve.com>2018-01-17 09:51:29 +0100
committerAlexander Traud <pabstraud@compuserve.com>2018-01-17 09:51:29 +0100
commit8f31b7024621f1be7dfc998c1a6dfd714a3b6197 (patch)
tree55e80ba6faac5a591eeea8ad7a4c3414a9bedfc8
parent2f392bedb3987ee3c587bd8b046299320b84d5c5 (diff)
BuildSystem: Detect external library Lua in version 5.3.
On some platforms, you decide to go for one specific version of Lua, for example in OpenBSD. On other platforms, you are able to install several versions side-by-side, for example in Ubuntu and Fedora. Asterisk already works with Lua 5.3. Asterisk failed to detect Lua 5.3 on those platforms which allow several versions. ASTERISK-27592 Change-Id: If7a4b395d844a464e9a1f4f626c5bff4ee67eed8
-rwxr-xr-xconfigure104
-rw-r--r--configure.ac9
2 files changed, 113 insertions, 0 deletions
diff --git a/configure b/configure
index 749b2fc68..c0225de60 100755
--- a/configure
+++ b/configure
@@ -30262,6 +30262,110 @@ if test "x${PBX_LUA}" != "x1" -a "${USE_LUA}" != "no"; then
ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} "
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for luaL_newstate in -llua5.3" >&5
+$as_echo_n "checking for luaL_newstate in -llua5.3... " >&6; }
+if ${ac_cv_lib_lua5_3_luaL_newstate+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-llua5.3 ${pbxlibdir} -lm $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char luaL_newstate ();
+int
+main ()
+{
+return luaL_newstate ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_lua5_3_luaL_newstate=yes
+else
+ ac_cv_lib_lua5_3_luaL_newstate=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lua5_3_luaL_newstate" >&5
+$as_echo "$ac_cv_lib_lua5_3_luaL_newstate" >&6; }
+if test "x$ac_cv_lib_lua5_3_luaL_newstate" = xyes; then :
+ AST_LUA_FOUND=yes
+else
+ AST_LUA_FOUND=no
+fi
+
+ CFLAGS="${ast_ext_lib_check_save_CFLAGS}"
+
+
+ # now check for the header.
+ if test "${AST_LUA_FOUND}" = "yes"; then
+ LUA_LIB="${pbxlibdir} -llua5.3 -lm"
+ # if --with-LUA=DIR has been specified, use it.
+ if test "x${LUA_DIR}" != "x"; then
+ LUA_INCLUDE="-I${LUA_DIR}/include"
+ fi
+ LUA_INCLUDE="${LUA_INCLUDE} "
+
+ # check for the header
+ ast_ext_lib_check_saved_CPPFLAGS="${CPPFLAGS}"
+ CPPFLAGS="${CPPFLAGS} ${LUA_INCLUDE}"
+ ac_fn_c_check_header_mongrel "$LINENO" "lua5.3/lua.h" "ac_cv_header_lua5_3_lua_h" "$ac_includes_default"
+if test "x$ac_cv_header_lua5_3_lua_h" = xyes; then :
+ LUA_HEADER_FOUND=1
+else
+ LUA_HEADER_FOUND=0
+fi
+
+
+ CPPFLAGS="${ast_ext_lib_check_saved_CPPFLAGS}"
+
+ if test "x${LUA_HEADER_FOUND}" = "x0" ; then
+ LUA_LIB=""
+ LUA_INCLUDE=""
+ else
+
+ PBX_LUA=1
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LUA 1
+_ACEOF
+
+ fi
+ fi
+fi
+
+
+if test "x${PBX_LUA}" = "x1" ; then
+ if test x"${LUA_DIR}" = x; then
+ LUA_INCLUDE="${LUA_INCLUDE} -I/usr/include/lua5.3"
+ else
+ LUA_INCLUDE="${LUA_INCLUDE} -I${LUA_DIR}/lua5.3"
+ fi
+fi
+
+
+if test "x${PBX_LUA}" != "x1" -a "${USE_LUA}" != "no"; then
+ pbxlibdir=""
+ # if --with-LUA=DIR has been specified, use it.
+ if test "x${LUA_DIR}" != "x"; then
+ if test -d ${LUA_DIR}/lib; then
+ pbxlibdir="-L${LUA_DIR}/lib"
+ else
+ pbxlibdir="-L${LUA_DIR}"
+ fi
+ fi
+
+ ast_ext_lib_check_save_CFLAGS="${CFLAGS}"
+ CFLAGS="${CFLAGS} "
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for luaL_newstate in -llua5.2" >&5
$as_echo_n "checking for luaL_newstate in -llua5.2... " >&6; }
if ${ac_cv_lib_lua5_2_luaL_newstate+:} false; then :
diff --git a/configure.ac b/configure.ac
index f68338b2d..d206bd33e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2409,6 +2409,15 @@ if test "${PBX_PWLIB}" = "1" -a "${USE_OPENH323}" != "no" ; then
[${PWLIB_INCLUDE}], [${PWLIB_LIB}])
fi
+AST_EXT_LIB_CHECK([LUA], [lua5.3], [luaL_newstate], [lua5.3/lua.h], [-lm])
+if test "x${PBX_LUA}" = "x1" ; then
+ if test x"${LUA_DIR}" = x; then
+ LUA_INCLUDE="${LUA_INCLUDE} -I/usr/include/lua5.3"
+ else
+ LUA_INCLUDE="${LUA_INCLUDE} -I${LUA_DIR}/lua5.3"
+ fi
+fi
+
AST_EXT_LIB_CHECK([LUA], [lua5.2], [luaL_newstate], [lua5.2/lua.h], [-lm])
if test "x${PBX_LUA}" = "x1" ; then
if test x"${LUA_DIR}" = x; then