aboutsummaryrefslogtreecommitdiff
path: root/third-party/cmake/BuildLuarocks.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/cmake/BuildLuarocks.cmake')
-rw-r--r--third-party/cmake/BuildLuarocks.cmake46
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()