Ignore debug intrinsics when computing dependences.
[oota-llvm.git] / cmake / config-ix.cmake
index 363975d19a335517199583ee5a30d6ce97e309ad..cbe48d888ecc64bbe15842e86cd02bcea90aa347 100755 (executable)
@@ -52,20 +52,24 @@ check_symbol_exists(mallinfo malloc.h HAVE_MALLINFO)
 check_symbol_exists(pthread_mutex_lock pthread.h HAVE_PTHREAD_MUTEX_LOCK)
 check_symbol_exists(strtoll stdlib.h HAVE_STRTOLL)
 
+include(CheckCXXCompilerFlag)
+check_cxx_compiler_flag("-fPIC" SUPPORTS_FPIC_FLAG)
+
 include(GetTargetTriple)
 get_target_triple(LLVM_HOSTTRIPLE)
 message(STATUS "LLVM_HOSTTRIPLE: ${LLVM_HOSTTRIPLE}")
 
 if( MINGW )
-  # tbi: Comprobar que existen las librerias:
   set(HAVE_LIBIMAGEHLP 1)
   set(HAVE_LIBPSAPI 1)
+  # TODO: Check existence of libraries.
   #   include(CheckLibraryExists)
   #   CHECK_LIBRARY_EXISTS(imagehlp ??? . HAVE_LIBIMAGEHLP)
 endif( MINGW )
 
 if( MSVC )
   set(error_t int)
+  set(mode_t "unsigned short")
   set(LTDL_SHLIBPATH_VAR "PATH")
   set(LTDL_SYSSEARCHPATH "")
   set(LTDL_DLOPEN_DEPLIBS 1)
@@ -93,30 +97,39 @@ endif( NOT MSVC )
 # FIXME: Signal handler return type, currently hardcoded to 'void'
 set(RETSIGTYPE void)
 
-# Disable multithreading for now
-set(ENABLE_THREADS 0)
+if( LLVM_ENABLE_THREADS )
+  if( HAVE_PTHREAD_H OR WIN32 )
+    set(ENABLE_THREADS 1)
+  endif()
+endif()
+
+if( ENABLE_THREADS )
+  message(STATUS "Threads enabled.")
+else( ENABLE_THREADS )
+  message(STATUS "Threads disabled.")
+endif()
 
 configure_file(
-  ${LLVM_MAIN_INCLUDE_DIR}/Config/config.h.cmake
+  ${LLVM_MAIN_INCLUDE_DIR}/llvm/Config/config.h.cmake
   ${LLVM_BINARY_DIR}/include/llvm/Config/config.h
   )
 
 configure_file(
-  ${LLVM_MAIN_INCLUDE_DIR}/ADT/iterator.cmake
+  ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/iterator.cmake
   ${LLVM_BINARY_DIR}/include/llvm/ADT/iterator.h
   )
 
 configure_file(
-  ${LLVM_MAIN_INCLUDE_DIR}/Support/DataTypes.h.cmake
+  ${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/DataTypes.h.cmake
   ${LLVM_BINARY_DIR}/include/llvm/Support/DataTypes.h
   )
 
 configure_file(
-  ${LLVM_MAIN_INCLUDE_DIR}/ADT/hash_map.cmake
+  ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/hash_map.cmake
   ${LLVM_BINARY_DIR}/include/llvm/ADT/hash_map.h
   )
 
 configure_file(
-  ${LLVM_MAIN_INCLUDE_DIR}/ADT/hash_set.cmake
+  ${LLVM_MAIN_INCLUDE_DIR}/llvm/ADT/hash_set.cmake
   ${LLVM_BINARY_DIR}/include/llvm/ADT/hash_set.h
   )