Skip to content

Commit 2e0cf43

Browse files
committed
CMake: enable clang LTO-friendly flags under CMAKE_INTERPROCEDURAL_OPTIMIZATION, not RAWSPEED_ENABLE_LTO
1 parent 5eff105 commit 2e0cf43

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

cmake/compiler-flags.cmake

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,17 @@ SET(CMAKE_MODULE_LINKER_FLAGS
5050
"${CMAKE_MODULE_LINKER_FLAGS} ${linkerflags}"
5151
)
5252

53+
if(CMAKE_INTERPROCEDURAL_OPTIMIZATION)
54+
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
55+
set(LIST -fforce-emit-vtables -fwhole-program-vtables -fstrict-vtable-pointers)
56+
add_compile_options("$<$<COMPILE_LANGUAGE:C,CXX>:${LIST}>")
57+
endif()
58+
endif()
59+
5360
if(RAWSPEED_ENABLE_LTO)
5461
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
5562
include(llvm-toolchain)
56-
set(lto_compile "-flto=thin -fforce-emit-vtables -fwhole-program-vtables -fstrict-vtable-pointers")
63+
set(lto_compile "-flto=thin")
5764
set(lto_link "-flto=thin -fuse-ld=\"${LLVMLLD_EXECUTABLE}\" ${LLVMLLD_INCREMENTAL_LDFLAGS}")
5865
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
5966
include(gcc-toolchain)

0 commit comments

Comments
 (0)