[lld][cmake] Fix LLVM_LINK_LLVM_DYLIB build
authorPavel Labath <labath@google.com>
Mon, 9 Jan 2017 09:57:08 +0000 (09:57 +0000)
committerPavel Labath <labath@google.com>
Mon, 9 Jan 2017 09:57:08 +0000 (09:57 +0000)
commitc9fa114b284a406827ba6c3238a524e01774a331
tree5101f9efa7a5bbd37231ec81ccfe49dada9f19cf
parentbe2d68f774a4f032cd316601d0f9f2a363466401
[lld][cmake] Fix LLVM_LINK_LLVM_DYLIB build

Summary:
Lld's build had a couple of issues which prevented a successfull
LLVM_LINK_LLVM_DYLIB compilation.

- add_llvm_library vs llvm_add_library: One adds a library to libLLVM.so, other
  one doesn't. Lld was using the wrong one, causing symbols to be mupltiply
  defined in things linking to libLLVM.
- confusion when to use LINK_LIBS vs LINK_COMPONENTS in llvm_add_library
- not using LLVM_LINK_COMPONENTS for add_lld_tool

With these fixes lld compiles and it's test suite passes both in
LLVM_LINK_LLVM_DYLIB mode and without it.

Reviewers: ruiu, beanz

Subscribers: llvm-commits, mgorny

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

llvm-svn: 291432
lld/cmake/modules/AddLLD.cmake
lld/lib/Config/CMakeLists.txt
lld/lib/Core/CMakeLists.txt
lld/lib/Driver/CMakeLists.txt
lld/lib/ReaderWriter/CMakeLists.txt
lld/lib/ReaderWriter/MachO/CMakeLists.txt
lld/lib/ReaderWriter/YAML/CMakeLists.txt
lld/tools/lld/CMakeLists.txt