aboutsummaryrefslogtreecommitdiff
path: root/third-party/cmake/BuildTreesitter.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/cmake/BuildTreesitter.cmake')
-rw-r--r--third-party/cmake/BuildTreesitter.cmake22
1 files changed, 22 insertions, 0 deletions
diff --git a/third-party/cmake/BuildTreesitter.cmake b/third-party/cmake/BuildTreesitter.cmake
new file mode 100644
index 0000000000..3212d6ea08
--- /dev/null
+++ b/third-party/cmake/BuildTreesitter.cmake
@@ -0,0 +1,22 @@
+set(TS_CFLAGS "-O3 -Wall -Wextra")
+
+ExternalProject_Add(tree-sitter
+ PREFIX ${DEPS_BUILD_DIR}
+ URL ${TREESITTER_URL}
+ DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/tree-sitter
+ INSTALL_DIR ${DEPS_INSTALL_DIR}
+ DOWNLOAD_COMMAND ${CMAKE_COMMAND}
+ -DPREFIX=${DEPS_BUILD_DIR}
+ -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/tree-sitter
+ -DURL=${TREESITTER_URL}
+ -DEXPECTED_SHA256=${TREESITTER_SHA256}
+ -DTARGET=tree-sitter
+ -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
+ BUILD_IN_SOURCE 1
+ PATCH_COMMAND ""
+ CONFIGURE_COMMAND ""
+ BUILD_COMMAND ${MAKE_PRG} CC=${DEPS_C_COMPILER} CFLAGS=${TS_CFLAGS}
+ INSTALL_COMMAND ${MAKE_PRG} CC=${DEPS_C_COMPILER} PREFIX=${DEPS_INSTALL_DIR} install)
+
+list(APPEND THIRD_PARTY_DEPS tree-sitter)