diff --git a/waftools/checks/custom.py b/waftools/checks/custom.py index 017b503e52..79bfcf2ade 100644 --- a/waftools/checks/custom.py +++ b/waftools/checks/custom.py @@ -58,15 +58,28 @@ def check_iconv(ctx, dependency_identifier): return check_libs(libs, checkfn)(ctx, dependency_identifier) def check_lua(ctx, dependency_identifier): + # mainline lua 5.1/5.2 doesn't have a .pc file, so each distro chooses + # a different name, either non-versioned (lua.pc) or lua5x/lua5.x/lua-5.x + # and we need to check them all. luadef* are the non-versioned .pc files, + # and the rest represent the .pc file exactly e.g. --lua=lua-5.1 + # The non lua* names are legacy in mpv configure, and kept for compat. lua_versions = [ + ( 'luadef52','lua >= 5.2.0 lua < 5.3.0' ), # package "lua" ( '52', 'lua >= 5.2.0 lua < 5.3.0' ), + ( 'lua52', 'lua52 >= 5.2.0'), ( '52arch', 'lua52 >= 5.2.0'), # Arch + ( 'lua5.2', 'lua5.2 >= 5.2.0'), ( '52deb', 'lua5.2 >= 5.2.0'), # debian + ( 'lua-5.2','lua-5.2 >= 5.2.0'), ( '52fbsd', 'lua-5.2 >= 5.2.0'), # FreeBSD ( 'luajit', 'luajit >= 2.0.0' ), + ( 'luadef51','lua >= 5.1.0 lua < 5.2.0'), # package "lua" ( '51', 'lua >= 5.1.0 lua < 5.2.0'), + ( 'lua51', 'lua51 >= 5.1.0'), ( '51obsd', 'lua51 >= 5.1.0'), # OpenBSD + ( 'lua5.1', 'lua5.1 >= 5.1.0'), ( '51deb', 'lua5.1 >= 5.1.0'), # debian + ( 'lua-5.1','lua-5.1 >= 5.1.0'), ( '51fbsd', 'lua-5.1 >= 5.1.0'), # FreeBSD ] diff --git a/wscript b/wscript index 7f85787e1e..506a3a42d0 100644 --- a/wscript +++ b/wscript @@ -907,7 +907,7 @@ def options(opt): group.add_option('--lua', type = 'string', dest = 'LUA_VER', - help = "select Lua package which should be autodetected. Choices: 51 51deb 51obsd 51fbsd 52 52deb 52arch 52fbsd luajit") + help = "select Lua package to autodetect. Choices (x is 1 or 2): luadef5x, lua5x, lua5.x, lua-5.x, luajit (luadef5x is for pkg-config name 'lua', the rest are exact pkg-config names)") group.add_option('--swift-flags', type = 'string', dest = 'SWIFT_FLAGS',