Allow CMake to generate compile_commands.json automatically in the build dir

Some editors rely on clangd for autocompletion. In those cases clangd
will look for a compile_commands.json file in the root of the repository
to obtain the list of flags used for compilation and the INCLUDEPATH for
each file.
This commit allows CMake to automatically generate such file in the
designated build folder.
To enable clangd to use that file, simply link it in the root of the
project repository.
The link will be ignored by git.
This commit is contained in:
MuAlphaOmegaEpsilon
2023-01-30 21:07:01 +01:00
parent f39a3b0ece
commit 4d5016e0c2
+4
View File
@@ -30,6 +30,10 @@ set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON) set(CMAKE_AUTORCC ON)
# Generates a compile_commands.json in the build dir, link that to the repo
# root to enrich your IDE with clangd language server protocol functionalities
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# Sanitizers # Sanitizers
add_library(olive-sanitizers INTERFACE) add_library(olive-sanitizers INTERFACE)
include(cmake/Sanitizers.cmake) include(cmake/Sanitizers.cmake)