CMake: Use libdl only when available. Fixes build on FreeBSD.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72311 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake
index adebb1b..0c903a1 100755
--- a/cmake/config-ix.cmake
+++ b/cmake/config-ix.cmake
@@ -42,6 +42,7 @@
 # library checks
 include(CheckLibraryExists)
 check_library_exists(pthread pthread_create "" HAVE_LIBPTHREAD)
+check_library_exists(dl dlopen "" HAVE_LIBDL)
 
 # function checks
 include(CheckSymbolExists)
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
index 62d9f31..1f0ff74 100755
--- a/cmake/modules/AddLLVM.cmake
+++ b/cmake/modules/AddLLVM.cmake
@@ -33,7 +33,9 @@
     if( MINGW )
       target_link_libraries(${name} imagehlp psapi)
     elseif( CMAKE_HOST_UNIX )
-      target_link_libraries(${name} dl)
+      if( HAVE_LIBDL )
+	target_link_libraries(${name} dl)
+      endif()
       if( LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD )
 	target_link_libraries(${name} pthread)
       endif()