]> granicus.if.org Git - apache/blob - modules/lua/config.m4
* mod_lua: fix compilation with lua-5.3
[apache] / modules / lua / config.m4
1
2 APACHE_MODPATH_INIT(lua)
3
4 dnl Check for Lua 5.1 Libraries
5 dnl CHECK_LUA(ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
6 dnl Sets:
7 dnl  LUA_CFLAGS
8 dnl  LUA_LIBS
9 AC_DEFUN([CHECK_LUA],
10 [dnl
11
12 AC_ARG_WITH(
13     lua,
14     [AC_HELP_STRING([--with-lua=PATH],[Path to the Lua 5.1/5.2 prefix])],
15     lua_path="$withval",
16     :)
17
18 dnl # Determine lua lib directory
19 if test -z "$lua_path"; then
20     test_paths=". /usr/local /usr"
21 else
22     test_paths="${lua_path}"
23 fi
24
25 AC_CHECK_LIB(m, pow, lib_m="-lm")
26 AC_CHECK_LIB(m, sqrt, lib_m="-lm")
27 for x in $test_paths ; do
28   if test "x$x" = "x."; then
29     AC_CHECK_HEADER(lua.h,[
30         save_CFLAGS=$CFLAGS
31         save_LDFLAGS=$LDFLAGS
32         CFLAGS="$CFLAGS"
33         LDFLAGS="$LDFLAGS $lib_m"
34         AC_CHECK_LIB(lua5.1, luaL_newstate, [
35             LUA_LIBS="-llua5.1 $lib_m"
36         ],[
37             AC_CHECK_LIB(lua-5.1, luaL_newstate, [
38                 LUA_LIBS="-llua-5.1 $lib_m"
39             ],[
40                 AC_CHECK_LIB(lua, luaL_newstate, [
41                     LUA_LIBS="-llua $lib_m"
42                 ])
43             ])
44         ])
45         LUA_CFLAGS=
46         CFLAGS=$save_CFLAGS
47         LDFLAGS=$save_LDFLAGS
48         break
49     ])
50   else
51     AC_MSG_CHECKING([for lua.h in ${x}/include/lua5.1])
52     if test -f ${x}/include/lua5.1/lua.h; then
53         AC_MSG_RESULT([yes])
54         save_CFLAGS=$CFLAGS
55         save_LDFLAGS=$LDFLAGS
56         CFLAGS="$CFLAGS"
57         LDFLAGS="-L$x/lib $LDFLAGS $lib_m"
58         AC_CHECK_LIB(lua5.1, luaL_newstate, [
59             LUA_LIBS="-L$x/lib -llua5.1 $lib_m"
60             if test "x$ap_platform_runtime_link_flag" != "x"; then
61                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$x/lib])
62             fi
63             LUA_CFLAGS="-I$x/include/lua5.1"
64             ])
65         CFLAGS=$save_CFLAGS
66         LDFLAGS=$save_LDFLAGS
67         break
68     else
69         AC_MSG_RESULT([no])
70     fi
71     AC_MSG_CHECKING([for lua.h in ${x}/include/lua51])
72     if test -f ${x}/include/lua51/lua.h; then
73         AC_MSG_RESULT([yes])
74         save_CFLAGS=$CFLAGS
75         save_LDFLAGS=$LDFLAGS
76         CFLAGS="$CFLAGS"
77         LDFLAGS="-L$x/lib/lua51 $LDFLAGS $lib_m"
78         AC_CHECK_LIB(lua, luaL_newstate, [
79             LUA_LIBS="-L$x/lib/lua51 -llua $lib_m"
80             if test "x$ap_platform_runtime_link_flag" != "x"; then
81                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$x/lib/lua51])
82             fi
83             LUA_CFLAGS="-I$x/include/lua51"
84             ])
85         CFLAGS=$save_CFLAGS
86         LDFLAGS=$save_LDFLAGS
87         break
88     else
89         AC_MSG_RESULT([no])
90     fi
91     AC_MSG_CHECKING([for lua.h in ${x}/include/lua5.2])
92     if test -f ${x}/include/lua5.2/lua.h; then
93         AC_MSG_RESULT([yes])
94         save_CFLAGS=$CFLAGS
95         save_LDFLAGS=$LDFLAGS
96         CFLAGS="$CFLAGS"
97         LDFLAGS="-L$x/lib $LDFLAGS $lib_m"
98         AC_CHECK_LIB(lua5.2, luaL_newstate, [
99             LUA_LIBS="-L$x/lib -llua5.2 $lib_m"
100             if test "x$ap_platform_runtime_link_flag" != "x"; then
101                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$x/lib])
102             fi
103             LUA_CFLAGS="-I$x/include/lua5.2"
104             ])
105         CFLAGS=$save_CFLAGS
106         LDFLAGS=$save_LDFLAGS
107         break
108     else
109         AC_MSG_RESULT([no])
110     fi
111     AC_MSG_CHECKING([for lua.h in ${x}/include/lua52])
112     if test -f ${x}/include/lua52/lua.h; then
113         AC_MSG_RESULT([yes])
114         save_CFLAGS=$CFLAGS
115         save_LDFLAGS=$LDFLAGS
116         CFLAGS="$CFLAGS"
117         LDFLAGS="-L$x/lib/lua52 $LDFLAGS $lib_m"
118         AC_CHECK_LIB(lua, luaL_newstate, [
119             LUA_LIBS="-L$x/lib/lua52 -llua $lib_m"
120             if test "x$ap_platform_runtime_link_flag" != "x"; then
121                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$x/lib/lua52])
122             fi
123             LUA_CFLAGS="-I$x/include/lua52"
124             ])
125         CFLAGS=$save_CFLAGS
126         LDFLAGS=$save_LDFLAGS
127         break
128     else
129         AC_MSG_RESULT([no])
130     fi
131     AC_MSG_CHECKING([for lua.h in ${x}/include])
132     if test -f ${x}/include/lua.h; then
133         AC_MSG_RESULT([yes])
134         save_CFLAGS=$CFLAGS
135         save_LDFLAGS=$LDFLAGS
136         CFLAGS="$CFLAGS"
137         LDFLAGS="-L$x/lib $LDFLAGS $lib_m"
138         AC_CHECK_LIB(lua, luaL_newstate, [
139             LUA_LIBS="-L$x/lib -llua $lib_m"
140             if test "x$ap_platform_runtime_link_flag" != "x"; then
141                APR_ADDTO(LUA_LIBS, [$ap_platform_runtime_link_flag$x/lib])
142             fi
143             LUA_CFLAGS="-I$x/include"
144             ])
145         CFLAGS=$save_CFLAGS
146         LDFLAGS=$save_LDFLAGS
147         break
148     else
149         AC_MSG_RESULT([no])
150     fi
151   fi
152 done
153
154 AC_SUBST(LUA_LIBS)
155 AC_SUBST(LUA_CFLAGS)
156
157 if test -z "${LUA_LIBS}"; then
158   AC_MSG_WARN([*** Lua 5.1 library not found.])
159   ifelse([$2], ,
160     enable_lua="no"
161     if test -z "${lua_path}"; then
162         AC_MSG_WARN([Lua 5.1 library is required])
163     else
164         AC_MSG_ERROR([Lua 5.1 library is required])
165     fi,
166     $2)
167 else
168   AC_MSG_NOTICE([using '${LUA_LIBS}' for Lua Library])
169   AC_ARG_ENABLE(luajit,APACHE_HELP_STRING(--enable-luajit,Enable LuaJit Support),
170   [
171     if test "$enableval" = "yes"; then
172       APR_ADDTO(MOD_CPPFLAGS, ["-DAP_ENABLE_LUAJIT"])
173     fi
174   ])
175   ifelse([$1], , , $1) 
176 fi 
177 ])
178
179 lua_objects="lua_apr.lo lua_config.lo mod_lua.lo lua_request.lo lua_vmprep.lo lua_dbd.lo lua_passwd.lo"
180
181 APACHE_MODULE(lua, Apache Lua Framework, $lua_objects, , , [
182   CHECK_LUA()
183   if test "x$enable_lua" != "xno" ; then
184     APR_ADDTO(MOD_INCLUDES, [$LUA_CFLAGS])
185     APR_ADDTO(MOD_LUA_LDADD, [$LUA_LIBS])
186   fi
187 ])
188
189 APR_ADDTO(INCLUDES, [-I\$(top_srcdir)/$modpath_current])
190
191 APACHE_MODPATH_FINISH