aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hahler <git@thequod.de>2019-10-07 17:42:40 +0200
committerGitHub <noreply@github.com>2019-10-07 17:42:40 +0200
commit7faa6c41c89f1c5d48f92a436ed690bc7ce6ea85 (patch)
tree11999afcaaa70355a0c11728dbe85a03c7df7015
parentdfed0e60d7e3af9a89f0e945227b9ed2e599aee4 (diff)
downloadrneovim-7faa6c41c89f1c5d48f92a436ed690bc7ce6ea85.tar.gz
rneovim-7faa6c41c89f1c5d48f92a436ed690bc7ce6ea85.tar.bz2
rneovim-7faa6c41c89f1c5d48f92a436ed690bc7ce6ea85.zip
cmake: only set LUA_PRG with successful check (#11172)
This is relevant for when using `USE_BUNDLED_LUAJIT=ON` with `USE_BUNDLED_LUAROCKS=OFF`, and then building without the necessary modules being installed/activated there yet: it would check the other (system) "lua" interpreters also, and in case all failed keep the `LUA_PRG` in the cache for the last failed entry - making it not re-check the previous ones on the next build (after you might have activated your custom LuaRocks installation). Only setting LUA_PRG if the check was successful handles the case better where it is configured already - we should not try to re-configure it then.
-rw-r--r--CMakeLists.txt11
1 files changed, 6 insertions, 5 deletions
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()