forked from OSchip/llvm-project
[SE] Stop using llvm-config --cxxflags
Summary: Build configuration was adding $(llvm-config --cxxflags) to the StreamExecutor CXXFLAGS, but this was causing "-O3" to be passed even for debug builds, and was making debugging difficult. The llvm-config call was originally introduced to handle the -fno-rtti flag because an RTTI StreamExecutor could not link with a no-RTTI LLVM. This patch converts to using LLVM_ENABLE_RTTI and only adding the `-fno-rtti` flag if needed, not all the rest of the LLVM CXXFLAGS. I have tested this with clang-4.0 and gcc-4.8 on Ubuntu. Some work will probably have to be done to support MSVC. Reviewers: jlebar Subscribers: beanz, jprice, parallel_libs-commits, mgorny Differential Revision: https://reviews.llvm.org/D24474 llvm-svn: 281347
This commit is contained in:
parent
6339f1a028
commit
45b467523b
parallel-libs/streamexecutor
|
@ -26,17 +26,10 @@ if(STREAM_EXECUTOR_STANDALONE)
|
|||
include_directories(${LLVM_INCLUDE_DIRS})
|
||||
add_definitions(${LLVM_DEFINITIONS})
|
||||
|
||||
# Get the LLVM cxxflags by using llvm-config.
|
||||
#
|
||||
# This is necessary to get -fno-rtti if LLVM is compiled that way.
|
||||
execute_process(
|
||||
COMMAND
|
||||
"${LLVM_BINARY_DIR}/bin/llvm-config"
|
||||
--cxxflags
|
||||
OUTPUT_VARIABLE
|
||||
LLVM_CXXFLAGS
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LLVM_CXXFLAGS}")
|
||||
# If LLVM does not have RTTI, don't use it here either.
|
||||
if (NOT LLVM_ENABLE_RTTI)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
|
||||
endif()
|
||||
|
||||
set(LLVM_CMAKE_PATH "${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/cmake/llvm")
|
||||
list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_PATH}")
|
||||
|
|
Loading…
Reference in New Issue