Commit 3eca42c17b

Andrew Kelley <superjoe30@gmail.com>
2016-01-20 06:07:19
cmake: detect libLLVM.so
1 parent c17309d
Changed files (1)
cmake/Findllvm.cmake
@@ -9,26 +9,32 @@
 
 find_path(LLVM_C_INCLUDE_DIR NAMES llvm-c/Core.h PATHS /usr/include/llvm-c-3.7/)
 find_path(LLVM_INCLUDE_DIR NAMES llvm/IR/IRBuilder.h PATHS /usr/include/llvm-3.7/)
-
-find_program(LLVM_CONFIG_EXE NAMES llvm-config llvm-config-3.7)
-
-execute_process(
-    COMMAND ${LLVM_CONFIG_EXE} --libs
-    OUTPUT_VARIABLE LLVM_LIBRARIES
-    OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-execute_process(
-    COMMAND ${LLVM_CONFIG_EXE} --system-libs
-    OUTPUT_VARIABLE LLVM_SYSTEM_LIBS
-    OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-execute_process(
-    COMMAND ${LLVM_CONFIG_EXE} --libdir
-    OUTPUT_VARIABLE LLVM_LIBDIRS
-    OUTPUT_STRIP_TRAILING_WHITESPACE)
-
 set(LLVM_INCLUDE_DIRS ${LLVM_C_INCLUDE_DIR} ${LLVM_INCLUDE_DIR})
-set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS})
+
+find_library(LLVM_LIBRARY NAMES LLVM)
+if(LLVM_LIBRARY)
+    set(LLVM_LIBRARIES ${LLVM_LIBRARY})
+    set(LLVM_LIBDIRS "")
+else()
+    find_program(LLVM_CONFIG_EXE NAMES llvm-config llvm-config-3.7)
+
+    execute_process(
+        COMMAND ${LLVM_CONFIG_EXE} --libs
+        OUTPUT_VARIABLE LLVM_LIBRARIES
+        OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    execute_process(
+        COMMAND ${LLVM_CONFIG_EXE} --system-libs
+        OUTPUT_VARIABLE LLVM_SYSTEM_LIBS
+        OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    execute_process(
+        COMMAND ${LLVM_CONFIG_EXE} --libdir
+        OUTPUT_VARIABLE LLVM_LIBDIRS
+        OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS})
+endif()
 
 
 include(FindPackageHandleStandardArgs)