[PATCH] D101851: Make clangd CompletionModel not depend on directory layout.

Harald van Dijk via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue May 4 13:12:05 PDT 2021


hvdijk created this revision.
hvdijk added reviewers: sammccall, usaxena95.
hvdijk added a project: clang-tools-extra.
Herald added subscribers: kadircet, arphaman, mgorny.
hvdijk requested review of this revision.
Herald added subscribers: cfe-commits, MaskRay, ilya-biryukov.

The current code accounts for two possible layouts, but there is at least a third supported layout: clang-tools-extra may also be checked out as clang/tools/extra with the releases, which was not yet handled. Rather than treating that as a special case, use the location of CompletionModel.cmake to handle all three cases. This should address the problems that prompted D96787 <https://reviews.llvm.org/D96787> and the problems that prompted the proposed revert D100625 <https://reviews.llvm.org/D100625>.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D101851

Files:
  clang-tools-extra/clangd/quality/CompletionModel.cmake


Index: clang-tools-extra/clangd/quality/CompletionModel.cmake
===================================================================
--- clang-tools-extra/clangd/quality/CompletionModel.cmake
+++ clang-tools-extra/clangd/quality/CompletionModel.cmake
@@ -4,8 +4,9 @@
 # ${CMAKE_CURRENT_BINARY_DIR}. The generated header
 # will define a C++ class called ${cpp_class} - which may be a
 # namespace-qualified class name.
+set(CLANGD_QUALITY_DIR ${CMAKE_CURRENT_LIST_DIR})
 function(gen_decision_forest model filename cpp_class)
-  set(model_compiler ${LLVM_EXTERNAL_CLANG_TOOLS_EXTRA_SOURCE_DIR}/clangd/quality/CompletionModelCodegen.py)
+  set(model_compiler ${CLANGD_QUALITY_DIR}/CompletionModelCodegen.py)
 
   set(output_dir ${CMAKE_CURRENT_BINARY_DIR})
   set(header_file ${output_dir}/${filename}.h)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101851.342837.patch
Type: text/x-patch
Size: 801 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210504/ae917ce8/attachment.bin>


More information about the cfe-commits mailing list