]> granicus.if.org Git - apache/blob - modules/lua/config.m4
* modules/lua/config.m4: Use liblua paths from pkg-config if
[apache] / modules / lua / config.m4
1
2 APACHE_MODPATH_INIT(lua)
3
4 dnl CHECK_LUA_PATH(PREFIX, INCLUDE-PATH, LIB-PATH, LIB-NAME)
5 dnl
6 dnl Checks for a specific version of the Lua libraries. Use CHECK_LUA instead,
7 dnl which will call this macro.
8 dnl
9 dnl Sets LUA_CFLAGS and LUA_LIBS, and breaks from its containing loop, if the
10 dnl check succeeds.
11 AC_DEFUN([CHECK_LUA_PATH], [dnl
12     AC_MSG_CHECKING([for lua.h in $1/$2])
13     if test -f $1/$2/lua.h; then
14         AC_MSG_RESULT([yes])
15         save_CFLAGS=$CFLAGS
16         save_LDFLAGS=$LDFLAGS
17         CFLAGS="$CFLAGS"
18         LDFLAGS="-L$1/$3 $LDFLAGS $lib_m"
19         AC_CHECK_LIB($4, luaL_newstate, [
20             LUA_LIBS="-L$1/$3 -l$4 $lib_m"
21             if test "x$ap_platform_runtime_link_flag" != "x"; then
22                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$1/$3])
23             fi
24             LUA_CFLAGS="-I$1/$2"
25         ])
26         CFLAGS=$save_CFLAGS
27         LDFLAGS=$save_LDFLAGS
28
29         if test -n "${LUA_LIBS}"; then
30             break
31         fi
32     else
33         AC_MSG_RESULT([no])
34     fi
35 ])
36
37 dnl Check for Lua 5.3/5.2/5.1 Libraries
38 dnl CHECK_LUA(ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
39 dnl Sets:
40 dnl  LUA_CFLAGS
41 dnl  LUA_LIBS
42 AC_DEFUN([CHECK_LUA],
43 [dnl
44
45 AC_ARG_WITH(
46     lua,
47     [AC_HELP_STRING([--with-lua=PATH],[Path to the Lua 5.3/5.2/5.1 prefix])],
48     lua_path="$withval",
49     :)
50
51 dnl # Determine lua lib directory
52 if test -z "$lua_path"; then
53     test_paths=". /usr/local /usr"
54 else
55     test_paths="${lua_path}"
56 fi
57
58 if test -n "$PKGCONFIG" -a -z "$lua_path" \
59    && $PKGCONFIG --atleast-version=5.1 lua; then
60   LUA_LIBS="`$PKGCONFIG --libs lua`"
61   LUA_CFLAGS="`$PKGCONFIG --cflags lua`"
62   LUA_VERSION="`$PKGCONFIG --modversion lua`"
63   AC_MSG_NOTICE([using Lua $LUA_VERSION configuration from pkg-config])
64 else
65   AC_CHECK_LIB(m, pow, lib_m="-lm")
66   AC_CHECK_LIB(m, sqrt, lib_m="-lm")
67   for x in $test_paths ; do
68     CHECK_LUA_PATH([${x}], [include/lua-5.3], [lib/lua-5.3], [lua-5.3])
69     CHECK_LUA_PATH([${x}], [include/lua5.3], [lib], [lua5.3])
70     CHECK_LUA_PATH([${x}], [include/lua53], [lib/lua53], [lua])
71
72     CHECK_LUA_PATH([${x}], [include], [lib], [lua])
73
74     CHECK_LUA_PATH([${x}], [include/lua-5.2], [lib/lua-5.2], [lua-5.2])
75     CHECK_LUA_PATH([${x}], [include/lua5.2], [lib], [lua5.2])
76     CHECK_LUA_PATH([${x}], [include/lua52], [lib/lua52], [lua])
77
78     CHECK_LUA_PATH([${x}], [include/lua-5.1], [lib/lua-5.1], [lua-5.1])
79     CHECK_LUA_PATH([${x}], [include/lua5.1], [lib], [lua5.1])
80     CHECK_LUA_PATH([${x}], [include/lua51], [lib/lua51], [lua])
81   done
82 fi
83
84 AC_SUBST(LUA_LIBS)
85 AC_SUBST(LUA_CFLAGS)
86
87 if test -z "${LUA_LIBS}"; then
88   AC_MSG_WARN([*** Lua 5.3 5.2 or 5.1 library not found.])
89   ifelse([$2], ,
90     enable_lua="no"
91     if test -z "${lua_path}"; then
92         AC_MSG_WARN([Lua 5.3 5.2 or 5.1 library is required])
93     else
94         AC_MSG_ERROR([Lua 5.3 5.2 or 5.1 library is required])
95     fi,
96     $2)
97 else
98   AC_MSG_NOTICE([using '${LUA_LIBS}' for Lua Library])
99   AC_ARG_ENABLE(luajit,APACHE_HELP_STRING(--enable-luajit,Enable LuaJit Support),
100   [
101     if test "$enableval" = "yes"; then
102       APR_ADDTO(MOD_CPPFLAGS, ["-DAP_ENABLE_LUAJIT"])
103     fi
104   ])
105   ifelse([$1], , , $1) 
106 fi 
107 ])
108
109 lua_objects="lua_apr.lo lua_config.lo mod_lua.lo lua_request.lo lua_vmprep.lo lua_dbd.lo lua_passwd.lo"
110
111 APACHE_MODULE(lua, Apache Lua Framework, $lua_objects, , , [
112   CHECK_LUA()
113   if test "x$enable_lua" != "xno" ; then
114     APR_ADDTO(MOD_INCLUDES, [$LUA_CFLAGS])
115     APR_ADDTO(MOD_LUA_LDADD, [$LUA_LIBS $CRYPT_LIBS])
116   fi
117 ])
118
119 APR_ADDTO(INCLUDES, [-I\$(top_srcdir)/$modpath_current])
120
121 APACHE_MODPATH_FINISH