diff options
author | Chris Bieneman <beanz@apple.com> | 2014-12-18 21:03:49 +0000 |
---|---|---|
committer | Chris Bieneman <beanz@apple.com> | 2014-12-18 21:03:49 +0000 |
commit | 9ef9c1144a7094c82f5a590b8969ca7975146e1b (patch) | |
tree | b16063e42f12ec2f55067bee9f1a84233dde4455 /llvm/tools/llvm-c-test | |
parent | b743a8034f28576973250682863472ccf6c04f04 (diff) | |
download | bcm5719-llvm-9ef9c1144a7094c82f5a590b8969ca7975146e1b.tar.gz bcm5719-llvm-9ef9c1144a7094c82f5a590b8969ca7975146e1b.zip |
Have llvm-c-test only use libLLVM if libLLVM has all the right components.
Summary: We should only have llvm-c-test use libLLVM if the library is built with the default set of components or if LLVM_DYLIB_COMPONENTS includes all the LLVM_LINK_COMPONENTS required for llvm-c-test. Making libLLVM always used causes build failures if libLLVM doesn't include all
Reviewers: chapuni, ributzka
Reviewed By: ributzka
Subscribers: ributzka, llvm-commits
Differential Revision: http://reviews.llvm.org/D6668
llvm-svn: 224541
Diffstat (limited to 'llvm/tools/llvm-c-test')
-rw-r--r-- | llvm/tools/llvm-c-test/CMakeLists.txt | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/llvm/tools/llvm-c-test/CMakeLists.txt b/llvm/tools/llvm-c-test/CMakeLists.txt index 989678b5a15..baf970a0278 100644 --- a/llvm/tools/llvm-c-test/CMakeLists.txt +++ b/llvm/tools/llvm-c-test/CMakeLists.txt @@ -7,7 +7,26 @@ set(LLVM_LINK_COMPONENTS Target ) -if(TARGET LLVM) +# We should only have llvm-c-test use libLLVM if libLLVM is built with the +# default list of components. Using libLLVM with custom components can result in +# build failures. + +set (USE_LLVM_DYLIB FALSE) + +if (TARGET LLVM) + set (USE_LLVM_DYLIB TRUE) + if (DEFINED LLVM_DYLIB_COMPONENTS) + foreach(c in ${LLVM_LINK_COMPONENTS}) + list(FIND LLVM_DYLIB_COMPONENTS ${c} C_IDX) + if (C_IDX EQUAL -1) + set(USE_LLVM_DYLIB FALSE) + break() + endif() + endforeach() + endif() +endif() + +if(USE_LLVM_DYLIB) set(LLVM_LINK_COMPONENTS) endif() @@ -26,7 +45,6 @@ add_llvm_tool(llvm-c-test targets.c ) -# Use libLLVM.so if it is available. -if(TARGET LLVM) +if(USE_LLVM_DYLIB) target_link_libraries(llvm-c-test LLVM) endif() |