Improve our LLVM check
Adds a link check in to the LLVM find script to make sure it can actually link against the library it finds. Noticed this issue since I have a non-standard LLVM version built and installed.
This commit is contained in:
parent
787bf156f0
commit
ff907ce0d1
|
@ -21,8 +21,23 @@ foreach(LLVM_CONFIG_NAME ${LLVM_CONFIG_EXECUTABLES})
|
|||
check_library_exists(LLVM-${LLVM_PACKAGE_VERSION} LLVMVerifyFunction "${LLVM_LDFLAGS}" HAVE_DYNAMIC_LLVM_${LLVM_PACKAGE_VERSION})
|
||||
if (HAVE_DYNAMIC_LLVM_${LLVM_PACKAGE_VERSION})
|
||||
set(LLVM_LIBRARIES "${LLVM_LDFLAGS} -lLLVM-${LLVM_PACKAGE_VERSION}")
|
||||
set(LLVM_FOUND 1)
|
||||
break()
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${LLVM_LIBRARIES})
|
||||
CHECK_CXX_SOURCE_COMPILES(
|
||||
"#include <llvm-c/Disassembler.h>
|
||||
#include <llvm-c/Target.h>
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
LLVMInitializeAllTargetInfos();
|
||||
LLVMInitializeAllTargetMCs();
|
||||
LLVMInitializeAllDisassemblers();
|
||||
return 0;
|
||||
}"
|
||||
LLVM_FOUND)
|
||||
unset(CMAKE_REQUIRED_LIBRARIES)
|
||||
|
||||
if (LLVM_FOUND)
|
||||
break()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
|
Loading…
Reference in New Issue