Changeset View
Changeset View
Standalone View
Standalone View
llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
Show First 20 Lines • Show All 971 Lines • ▼ Show 20 Lines | elseif( NOT DEFINED LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS ) | ||||
# Treat LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS like "FORCE_OFF" when it has not been | # Treat LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS like "FORCE_OFF" when it has not been | ||||
# defined. | # defined. | ||||
else() | else() | ||||
message(FATAL_ERROR "Unknown value for LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS:" | message(FATAL_ERROR "Unknown value for LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS:" | ||||
" \"${LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS}\"!") | " \"${LLVM_ENABLE_SUPPORT_XCODE_SIGNPOSTS}\"!") | ||||
endif() | endif() | ||||
endif() | endif() | ||||
endif() | endif() | ||||
option(LLVM_USE_RELATIVE_PATHS_IN_DEBUG_INFO "Use relative paths in debug info" OFF) | |||||
set(LLVM_SOURCE_PREFIX "" CACHE STRING "Use prefix for sources in debug info") | |||||
if(LLVM_USE_RELATIVE_PATHS_IN_DEBUG_INFO) | |||||
check_c_compiler_flag("-fdebug-prefix-map=foo=bar" SUPPORTS_FDEBUG_PREFIX_MAP) | |||||
if(LLVM_ENABLE_PROJECTS_USED) | |||||
get_filename_component(source_root "${LLVM_MAIN_SRC_DIR}/.." ABSOLUTE) | |||||
else() | |||||
set(source_root "${LLVM_MAIN_SRC_DIR}") | |||||
endif() | |||||
file(RELATIVE_PATH relative_root "${source_root}" "${CMAKE_BINARY_DIR}") | |||||
append_if(SUPPORTS_FDEBUG_PREFIX_MAP "-fdebug-prefix-map=${CMAKE_BINARY_DIR}=${relative_root}" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) | |||||
append_if(SUPPORTS_FDEBUG_PREFIX_MAP "-fdebug-prefix-map=${source_root}/=${LLVM_SOURCE_PREFIX}" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) | |||||
add_flag_if_supported("-no-canonical-prefixes" NO_CANONICAL_PREFIXES) | |||||
endif() |