From 5dd981539f6b81ad5697df974f309d9a6d4e78c6 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 22 Oct 2021 09:14:51 -0400 Subject: BinUtils: Avoid llvm-strip versions older than Clang 11 Since commit cf82300a63 (BinUtils: Clarify search logic and make it more consistent, 2021-05-27, v3.21.0-rc1~119^2~2) we correctly prefer the more-specific name `llvm-strip` over `strip` when using Clang. However, `llvm-strip` from Clang versions prior to 11 require extra flags to strip everything. Until our `install(TARGETS)` logic learns to add those flags, avoid using older versions of `llvm-strip` by default. Fixes: #22785 --- Modules/CMakeFindBinUtils.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Modules/CMakeFindBinUtils.cmake b/Modules/CMakeFindBinUtils.cmake index 27d9131..8e9237a 100644 --- a/Modules/CMakeFindBinUtils.cmake +++ b/Modules/CMakeFindBinUtils.cmake @@ -174,7 +174,10 @@ else() endif() list(PREPEND _CMAKE_AR_NAMES "llvm-ar") list(PREPEND _CMAKE_RANLIB_NAMES "llvm-ranlib") - list(PREPEND _CMAKE_STRIP_NAMES "llvm-strip") + if("${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_VERSION}" VERSION_GREATER_EQUAL 11) + # llvm-strip versions prior to 11 require additional flags we do not yet add. + list(PREPEND _CMAKE_STRIP_NAMES "llvm-strip") + endif() list(PREPEND _CMAKE_NM_NAMES "llvm-nm") if("${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_VERSION}" VERSION_GREATER_EQUAL 9) # llvm-objdump versions prior to 9 did not support everything we need. -- cgit v0.12