aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2015-11-25 11:23:25 -0700
committerAndrew Kelley <superjoe30@gmail.com>2015-11-25 11:23:25 -0700
commita1771c76c35de5e12ef0fcd52a779a9867bfbf8a (patch)
tree96f65adf0d1ca1003a734f63db137904d6b1b754 /cmake
parent4fe366dfa6e58d7e0c159a5e864fec56499cc888 (diff)
downloadzig-a1771c76c35de5e12ef0fcd52a779a9867bfbf8a.tar.gz
zig-a1771c76c35de5e12ef0fcd52a779a9867bfbf8a.zip
build: improve findllvm script
Diffstat (limited to 'cmake')
-rw-r--r--cmake/Findllvm.cmake26
1 files changed, 21 insertions, 5 deletions
diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake
index abe5c3b21f..acdb552dc9 100644
--- a/cmake/Findllvm.cmake
+++ b/cmake/Findllvm.cmake
@@ -3,19 +3,35 @@
# See http://opensource.org/licenses/MIT
# LLVM_FOUND
-# LLVM_INCLUDE_DIR
+# LLVM_INCLUDE_DIRS
# LLVM_LIBRARIES
+# LLVM_LIBDIRS
-find_path(LLVM_INCLUDE_DIR NAMES llvm-c/Core.h)
+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 llvm-config)
+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}")
+
+
include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(LLVM DEFAULT_MSG LLVM_LIBRARIES LLVM_INCLUDE_DIR)
+find_package_handle_standard_args(LLVM DEFAULT_MSG LLVM_LIBRARIES LLVM_INCLUDE_DIRS)
-mark_as_advanced(LLVM_INCLUDE_DIR LLVM_LIBRARIES)
+mark_as_advanced(LLVM_INCLUDE_DIRS LLVM_LIBRARIES LLVM_LIBDIRS)