-# NOTE: The tools are organized into five groups of four consisting of one
-# large and three small executables. This is done to minimize memory load
-# in parallel builds. Please retain this ordering.
-
-# FIXME: We don't yet have the ability to build llvm-config with CMake
-# based on explicit dependencies.
-if (FALSE)
- add_subdirectory(llvm-config)
+# NOTE: The tools are organized into groups of four consisting of one large and
+# three small executables. This is done to minimize memory load in parallel
+# builds. Please retain this ordering.
+
+# If polly exists and is not disabled compile it and add it to the LLVM tools.
+option(LLVM_BUILD_POLLY "Compile polly" ON)
+if( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/polly/CMakeLists.txt )
+ if (LLVM_BUILD_POLLY)
+ add_subdirectory( ${CMAKE_CURRENT_SOURCE_DIR}/polly)
+ endif (LLVM_BUILD_POLLY)
+endif( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/polly/CMakeLists.txt )
+
+if( NOT WIN32 OR MSYS OR CYGWIN )
+ # It is useful to build llvm-config before the other tools, so we
+ # have a fresh LibDeps.txt for regenerating the hard-coded library
+ # dependencies. llvm-config/CMakeLists.txt takes care of this but we
+ # must keep llvm-config as the first entry on the list of tools to
+ # be built.
+ add_subdirectory(llvm-config)