]> granicus.if.org Git - clang/commit
[DarwinDriver] Use -lto_library to specify the path for libLTO.dylib
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Wed, 30 Sep 2015 19:55:07 +0000 (19:55 +0000)
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Wed, 30 Sep 2015 19:55:07 +0000 (19:55 +0000)
commita2ed8c0526c7643e50d8b085c6387b94669a8101
treedbafda51af71bac68b35cbec29f1866641e8911f
parent33736888dfa72d2e51b7221ccb31e0494271c6df
[DarwinDriver] Use -lto_library to specify the path for libLTO.dylib

Usually, when using LTO with a clang installation newer than the
system's one, there's a libLTO.dylib version mismatch and LTO fails. One
solution to this is to make ld point to the right libLTO.dylib by
changing DYLD_LIBRARY_PATH.

However, ld64 supports specifying the complete path to the desired
libLTO.dylib through the -lto_library option. This commit adds support
for the clang driver to use this option whenever it's capable of finding
a libLTO.dylib in clang's installed library directory. This way, we
don't need to rely on DYLD_LIBRARY_PATH nor get caught by version
mismatches.

Differential Revision: http://reviews.llvm.org/D13117

rdar://problem/7363476

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@248932 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/DiagnosticDriverKinds.td
lib/Driver/Tools.cpp
test/Driver/darwin-ld.c