Skip to content

Commit c52af8c

Browse files
authored
Merge branch 'master' into fix-tabs-in-pretty-format
2 parents 9d27faf + 8a7c031 commit c52af8c

File tree

147 files changed

+2100
-841
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

147 files changed

+2100
-841
lines changed

CMakeLists.txt

Lines changed: 53 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -135,22 +135,20 @@ endif ()
135135
include (cmake/check_flags.cmake)
136136
include (cmake/add_warning.cmake)
137137

138-
if (COMPILER_CLANG)
139-
# generate ranges for fast "addr2line" search
140-
if (NOT CMAKE_BUILD_TYPE_UC STREQUAL "RELEASE")
141-
# NOTE: that clang has a bug because of it does not emit .debug_aranges
142-
# with ThinLTO, so custom ld.lld wrapper is shipped in docker images.
143-
set(COMPILER_FLAGS "${COMPILER_FLAGS} -gdwarf-aranges")
144-
endif ()
138+
# generate ranges for fast "addr2line" search
139+
if (NOT CMAKE_BUILD_TYPE_UC STREQUAL "RELEASE")
140+
# NOTE: that clang has a bug because of it does not emit .debug_aranges
141+
# with ThinLTO, so custom ld.lld wrapper is shipped in docker images.
142+
set(COMPILER_FLAGS "${COMPILER_FLAGS} -gdwarf-aranges")
143+
endif ()
145144

146-
# See https://blog.llvm.org/posts/2021-04-05-constructor-homing-for-debug-info/
147-
if (CMAKE_BUILD_TYPE_UC STREQUAL "DEBUG" OR CMAKE_BUILD_TYPE_UC STREQUAL "RELWITHDEBINFO")
148-
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Xclang -fuse-ctor-homing")
149-
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Xclang -fuse-ctor-homing")
150-
endif()
145+
# See https://blog.llvm.org/posts/2021-04-05-constructor-homing-for-debug-info/
146+
if (CMAKE_BUILD_TYPE_UC STREQUAL "DEBUG" OR CMAKE_BUILD_TYPE_UC STREQUAL "RELWITHDEBINFO")
147+
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Xclang -fuse-ctor-homing")
148+
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Xclang -fuse-ctor-homing")
149+
endif()
151150

152-
no_warning(enum-constexpr-conversion) # breaks Protobuf in clang-16
153-
endif ()
151+
no_warning(enum-constexpr-conversion) # breaks Protobuf in clang-16
154152

155153
option(ENABLE_TESTS "Provide unit_test_dbms target with Google.Test unit tests" ON)
156154
option(ENABLE_EXAMPLES "Build all example programs in 'examples' subdirectories" OFF)
@@ -284,16 +282,12 @@ endif ()
284282

285283
option (ENABLE_BUILD_PROFILING "Enable profiling of build time" OFF)
286284
if (ENABLE_BUILD_PROFILING)
287-
if (COMPILER_CLANG)
288-
set (COMPILER_FLAGS "${COMPILER_FLAGS} -ftime-trace")
289-
290-
if (LINKER_NAME MATCHES "lld")
291-
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--time-trace")
292-
set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--time-trace")
293-
endif ()
294-
else ()
295-
message (${RECONFIGURE_MESSAGE_LEVEL} "Build profiling is only available with CLang")
296-
endif ()
285+
set (COMPILER_FLAGS "${COMPILER_FLAGS} -ftime-trace")
286+
287+
if (LINKER_NAME MATCHES "lld")
288+
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--time-trace")
289+
set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--time-trace")
290+
endif ()
297291
endif ()
298292

299293
set (CMAKE_CXX_STANDARD 23)
@@ -304,22 +298,20 @@ set (CMAKE_C_STANDARD 11)
304298
set (CMAKE_C_EXTENSIONS ON) # required by most contribs written in C
305299
set (CMAKE_C_STANDARD_REQUIRED ON)
306300

307-
if (COMPILER_CLANG)
308-
# Enable C++14 sized global deallocation functions. It should be enabled by setting -std=c++14 but I'm not sure.
309-
# See https://reviews.llvm.org/D112921
310-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsized-deallocation")
301+
# Enable C++14 sized global deallocation functions. It should be enabled by setting -std=c++14 but I'm not sure.
302+
# See https://reviews.llvm.org/D112921
303+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsized-deallocation")
311304

312-
# falign-functions=32 prevents from random performance regressions with the code change. Thus, providing more stable
313-
# benchmarks.
314-
set(COMPILER_FLAGS "${COMPILER_FLAGS} -falign-functions=32")
305+
# falign-functions=32 prevents from random performance regressions with the code change. Thus, providing more stable
306+
# benchmarks.
307+
set(COMPILER_FLAGS "${COMPILER_FLAGS} -falign-functions=32")
315308

316-
if (ARCH_AMD64)
317-
# align branches within a 32-Byte boundary to avoid the potential performance loss when code layout change,
318-
# which makes benchmark results more stable.
319-
set(BRANCHES_WITHIN_32B_BOUNDARIES "-mbranches-within-32B-boundaries")
320-
set(COMPILER_FLAGS "${COMPILER_FLAGS} ${BRANCHES_WITHIN_32B_BOUNDARIES}")
321-
endif()
322-
endif ()
309+
if (ARCH_AMD64)
310+
# align branches within a 32-Byte boundary to avoid the potential performance loss when code layout change,
311+
# which makes benchmark results more stable.
312+
set(BRANCHES_WITHIN_32B_BOUNDARIES "-mbranches-within-32B-boundaries")
313+
set(COMPILER_FLAGS "${COMPILER_FLAGS} ${BRANCHES_WITHIN_32B_BOUNDARIES}")
314+
endif()
323315

324316
# Disable floating-point expression contraction in order to get consistent floating point calculation results across platforms
325317
set (COMPILER_FLAGS "${COMPILER_FLAGS} -ffp-contract=off")
@@ -348,39 +340,34 @@ set (CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} ${COMPILER_FLAGS} $
348340
set (CMAKE_ASM_FLAGS_RELWITHDEBINFO "${CMAKE_ASM_FLAGS_RELWITHDEBINFO} -O3 ${DEBUG_INFO_FLAGS} ${CMAKE_ASM_FLAGS_ADD}")
349341
set (CMAKE_ASM_FLAGS_DEBUG "${CMAKE_ASM_FLAGS_DEBUG} -O0 ${DEBUG_INFO_FLAGS} ${CMAKE_ASM_FLAGS_ADD}")
350342

351-
if (COMPILER_CLANG)
352-
if (OS_DARWIN)
353-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
354-
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-U,_inside_main")
355-
endif()
343+
if (OS_DARWIN)
344+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
345+
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-U,_inside_main")
346+
endif()
356347

357-
# Display absolute paths in error messages. Otherwise KDevelop fails to navigate to correct file and opens a new file instead.
358-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-absolute-paths")
359-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fdiagnostics-absolute-paths")
348+
# Display absolute paths in error messages. Otherwise KDevelop fails to navigate to correct file and opens a new file instead.
349+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdiagnostics-absolute-paths")
350+
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fdiagnostics-absolute-paths")
360351

361-
if (NOT ENABLE_TESTS AND NOT SANITIZE AND NOT SANITIZE_COVERAGE AND OS_LINUX)
362-
# https://clang.llvm.org/docs/ThinLTO.html
363-
# Applies to clang and linux only.
364-
# Disabled when building with tests or sanitizers.
365-
option(ENABLE_THINLTO "Clang-specific link time optimization" ON)
366-
endif()
352+
if (NOT ENABLE_TESTS AND NOT SANITIZE AND NOT SANITIZE_COVERAGE AND OS_LINUX)
353+
# https://clang.llvm.org/docs/ThinLTO.html
354+
# Applies to clang and linux only.
355+
# Disabled when building with tests or sanitizers.
356+
option(ENABLE_THINLTO "Clang-specific link time optimization" ON)
357+
endif()
367358

368-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstrict-vtable-pointers")
369-
370-
# We cannot afford to use LTO when compiling unit tests, and it's not enough
371-
# to only supply -fno-lto at the final linking stage. So we disable it
372-
# completely.
373-
if (ENABLE_THINLTO AND NOT ENABLE_TESTS AND NOT SANITIZE)
374-
# Link time optimization
375-
set (CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
376-
set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
377-
set (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
378-
elseif (ENABLE_THINLTO)
379-
message (${RECONFIGURE_MESSAGE_LEVEL} "Cannot enable ThinLTO")
380-
endif ()
359+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstrict-vtable-pointers")
381360

361+
# We cannot afford to use LTO when compiling unit tests, and it's not enough
362+
# to only supply -fno-lto at the final linking stage. So we disable it
363+
# completely.
364+
if (ENABLE_THINLTO AND NOT ENABLE_TESTS AND NOT SANITIZE)
365+
# Link time optimization
366+
set (CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
367+
set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
368+
set (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} -flto=thin -fwhole-program-vtables")
382369
elseif (ENABLE_THINLTO)
383-
message (${RECONFIGURE_MESSAGE_LEVEL} "ThinLTO is only available with Clang")
370+
message (${RECONFIGURE_MESSAGE_LEVEL} "Cannot enable ThinLTO")
384371
endif ()
385372

386373
# Turns on all external libs like s3, kafka, ODBC, ...

cmake/linux/default_libs.cmake

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,15 @@ set (DEFAULT_LIBS "-nodefaultlibs")
55

66
# We need builtins from Clang's RT even without libcxx - for ubsan+int128.
77
# See https://bugs.llvm.org/show_bug.cgi?id=16404
8-
if (COMPILER_CLANG)
9-
execute_process (COMMAND ${CMAKE_CXX_COMPILER} --target=${CMAKE_CXX_COMPILER_TARGET} --print-libgcc-file-name --rtlib=compiler-rt OUTPUT_VARIABLE BUILTINS_LIBRARY OUTPUT_STRIP_TRAILING_WHITESPACE)
8+
execute_process (COMMAND ${CMAKE_CXX_COMPILER} --target=${CMAKE_CXX_COMPILER_TARGET} --print-libgcc-file-name --rtlib=compiler-rt OUTPUT_VARIABLE BUILTINS_LIBRARY OUTPUT_STRIP_TRAILING_WHITESPACE)
109

11-
# Apparently, in clang-19, the UBSan support library for C++ was moved out into ubsan_standalone_cxx.a, so we have to include both.
12-
if (SANITIZE STREQUAL undefined)
13-
string(REPLACE "builtins.a" "ubsan_standalone_cxx.a" EXTRA_BUILTINS_LIBRARY "${BUILTINS_LIBRARY}")
14-
endif ()
10+
# Apparently, in clang-19, the UBSan support library for C++ was moved out into ubsan_standalone_cxx.a, so we have to include both.
11+
if (SANITIZE STREQUAL undefined)
12+
string(REPLACE "builtins.a" "ubsan_standalone_cxx.a" EXTRA_BUILTINS_LIBRARY "${BUILTINS_LIBRARY}")
13+
endif ()
1514

16-
if (NOT EXISTS "${BUILTINS_LIBRARY}")
17-
set (BUILTINS_LIBRARY "-lgcc")
18-
endif ()
15+
if (NOT EXISTS "${BUILTINS_LIBRARY}")
16+
set (BUILTINS_LIBRARY "-lgcc")
1917
endif ()
2018

2119
if (OS_ANDROID)

cmake/sanitize.cmake

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@ if (SANITIZE)
2626

2727
elseif (SANITIZE STREQUAL "thread")
2828
set (TSAN_FLAGS "-fsanitize=thread")
29-
if (COMPILER_CLANG)
30-
set (TSAN_FLAGS "${TSAN_FLAGS} -fsanitize-ignorelist=${PROJECT_SOURCE_DIR}/tests/tsan_ignorelist.txt")
31-
endif()
29+
set (TSAN_FLAGS "${TSAN_FLAGS} -fsanitize-ignorelist=${PROJECT_SOURCE_DIR}/tests/tsan_ignorelist.txt")
3230

3331
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SAN_FLAGS} ${TSAN_FLAGS}")
3432
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SAN_FLAGS} ${TSAN_FLAGS}")
@@ -44,9 +42,7 @@ if (SANITIZE)
4442
# that's why we often receive reports about UIO. The simplest way to avoid this is just set this flag here.
4543
set(UBSAN_FLAGS "${UBSAN_FLAGS} -fno-sanitize=unsigned-integer-overflow")
4644
endif()
47-
if (COMPILER_CLANG)
48-
set (UBSAN_FLAGS "${UBSAN_FLAGS} -fsanitize-ignorelist=${PROJECT_SOURCE_DIR}/tests/ubsan_ignorelist.txt")
49-
endif()
45+
set (UBSAN_FLAGS "${UBSAN_FLAGS} -fsanitize-ignorelist=${PROJECT_SOURCE_DIR}/tests/ubsan_ignorelist.txt")
5046

5147
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SAN_FLAGS} ${UBSAN_FLAGS}")
5248
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SAN_FLAGS} ${UBSAN_FLAGS}")

cmake/tools.cmake

Lines changed: 25 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
# Compiler
22

3-
if (CMAKE_CXX_COMPILER_ID MATCHES "AppleClang")
4-
set (COMPILER_CLANG 1) # Safe to treat AppleClang as a regular Clang, in general.
5-
elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
6-
set (COMPILER_CLANG 1)
7-
else ()
3+
if (NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang")
84
message (FATAL_ERROR "Compiler ${CMAKE_CXX_COMPILER_ID} is not supported")
95
endif ()
106

@@ -17,50 +13,42 @@ set (CLANG_MINIMUM_VERSION 16)
1713
set (XCODE_MINIMUM_VERSION 12.0)
1814
set (APPLE_CLANG_MINIMUM_VERSION 12.0.0)
1915

20-
if (COMPILER_CLANG)
21-
if (CMAKE_CXX_COMPILER_ID MATCHES "AppleClang")
22-
# (Experimental!) Specify "-DALLOW_APPLECLANG=ON" when running CMake configuration step, if you want to experiment with using it.
23-
if (NOT ALLOW_APPLECLANG AND NOT DEFINED ENV{ALLOW_APPLECLANG})
24-
message (FATAL_ERROR "Compilation with AppleClang is unsupported. Please use vanilla Clang, e.g. from Homebrew.")
25-
endif ()
16+
if (CMAKE_CXX_COMPILER_ID MATCHES "AppleClang")
17+
# (Experimental!) Specify "-DALLOW_APPLECLANG=ON" when running CMake configuration step, if you want to experiment with using it.
18+
if (NOT ALLOW_APPLECLANG AND NOT DEFINED ENV{ALLOW_APPLECLANG})
19+
message (FATAL_ERROR "Compilation with AppleClang is unsupported. Please use vanilla Clang, e.g. from Homebrew.")
20+
endif ()
2621

27-
# For a mapping between XCode / AppleClang / vanilla Clang versions, see https://en.wikipedia.org/wiki/Xcode
28-
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${APPLE_CLANG_MINIMUM_VERSION})
29-
message (FATAL_ERROR "Compilation with AppleClang version ${CMAKE_CXX_COMPILER_VERSION} is unsupported, the minimum required version is ${APPLE_CLANG_MINIMUM_VERSION} (Xcode ${XCODE_MINIMUM_VERSION}).")
30-
endif ()
31-
else ()
32-
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${CLANG_MINIMUM_VERSION})
33-
message (FATAL_ERROR "Compilation with Clang version ${CMAKE_CXX_COMPILER_VERSION} is unsupported, the minimum required version is ${CLANG_MINIMUM_VERSION}.")
34-
endif ()
22+
# For a mapping between XCode / AppleClang / vanilla Clang versions, see https://en.wikipedia.org/wiki/Xcode
23+
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${APPLE_CLANG_MINIMUM_VERSION})
24+
message (FATAL_ERROR "Compilation with AppleClang version ${CMAKE_CXX_COMPILER_VERSION} is unsupported, the minimum required version is ${APPLE_CLANG_MINIMUM_VERSION} (Xcode ${XCODE_MINIMUM_VERSION}).")
25+
endif ()
26+
else ()
27+
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${CLANG_MINIMUM_VERSION})
28+
message (FATAL_ERROR "Compilation with Clang version ${CMAKE_CXX_COMPILER_VERSION} is unsupported, the minimum required version is ${CLANG_MINIMUM_VERSION}.")
3529
endif ()
3630
endif ()
3731

38-
# Linker
39-
4032
string (REGEX MATCHALL "[0-9]+" COMPILER_VERSION_LIST ${CMAKE_CXX_COMPILER_VERSION})
4133
list (GET COMPILER_VERSION_LIST 0 COMPILER_VERSION_MAJOR)
4234

43-
# Example values: `lld-10`
35+
# Linker
4436
option (LINKER_NAME "Linker name or full path")
4537

4638
if (LINKER_NAME MATCHES "gold")
4739
message (FATAL_ERROR "Linking with gold is unsupported. Please use lld.")
4840
endif ()
4941

5042
if (NOT LINKER_NAME)
51-
if (COMPILER_CLANG)
52-
if (OS_LINUX AND NOT ARCH_S390X)
53-
find_program (LLD_PATH NAMES "ld.lld-${COMPILER_VERSION_MAJOR}" "ld.lld")
54-
elseif (OS_DARWIN)
55-
find_program (LLD_PATH NAMES "ld")
56-
endif ()
43+
if (OS_LINUX AND NOT ARCH_S390X)
44+
find_program (LLD_PATH NAMES "ld.lld-${COMPILER_VERSION_MAJOR}" "ld.lld")
45+
elseif (OS_DARWIN)
46+
find_program (LLD_PATH NAMES "ld")
5747
endif ()
5848
if (LLD_PATH)
5949
if (OS_LINUX OR OS_DARWIN)
60-
if (COMPILER_CLANG)
61-
# Clang driver simply allows full linker path.
62-
set (LINKER_NAME ${LLD_PATH})
63-
endif ()
50+
# Clang driver simply allows full linker path.
51+
set (LINKER_NAME ${LLD_PATH})
6452
endif ()
6553
endif()
6654
endif()
@@ -82,59 +70,36 @@ else ()
8270
endif ()
8371

8472
# Archiver
85-
86-
if (COMPILER_CLANG)
87-
find_program (LLVM_AR_PATH NAMES "llvm-ar-${COMPILER_VERSION_MAJOR}" "llvm-ar")
88-
endif ()
89-
73+
find_program (LLVM_AR_PATH NAMES "llvm-ar-${COMPILER_VERSION_MAJOR}" "llvm-ar")
9074
if (LLVM_AR_PATH)
9175
set (CMAKE_AR "${LLVM_AR_PATH}")
9276
endif ()
93-
9477
message(STATUS "Using archiver: ${CMAKE_AR}")
9578

9679
# Ranlib
97-
98-
if (COMPILER_CLANG)
99-
find_program (LLVM_RANLIB_PATH NAMES "llvm-ranlib-${COMPILER_VERSION_MAJOR}" "llvm-ranlib")
100-
endif ()
101-
80+
find_program (LLVM_RANLIB_PATH NAMES "llvm-ranlib-${COMPILER_VERSION_MAJOR}" "llvm-ranlib")
10281
if (LLVM_RANLIB_PATH)
10382
set (CMAKE_RANLIB "${LLVM_RANLIB_PATH}")
10483
endif ()
105-
10684
message(STATUS "Using ranlib: ${CMAKE_RANLIB}")
10785

10886
# Install Name Tool
109-
110-
if (COMPILER_CLANG)
111-
find_program (LLVM_INSTALL_NAME_TOOL_PATH NAMES "llvm-install-name-tool-${COMPILER_VERSION_MAJOR}" "llvm-install-name-tool")
112-
endif ()
113-
87+
find_program (LLVM_INSTALL_NAME_TOOL_PATH NAMES "llvm-install-name-tool-${COMPILER_VERSION_MAJOR}" "llvm-install-name-tool")
11488
if (LLVM_INSTALL_NAME_TOOL_PATH)
11589
set (CMAKE_INSTALL_NAME_TOOL "${LLVM_INSTALL_NAME_TOOL_PATH}")
11690
endif ()
117-
11891
message(STATUS "Using install-name-tool: ${CMAKE_INSTALL_NAME_TOOL}")
11992

12093
# Objcopy
121-
122-
if (COMPILER_CLANG)
123-
find_program (OBJCOPY_PATH NAMES "llvm-objcopy-${COMPILER_VERSION_MAJOR}" "llvm-objcopy" "objcopy")
124-
endif ()
125-
94+
find_program (OBJCOPY_PATH NAMES "llvm-objcopy-${COMPILER_VERSION_MAJOR}" "llvm-objcopy" "objcopy")
12695
if (OBJCOPY_PATH)
12796
message (STATUS "Using objcopy: ${OBJCOPY_PATH}")
12897
else ()
12998
message (FATAL_ERROR "Cannot find objcopy.")
13099
endif ()
131100

132101
# Strip
133-
134-
if (COMPILER_CLANG)
135-
find_program (STRIP_PATH NAMES "llvm-strip-${COMPILER_VERSION_MAJOR}" "llvm-strip" "strip")
136-
endif ()
137-
102+
find_program (STRIP_PATH NAMES "llvm-strip-${COMPILER_VERSION_MAJOR}" "llvm-strip" "strip")
138103
if (STRIP_PATH)
139104
message (STATUS "Using strip: ${STRIP_PATH}")
140105
else ()

0 commit comments

Comments
 (0)