]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
lua: support regular lua C library
authorVictor Julien <victor@inliniac.net>
Thu, 13 Mar 2014 14:10:10 +0000 (15:10 +0100)
committerVictor Julien <victor@inliniac.net>
Mon, 2 Jun 2014 15:00:00 +0000 (17:00 +0200)
Not all systems have luajit or a need for luajit. For low bandwidth
and offline support regular lua may be sufficient.

configure.ac

index 983d84825f616122ba5c2f62a9511fdf5d0f0bd7..c986c85061ad57729651ecb284c8e43b72d8fc84 100644 (file)
         fi
     fi
 
+  # liblua
+    AC_ARG_ENABLE(lua,
+               AS_HELP_STRING([--enable-lua],[Enable Lua support]),
+               [ enable_lua="yes"],
+               [ enable_lua="no"])
+    AC_ARG_WITH(liblua_includes,
+            [  --with-liblua-includes=DIR  liblua include directory],
+            [with_liblua_includes="$withval"],[with_liblua_includes="no"])
+    AC_ARG_WITH(liblua_libraries,
+            [  --with-liblua-libraries=DIR    liblua library directory],
+            [with_liblua_libraries="$withval"],[with_liblua_libraries="no"])
+
+    if test "$enable_lua" = "yes"; then
+        if test "$with_liblua_includes" != "no"; then
+            CPPFLAGS="${CPPFLAGS} -I${with_liblua_includes}"
+        else
+            PKG_CHECK_MODULES([LUA], [lua5.1], LUA="no")
+            CPPFLAGS="${CPPFLAGS} ${LUA_CFLAGS}"
+        fi
+
+        AC_CHECK_HEADER(lualib.h,LUA="yes",LUA="no")
+        if test "$LUA" = "yes"; then
+            if test "$with_liblua_libraries" != "no"; then
+                LDFLAGS="${LDFLAGS}  -L${with_liblua_libraries}"
+            else
+                PKG_CHECK_MODULES([LUA], [lua5.1])
+                LDFLAGS="${LDFLAGS} ${LUA_LIBS}"
+            fi
+
+            AC_CHECK_LIB(lua5.1, luaL_openlibs,, LUA="no")
+
+            if test "$LUA" = "no"; then
+                echo
+                echo "   ERROR!  liblua library not found, go get it"
+                echo "   from http://lua.org/index.html or your distribution:"
+                echo
+                echo "   Ubuntu: apt-get install liblua-5.1-dev"
+                echo
+                echo "   If you installed software in a non-standard prefix"
+                echo "   consider adjusting the PKG_CONFIG_PATH environment variable"
+                echo "   or use --with-liblua-libraries configure option."
+                echo
+                exit 1
+            fi
+
+            AC_DEFINE([HAVE_LUA],[1],[liblua available])
+            enable_lua="yes"
+        else
+               echo
+                echo "   ERROR!  liblua headers not found, go get them"
+                echo "   from http://lua.org/index.html or your distribution:"
+                echo
+                echo "   Ubuntu: apt-get install liblua-5.1-dev"
+                echo
+                echo "   If you installed software in a non-standard prefix"
+                echo "   consider adjusting the PKG_CONFIG_PATH environment variable"
+                echo "   or use --with-liblua-includes and --with-liblua-libraries"
+                echo "   configure option."
+                echo
+                exit 1
+        fi
+    fi
+
   # libluajit
     AC_ARG_ENABLE(luajit,
                AS_HELP_STRING([--enable-luajit],[Enable Luajit support]),
                 exit 1
             fi
 
+            AC_DEFINE([HAVE_LUA],[1],[lua support available])
             AC_DEFINE([HAVE_LUAJIT],[1],[libluajit available])
+            enable_lua="yes"
             enable_luajit="yes"
         else
                echo
@@ -1671,6 +1736,7 @@ SURICATA_BUILD_CONF="Suricata Configuration:
   libjansson support:                      ${enable_jansson}
   Prelude support:                         ${enable_prelude}
   PCRE jit:                                ${pcre_jit_available}
+  LUA support:                             ${enable_lua}
   libluajit:                               ${enable_luajit}
   libgeoip:                                ${enable_geoip}
   Non-bundled htp:                         ${enable_non_bundled_htp}