aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordundargoc <33953936+dundargoc@users.noreply.github.com>2022-10-02 17:17:40 +0200
committerGitHub <noreply@github.com>2022-10-02 17:17:40 +0200
commit2f80839cfe2cffcf42fe95d284a7f60f53714f67 (patch)
tree84b85fe0cd0f57a4f7e5d38de08c7a4df0c5d986
parentdd35bc28403682c6c9d5c6c2779dee71ad9f10a6 (diff)
downloadrneovim-2f80839cfe2cffcf42fe95d284a7f60f53714f67.tar.gz
rneovim-2f80839cfe2cffcf42fe95d284a7f60f53714f67.tar.bz2
rneovim-2f80839cfe2cffcf42fe95d284a7f60f53714f67.zip
build: only generate compilation database for the nvim target (#20449)
Some tools like clang-tidy get confused and repeat unnecessary work if there are multiple entries with the same name. This will only generate a compilation database for cmake version 3.20 and above. Generating a compilation database is only necessary for development, so we don't need to maintain compatibility with the minimum required version. Closes https://github.com/neovim/neovim/issues/10632
-rw-r--r--CMakeLists.txt2
-rwxr-xr-xsrc/nvim/CMakeLists.txt5
2 files changed, 5 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 35af9f88bf..78da39b211 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -143,8 +143,6 @@ set(NVIM_API_PRERELEASE false)
set(NVIM_VERSION_BUILD_TYPE "${CMAKE_BUILD_TYPE}")
# NVIM_VERSION_CFLAGS set further below.
-set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
-
# Log level (MIN_LOG_LEVEL in log.h)
if("${MIN_LOG_LEVEL}" MATCHES "^$")
# Minimize logging for release-type builds.
diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt
index 504fe6ff4a..d07865ac6b 100755
--- a/src/nvim/CMakeLists.txt
+++ b/src/nvim/CMakeLists.txt
@@ -446,6 +446,11 @@ set(NVIM_EXEC_LINK_LIBRARIES ${NVIM_LINK_LIBRARIES} ${LUA_PREFERRED_LIBRARIES})
add_executable(nvim ${NVIM_GENERATED_FOR_SOURCES} ${NVIM_GENERATED_FOR_HEADERS}
${NVIM_GENERATED_SOURCES} ${NVIM_SOURCES} ${NVIM_HEADERS}
${EXTERNAL_SOURCES} ${EXTERNAL_HEADERS})
+
+set_target_properties(nvim
+ PROPERTIES
+ EXPORT_COMPILE_COMMANDS ON)
+
target_link_libraries(nvim ${NVIM_EXEC_LINK_LIBRARIES})
install_helper(TARGETS nvim)
if(MSVC)