diff --git a/CMakeLists.txt b/CMakeLists.txt index 1b6ba45820..98a32a116b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -487,18 +487,19 @@ include(LuaHelpers) set(LUA_DEPENDENCIES lpeg mpack bit) if(NOT LUA_PRG) foreach(CURRENT_LUA_PRG luajit lua5.1 lua5.2 lua) - # If LUA_PRG is set find_program() will not search - unset(LUA_PRG CACHE) + unset(_CHECK_LUA_PRG CACHE) unset(LUA_PRG_WORKS) - find_program(LUA_PRG ${CURRENT_LUA_PRG}) + find_program(_CHECK_LUA_PRG ${CURRENT_LUA_PRG}) - if(LUA_PRG) - check_lua_deps(${LUA_PRG} "${LUA_DEPENDENCIES}" LUA_PRG_WORKS) + if(_CHECK_LUA_PRG) + check_lua_deps(${_CHECK_LUA_PRG} "${LUA_DEPENDENCIES}" LUA_PRG_WORKS) if(LUA_PRG_WORKS) + set(LUA_PRG "${_CHECK_LUA_PRG}" CACHE FILEPATH "Path to a program.") break() endif() endif() endforeach() + unset(_CHECK_LUA_PRG CACHE) else() check_lua_deps(${LUA_PRG} "${LUA_DEPENDENCIES}" LUA_PRG_WORKS) endif()