aboutsummaryrefslogtreecommitdiff
path: root/cmake.deps/cmake
diff options
context:
space:
mode:
authordundargoc <33953936+dundargoc@users.noreply.github.com>2023-04-04 19:27:21 +0200
committerGitHub <noreply@github.com>2023-04-04 19:27:21 +0200
commit81f2bce775bc7e7392b51538b94a0d62d6ab15b4 (patch)
tree09505c16a42463673c06a53c531da70438b3086a /cmake.deps/cmake
parenta5c572bd446a89be2dccb2f7479ff1b017074640 (diff)
downloadrneovim-81f2bce775bc7e7392b51538b94a0d62d6ab15b4.tar.gz
rneovim-81f2bce775bc7e7392b51538b94a0d62d6ab15b4.tar.bz2
rneovim-81f2bce775bc7e7392b51538b94a0d62d6ab15b4.zip
build: cmake cleanup
- Change libtermkeyCMakeLists.txt to LibtermkeyCMakeLists.txt - Remove duplicate mark_as_advanced calls in FindLibuv.cmake - Fix "Enabling Clang sanitizer" messages as it's no longer clang-only - Simplify parser installation syntax - Rename tree-sitter to treesitter
Diffstat (limited to 'cmake.deps/cmake')
-rw-r--r--cmake.deps/cmake/BuildLibtermkey.cmake2
-rw-r--r--cmake.deps/cmake/BuildTreesitter.cmake6
-rw-r--r--cmake.deps/cmake/BuildTreesitterParsers.cmake53
-rw-r--r--cmake.deps/cmake/LibtermkeyCMakeLists.txt (renamed from cmake.deps/cmake/libtermkeyCMakeLists.txt)0
-rw-r--r--cmake.deps/cmake/TreesitterCMakeLists.txt2
5 files changed, 26 insertions, 37 deletions
diff --git a/cmake.deps/cmake/BuildLibtermkey.cmake b/cmake.deps/cmake/BuildLibtermkey.cmake
index 0f10c98194..0d2b66a060 100644
--- a/cmake.deps/cmake/BuildLibtermkey.cmake
+++ b/cmake.deps/cmake/BuildLibtermkey.cmake
@@ -4,7 +4,7 @@ ExternalProject_Add(libtermkey
DOWNLOAD_NO_PROGRESS TRUE
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
- ${CMAKE_CURRENT_SOURCE_DIR}/cmake/libtermkeyCMakeLists.txt
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/LibtermkeyCMakeLists.txt
${DEPS_BUILD_DIR}/src/libtermkey/CMakeLists.txt
CMAKE_ARGS ${DEPS_CMAKE_ARGS}
-D CMAKE_SHARED_LIBRARY_LINK_C_FLAGS="" # Hack to avoid -rdynamic in Mingw
diff --git a/cmake.deps/cmake/BuildTreesitter.cmake b/cmake.deps/cmake/BuildTreesitter.cmake
index 837c1cbcb7..da5d212520 100644
--- a/cmake.deps/cmake/BuildTreesitter.cmake
+++ b/cmake.deps/cmake/BuildTreesitter.cmake
@@ -1,11 +1,11 @@
-ExternalProject_Add(tree-sitter
+ExternalProject_Add(treesitter
URL ${TREESITTER_URL}
URL_HASH SHA256=${TREESITTER_SHA256}
DOWNLOAD_NO_PROGRESS TRUE
- DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/tree-sitter
+ DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/treesitter
INSTALL_DIR ${DEPS_INSTALL_DIR}
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/cmake/TreesitterCMakeLists.txt
- ${DEPS_BUILD_DIR}/src/tree-sitter/CMakeLists.txt
+ ${DEPS_BUILD_DIR}/src/treesitter/CMakeLists.txt
CMAKE_ARGS ${DEPS_CMAKE_ARGS}
CMAKE_CACHE_ARGS ${DEPS_CMAKE_CACHE_ARGS})
diff --git a/cmake.deps/cmake/BuildTreesitterParsers.cmake b/cmake.deps/cmake/BuildTreesitterParsers.cmake
index ef7d521249..56c8a5a7c6 100644
--- a/cmake.deps/cmake/BuildTreesitterParsers.cmake
+++ b/cmake.deps/cmake/BuildTreesitterParsers.cmake
@@ -1,14 +1,29 @@
+# Helper function to download treesitter parsers
+#
+# Single value arguments:
+# LANG - Parser language
+# CMAKE_FILE - Cmake file to build the parser with. Defaults to
+# TreesitterParserCMakeLists.txt.
function(BuildTSParser)
cmake_parse_arguments(TS
""
- "LANG;URL;SHA256;CMAKE_FILE"
+ "LANG;CMAKE_FILE"
""
${ARGN})
+ if(NOT TS_CMAKE_FILE)
+ set(TS_CMAKE_FILE TreesitterParserCMakeLists.txt)
+ endif()
+
set(NAME treesitter-${TS_LANG})
+ string(TOUPPER "TREESITTER_${TS_LANG}_URL" URL_VARNAME)
+ set(URL ${${URL_VARNAME}})
+ string(TOUPPER "TREESITTER_${TS_LANG}_SHA256" HASH_VARNAME)
+ set(HASH ${${HASH_VARNAME}})
+
ExternalProject_Add(${NAME}
- URL ${TS_URL}
- URL_HASH SHA256=${TS_SHA256}
+ URL ${URL}
+ URL_HASH SHA256=${HASH}
DOWNLOAD_NO_PROGRESS TRUE
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/${NAME}
PATCH_COMMAND ${CMAKE_COMMAND} -E copy
@@ -19,32 +34,6 @@ function(BuildTSParser)
CMAKE_CACHE_ARGS ${DEPS_CMAKE_CACHE_ARGS})
endfunction()
-BuildTSParser(
- LANG c
- URL ${TREESITTER_C_URL}
- SHA256 ${TREESITTER_C_SHA256}
- CMAKE_FILE TreesitterParserCMakeLists.txt)
-
-BuildTSParser(
- LANG lua
- URL ${TREESITTER_LUA_URL}
- SHA256 ${TREESITTER_LUA_SHA256}
- CMAKE_FILE TreesitterParserCMakeLists.txt)
-
-BuildTSParser(
- LANG vim
- URL ${TREESITTER_VIM_URL}
- SHA256 ${TREESITTER_VIM_SHA256}
- CMAKE_FILE TreesitterParserCMakeLists.txt)
-
-BuildTSParser(
- LANG vimdoc
- URL ${TREESITTER_VIMDOC_URL}
- SHA256 ${TREESITTER_VIMDOC_SHA256}
- CMAKE_FILE TreesitterParserCMakeLists.txt)
-
-BuildTSParser(
- LANG query
- URL ${TREESITTER_QUERY_URL}
- SHA256 ${TREESITTER_QUERY_SHA256}
- CMAKE_FILE TreesitterParserCMakeLists.txt)
+foreach(lang c lua vim vimdoc query)
+ BuildTSParser(LANG ${lang})
+endforeach()
diff --git a/cmake.deps/cmake/libtermkeyCMakeLists.txt b/cmake.deps/cmake/LibtermkeyCMakeLists.txt
index cefe14e515..cefe14e515 100644
--- a/cmake.deps/cmake/libtermkeyCMakeLists.txt
+++ b/cmake.deps/cmake/LibtermkeyCMakeLists.txt
diff --git a/cmake.deps/cmake/TreesitterCMakeLists.txt b/cmake.deps/cmake/TreesitterCMakeLists.txt
index 9017436ef5..e9728a4093 100644
--- a/cmake.deps/cmake/TreesitterCMakeLists.txt
+++ b/cmake.deps/cmake/TreesitterCMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.10)
-project(tree-sitter C)
+project(treesitter C)
add_library(tree-sitter lib/src/lib.c)
target_include_directories(tree-sitter