Use Alias Analysis to hoist 2 loads from diamond to the common predecessor basic...
[oota-llvm.git] / projects / CMakeLists.txt
index 1a286db9ec660be163198b9536ec544727b4ce7d..8d244fd49edd555c1417d488de98fd5b670b5e7c 100644 (file)
@@ -4,8 +4,27 @@
 file(GLOB entries *)
 foreach(entry ${entries})
   if(IS_DIRECTORY ${entry} AND EXISTS ${entry}/CMakeLists.txt)
-    if(NOT (${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/compiler-rt))
+    if((NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/compiler-rt) AND
+       (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/dragonegg) AND
+       (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/libcxx) AND
+       (NOT ${entry} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}/libcxxabi))
       add_subdirectory(${entry})
     endif()
   endif()
 endforeach(entry)
+
+# Also add in libc++ and compiler-rt trees if present (and we have
+# a sufficiently recent version of CMake where required).
+if(${LLVM_BUILD_RUNTIME})
+  # MSVC isn't quite working with libc++ yet, disable it until issues are
+  # fixed.
+  if(NOT MSVC)
+    add_llvm_external_project(libcxx)
+    add_llvm_external_project(libcxxabi)
+  endif()
+  if(NOT LLVM_BUILD_EXTERNAL_COMPILER_RT)
+    add_llvm_external_project(compiler-rt)
+  endif()
+endif()
+
+add_llvm_external_project(dragonegg)