[PATCH] Have llvm-c-test only use libLLVM if libLLVM has all the right components.
Chris Bieneman
beanz at apple.com
Mon Dec 15 14:38:30 PST 2014
Hi chapuni,
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
http://reviews.llvm.org/D6668
Files:
tools/llvm-c-test/CMakeLists.txt
Index: tools/llvm-c-test/CMakeLists.txt
===================================================================
--- tools/llvm-c-test/CMakeLists.txt
+++ tools/llvm-c-test/CMakeLists.txt
@@ -7,7 +7,26 @@
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 @@
targets.c
)
-# Use libLLVM.so if it is available.
-if(TARGET LLVM)
+if(USE_LLVM_DYLIB)
target_link_libraries(llvm-c-test LLVM)
endif()
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6668.17306.patch
Type: text/x-patch
Size: 980 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141215/a67494e1/attachment.bin>
More information about the llvm-commits
mailing list