[CMake] Provide an option to use relative paths in debug info
authorPetr Hosek <phosek@chromium.org>
Fri, 31 May 2019 01:34:51 +0000 (01:34 +0000)
committerPetr Hosek <phosek@chromium.org>
Fri, 31 May 2019 01:34:51 +0000 (01:34 +0000)
commit2ab7af29c6cad5abac3b4da48df33d21b87fc216
treed55dfe2142661370605c0a2e8598ff087621049e
parentdbd3ce92e691848a34fb7623b487d699de7674d7
[CMake] Provide an option to use relative paths in debug info

CMake always uses absolute file paths in the generated compiler
invocation which results in absolute file paths being embedded in debug
info. This is undesirable when building a toolchain e.g. on bots as the
debug info may embed the bot source checkout path which is meaningless
anywhere else.

This change introduces the LLVM_USE_RELATIVE_PATHS_IN_DEBUG_INFO which uses
-fdebug-prefix-map (where supported) options to rewrite paths embedded
into debug info with relative ones. Additionally, LLVM_SOURCE_PREFIX can
be used to override the path to source directory with a different one.

Differential Revision: https://reviews.llvm.org/D62622

llvm-svn: 362185
clang/cmake/caches/Fuchsia-stage2.cmake
llvm/cmake/modules/HandleLLVMOptions.cmake
llvm/cmake/modules/LLVMExternalProjectUtils.cmake
llvm/runtimes/CMakeLists.txt