From: Alex Brachet Date: Mon, 17 Apr 2023 21:38:08 +0000 (+0000) Subject: [llvm-driver] Check more specific tools first X-Git-Tag: upstream/17.0.6~11290 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f1da04b7357bf0efef2ab881f31bdfb30c3e3b10;p=platform%2Fupstream%2Fllvm.git [llvm-driver] Check more specific tools first We allow tools to be called {tool}-{suffix} to support tools being called something like clang-17. Many clang tools follow this pattern too for example, clang-scan-deps. It is pure luck wether clang or clang-scan-deps will appear first in the LLVMDriverTools.def file. If the former appears first, clang-scan-deps will match against clang, which is not preferable. Instead we can control the order that tools are checked so that we always look at more specific tool names first. Differential Revision: https://reviews.llvm.org/D148543 --- diff --git a/llvm/tools/llvm-driver/CMakeLists.txt b/llvm/tools/llvm-driver/CMakeLists.txt index e709cd7..23cc373 100644 --- a/llvm/tools/llvm-driver/CMakeLists.txt +++ b/llvm/tools/llvm-driver/CMakeLists.txt @@ -3,6 +3,8 @@ get_property(LLVM_DRIVER_OBJLIBS GLOBAL PROPERTY LLVM_DRIVER_OBJLIBS) get_property(LLVM_DRIVER_TOOLS GLOBAL PROPERTY LLVM_DRIVER_TOOLS) +list(SORT LLVM_DRIVER_TOOLS) +list(REVERSE LLVM_DRIVER_TOOLS) foreach(tool ${LLVM_DRIVER_TOOLS}) string(REPLACE "-" "_" tool_entry ${tool}) get_property(tool_aliases GLOBAL PROPERTY LLVM_DRIVER_TOOL_ALIASES_${tool})