diff options
Diffstat (limited to 'third-party/cmake/BuildLuarocks.cmake')
-rw-r--r-- | third-party/cmake/BuildLuarocks.cmake | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/third-party/cmake/BuildLuarocks.cmake b/third-party/cmake/BuildLuarocks.cmake index 79d7e83ce7..1662f89b24 100644 --- a/third-party/cmake/BuildLuarocks.cmake +++ b/third-party/cmake/BuildLuarocks.cmake @@ -89,25 +89,26 @@ list(APPEND THIRD_PARTY_DEPS luarocks) if(USE_BUNDLED_LUAJIT) add_dependencies(luarocks luajit) + if(MINGW AND CMAKE_CROSSCOMPILING) + add_dependencies(luarocks luajit_host) + endif() endif() # Each target depends on the previous module, this serializes all calls to # luarocks since it is unhappy to be called in parallel. -add_custom_command(OUTPUT ${HOSTDEPS_LIB_DIR}/luarocks/rocks/lua-messagepack +add_custom_command(OUTPUT ${HOSTDEPS_LIB_DIR}/luarocks/rocks/mpack COMMAND ${LUAROCKS_BINARY} - ARGS build lua-messagepack ${LUAROCKS_BUILDARGS} + ARGS build mpack ${LUAROCKS_BUILDARGS} DEPENDS luarocks) -add_custom_target(lua-messagepack - DEPENDS ${HOSTDEPS_LIB_DIR}/luarocks/rocks/lua-messagepack) -list(APPEND THIRD_PARTY_DEPS lua-messagepack) +add_custom_target(mpack + DEPENDS ${HOSTDEPS_LIB_DIR}/luarocks/rocks/mpack) +list(APPEND THIRD_PARTY_DEPS mpack) -# Like before, depend on lua-messagepack to ensure serialization of install -# commands add_custom_command(OUTPUT ${HOSTDEPS_LIB_DIR}/luarocks/rocks/lpeg COMMAND ${LUAROCKS_BINARY} ARGS build lpeg ${LUAROCKS_BUILDARGS} - DEPENDS lua-messagepack) + DEPENDS mpack) add_custom_target(lpeg DEPENDS ${HOSTDEPS_LIB_DIR}/luarocks/rocks/lpeg) @@ -116,17 +117,36 @@ list(APPEND THIRD_PARTY_DEPS lpeg) if(USE_BUNDLED_BUSTED) add_custom_command(OUTPUT ${HOSTDEPS_BIN_DIR}/busted COMMAND ${LUAROCKS_BINARY} - ARGS build https://raw.githubusercontent.com/Olivine-Labs/busted/v2.0.rc10-0/busted-2.0.rc10-0.rockspec ${LUAROCKS_BUILDARGS} - DEPENDS luarocks) + ARGS build https://raw.githubusercontent.com/Olivine-Labs/busted/v2.0.rc11-0/busted-2.0.rc11-0.rockspec ${LUAROCKS_BUILDARGS} + DEPENDS lpeg) add_custom_target(busted DEPENDS ${HOSTDEPS_BIN_DIR}/busted) + add_custom_command(OUTPUT ${HOSTDEPS_BIN_DIR}/luacheck + COMMAND ${LUAROCKS_BINARY} + ARGS build https://raw.githubusercontent.com/mpeterv/luacheck/3929eaa3528be2a8a50c593d687c8625205a2033/luacheck-scm-1.rockspec ${LUAROCKS_BUILDARGS} + DEPENDS busted) + add_custom_target(luacheck + DEPENDS ${HOSTDEPS_BIN_DIR}/luacheck) + + set(LUV_DEPS luacheck luv-static) + if(MINGW AND CMAKE_CROSSCOMPILING) + set(LUV_DEPS ${LUV_DEPS} libuv_host) + endif() + add_custom_command(OUTPUT ${HOSTDEPS_LIB_DIR}/luarocks/rocks/luv + COMMAND ${LUAROCKS_BINARY} + ARGS make ${LUAROCKS_BUILDARGS} LIBUV_DIR=${HOSTDEPS_INSTALL_DIR} CFLAGS='-O0 -g3 -fPIC' + WORKING_DIRECTORY ${DEPS_BUILD_DIR}/src/luv + DEPENDS ${LUV_DEPS}) + add_custom_target(luv + DEPENDS ${HOSTDEPS_LIB_DIR}/luarocks/rocks/luv) + add_custom_command(OUTPUT ${HOSTDEPS_LIB_DIR}/luarocks/rocks/nvim-client COMMAND ${LUAROCKS_BINARY} - ARGS build https://raw.githubusercontent.com/neovim/lua-client/0.0.1-14/nvim-client-0.0.1-14.rockspec ${LUAROCKS_BUILDARGS} LIBUV_DIR=${HOSTDEPS_INSTALL_DIR} - DEPENDS busted libuv) + ARGS build https://raw.githubusercontent.com/neovim/lua-client/0.0.1-24/nvim-client-0.0.1-24.rockspec ${LUAROCKS_BUILDARGS} + DEPENDS luv) add_custom_target(nvim-client DEPENDS ${HOSTDEPS_LIB_DIR}/luarocks/rocks/nvim-client) - list(APPEND THIRD_PARTY_DEPS busted nvim-client) + list(APPEND THIRD_PARTY_DEPS busted luacheck nvim-client) endif() |