Mark LaravelValidatioNValidatorTest as flakey
[hiphop-php.git] / CMake / FindLLVM.cmake
blobb4b32495ebccd2cd890df54c2efee0590864ea66
1 #  Find LLVM libraries and headers
3 #  LIBLLVM_INCLUDE_DIR - LLVM header files location
4 #  LIBLLVM_LIBRARY     - LLVM library to use
5 #  LIBLLVM_VERSION     - LLVM version
6 #  LIBLLVM_FOUND       - true if LLVM library was found
9 # llvm-config can have different names depending on the system
10 FIND_PROGRAM(LLVMCONFIG
11   NAMES "llvm-config-3.5" "llvm-config-3.4" "llvm-config" "llvm-config-64"
12   DOC "LLVM config utility"
15 IF (LLVMCONFIG)
16   IF (LIBLLVM_INCLUDE_DIR)
17     SET(LIBLLVM_FIND_QUIETLY TRUE)
18   ENDIF ()
20   MACRO (GET_LLVM_CONFIG cl_arg var)
21     EXECUTE_PROCESS (
22       COMMAND ${LLVMCONFIG} "--${cl_arg}"
23       OUTPUT_VARIABLE ${var}
24       OUTPUT_STRIP_TRAILING_WHITESPACE
25     )
26   ENDMACRO(GET_LLVM_CONFIG)
28   GET_LLVM_CONFIG(version LIBLLVM_VERSION)
30   IF (${LIBLLVM_VERSION} VERSION_LESS "3.4")
31     MESSAGE(STATUS "LLVM version 3.4 or later is required. Will not use LLVM.")
32   ELSE (${LIBLLVM_VERSION} VERSION_LESS "3.4")
34     GET_LLVM_CONFIG(includedir LIBLLVM_INCLUDE_DIR)
35     GET_LLVM_CONFIG(libdir LIBLLVM_LIBDIR)
37     FIND_LIBRARY(LIBLLVM_LIBRARY NAMES LLVM-${LIBLLVM_VERSION} LLVM PATHS ${LIBLLVM_LIBDIR} NO_DEFAULT_PATH)
38     INCLUDE(FindPackageHandleStandardArgs)
39     FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBLLVM DEFAULT_MSG LIBLLVM_LIBRARY LIBLLVM_INCLUDE_DIR)
41     MARK_AS_ADVANCED(LIBLLVM_LIBRARY LIBLLVM_INCLUDE_DIR)
43   ENDIF ()
45 ELSE()
46   MESSAGE(STATUS "Could not find llvm-config. Will not use LLVM for the build.")
47 ENDIF()