Skip to content

Commit 3b8b3c2

Browse files
committed
[CMake] Export the LLVM_LINK_LLVM_DYLIB setting
Summary: When building out-of-tree tools, there are several macros available to automate linking against llvm. An examples is `add_llvm_executable`, or the clang variant of this. These macros use the LLVM_LINK_LLVM_DYLIB option to decide whether to link against libraries defined by setting LLVM_LINK_COMPONENTS or to link against libLLVM instead. Currently this is problematic in out-of-tree targets, because they cannot identify whether this option is required or even available. If the option was enabled in LLVM's own build, the clang libraries are built against libLLVM, so a client linking against those must link against it too. On the other hand the client can't just always link against it, because it might not be available. This is related to D44391, but that change assumed the client knew whether they wanted the dylib or not. Reviewers: mgorny, beanz, labath Reviewed By: mgorny Subscribers: bollu, llvm-commits Differential Revision: https://reviews.llvm.org/D49193 llvm-svn: 337366
1 parent 2566c0a commit 3b8b3c2

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

llvm/cmake/modules/LLVMConfig.cmake.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ set(LLVM_COMMON_DEPENDS @LLVM_COMMON_DEPENDS@)
1313

1414
set(LLVM_AVAILABLE_LIBS @LLVM_AVAILABLE_LIBS@)
1515

16+
set(LLVM_LINK_LLVM_DYLIB @LLVM_LINK_LLVM_DYLIB@)
17+
1618
set(LLVM_DYLIB_COMPONENTS @LLVM_DYLIB_COMPONENTS@)
1719

1820
set(LLVM_ALL_TARGETS @LLVM_ALL_TARGETS@)

0 commit comments

Comments
 (0)