]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Meson: Lua and lua.hpp
authorFred Morcos <fred.morcos@open-xchange.com>
Mon, 3 Jul 2023 10:34:20 +0000 (12:34 +0200)
committerFred Morcos <fred.morcos@open-xchange.com>
Wed, 20 Mar 2024 12:28:25 +0000 (13:28 +0100)
meson/lua/meson.build [new file with mode: 0644]

diff --git a/meson/lua/meson.build b/meson/lua/meson.build
new file mode 100644 (file)
index 0000000..3a3ae09
--- /dev/null
@@ -0,0 +1,32 @@
+# Lua
+# Inputs: conf deps
+# Outputs: dep_lua
+
+opt_lua = get_option('lua')
+dep_lua = dependency('', required: false)
+
+if opt_lua == 'auto' or opt_lua == 'luajit'
+  dep_lua = dependency('luajit', version: '>= 2.0.2', required: opt_lua == 'luajit', not_found_message: 'LuaJIT not found')
+endif
+
+if not dep_lua.found() and (opt_lua == 'auto' or opt_lua == 'lua')
+  variants = ['lua5.3', 'lua-5.3', 'lua53', 'lua5.2', 'lua-5.2', 'lua52', 'lua5.1', 'lua-5.1', 'lua51', 'lua']
+  foreach variant: variants
+    dep_lua = dependency(variant, version: '>= 5.1', required: false)
+    if dep_lua.found()
+      break
+    endif
+  endforeach
+endif
+
+if not dep_lua.found()
+  error('No Lua implementation was found')
+endif
+
+have_luahpp = cxx.has_header('lua.hpp', dependencies: dep_lua)
+
+conf.set10('HAVE_LUA', dep_lua.found(), description: 'Whether we have Lua')
+conf.set10('HAVE_LUA_HPP', have_luahpp, description: 'Whether we have lua.hpp')
+
+summary('Lua implementation', dep_lua.name(), section: 'Configuration')
+summary('Have lua.hpp', have_luahpp, bool_yn: true, section: 'Configuration')