diff --git a/ChangeLog.graphite b/ChangeLog.graphite
index c5edc3a..58e30e3 100644
--- a/ChangeLog.graphite
+++ b/ChangeLog.graphite
@@ -1,3 +1,8 @@
+2010-08-11  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>
+
+	* configure.ac: Support official CLooG.org versions.
+	* configure: Regenerate.
+
 2010-08-24  Sebastian Pop  <sebastian.pop@amd.com>
 
 	* Merge from mainline (160224:163495).
diff --git a/configure b/configure
index fc759d7..f629449 100755
--- a/configure
+++ b/configure
@@ -1816,6 +1816,48 @@ fi
 
 } # ac_fn_c_try_link
 
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: program exited with status $ac_status" >&5
+       $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+  return $ac_retval
+
+} # ac_fn_c_try_run
+
 # ac_fn_c_try_cpp LINENO
 # ----------------------
 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.
@@ -1940,48 +1982,6 @@ fi
 
 } # ac_fn_c_check_header_mongrel
 
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-  return $ac_retval
-
-} # ac_fn_c_try_run
-
 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
 # -------------------------------------------------------
 # Tests whether HEADER exists and can be compiled using the include files in
@@ -5885,8 +5885,6 @@ fi
 
 
 # Check for CLOOG
-clooglibs=" -lcloog "
-clooginc=" -DCLOOG_PPL_BACKEND "
 
 
 # Check whether --with-cloog was given.
@@ -5919,19 +5917,20 @@ case $with_cloog in
   "" | yes)
     ;;
   *)
-    clooglibs="-L$with_cloog/lib -lcloog"
-    clooginc="-I$with_cloog/include -DCLOOG_PPL_BACKEND "
+    clooglibs="-L$with_cloog/lib"
+    clooginc="-I$with_cloog/include"
     ;;
 esac
-if test "x$with_cloog_include" != x; then
-  clooginc="-I$with_cloog_include -DCLOOG_PPL_BACKEND "
+if test "${with_cloog_include+set}" = set ; then
+  clooginc="-I$with_cloog_include"
 fi
-if test "x$with_cloog_lib" != x; then
-  clooglibs="-L$with_cloog_lib -lcloog"
+if test "${with_cloog_lib+set}" = set; then
+  clooglibs="-L$with_cloog_lib"
 fi
-if test "x$with_cloog$with_cloog_include$with_cloog_lib" = x && test -d ${srcdir}/cloog; then
-  clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' -lcloog '
-  clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include -DCLOOG_PPL_BACKEND '
+if test "${with_cloog+set}" = set && test "${with_cloog_include+set}" = set \
+  && test "${with_cloog_lib+set}" = x && test -d ${srcdir}/cloog; then
+  clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' '
+  clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include '
   enable_cloog_version_check=no
 fi
 
@@ -5943,22 +5942,212 @@ else
 fi
 
 
-if test "x$with_cloog" != "xno" -a "${ENABLE_CLOOG_CHECK}" = "yes"; then
-  saved_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS $clooginc $gmpinc $pplinc"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.15.5 (or later revision) of CLooG" >&5
-$as_echo_n "checking for version 0.15.5 (or later revision) of CLooG... " >&6; }
+if test "x$with_cloog" != "xno"; then
+
+
+
+
+
+
+  saved_cflags=$CFLAGS
+  saved_libs=$LIBS
+  saved_ldflags=$LDFLAGS
+
+  # Only fail if the user explicitly selected CLooG.
+  cloog_allow_fail=no
+  if test "${with_cloog+set}" = set \
+    || test "${with_cloog_include+set}" = set \
+    || test "${with_cloog_lib+set}" = set ; then
+    cloog_allow_fail=yes
+  fi
+
+  # Stage 1: Detect the available CLooG+backend combination.
+  clooglegacyinc="-DCLOOG_PPL_BACKEND"
+  cloogorginc="-DCLOOG_INT_GMP -DCLOOG_ORG"
+
+  CFLAGS="${CFLAGS} ${gmpinc} ${pplinc} ${clooginc} ${cloogorginc}"
+  LDFLAGS="${LDFLAGS} ${clooglibs}"
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for installed CLooG type" >&5
+$as_echo_n "checking for installed CLooG type... " >&6; }
+if test "${gcc_cv_cloog_type+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  LIBS="-lcloog ${saved_libs}"
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <cloog/cloog.h>
+int
+main ()
+{
+cloog_version ()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gcc_cv_cloog_type="PPL Legacy"
+else
+  LIBS="-lcloog-isl -lisl ${saved_libs}"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <cloog/cloog.h>
+int
+main ()
+{
+cloog_version ()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gcc_cv_cloog_type=ISL
+else
+  LIBS="-lcloog-ppl ${saved_libs}"
+         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <cloog/cloog.h>
+int
+main ()
+{
+cloog_version ()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  gcc_cv_cloog_type=PPL
+else
+  gcc_cv_cloog_type=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_type" >&5
+$as_echo "$gcc_cv_cloog_type" >&6; }
+
+  case $gcc_cv_cloog_type in
+    "PPL Legacy")
+      clooginc="${clooginc} ${clooglegacyinc}"
+      clooglibs="${clooglibs} -lcloog"
+      cloog_org=no
+      ;;
+    "ISL")
+      clooginc="${clooginc} ${cloogorginc}"
+      clooglibs="${clooglibs} -lcloog-isl"
+      cloog_org=yes
+      ;;
+    "PPL")
+      clooginc="${clooginc} ${cloogorginc}"
+      clooglibs="${clooglibs} -lcloog-ppl"
+      cloog_org=yes
+      ;;
+    *)
+      clooglibs=
+      clooginc=
+      ;;
+  esac
+
+  # Stage 2: Version check the found CLooG.
+  CFLAGS="${saved_cflags} ${gmpinc} ${pplinc} ${clooginc}"
+  LDFLAGS="${saved_ldflags} ${clooglibs}"
+
+  if test "${ENABLE_CLOOG_CHECK}" = yes \
+    && test "${cloog_org}" = yes ; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for verison 0.14.0 of CLooG (compile time)" >&5
+$as_echo_n "checking for verison 0.14.0 of CLooG (compile time)... " >&6; }
+if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include "cloog/cloog.h"
 int
 main ()
 {
+#if CLOOG_VERSION_MAJOR != 0 \
+      || CLOOG_VERSION_MINOR != 14 \
+      || CLOOG_VERSION_REVISION < 0
+      choke me
+     #endif
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  gcc_cv_cloog_ct_0_14_0=yes
+else
+  gcc_cv_cloog_ct_0_14_0=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_ct_0_14_0" >&5
+$as_echo "$gcc_cv_cloog_ct_0_14_0" >&6; }
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.14.0 of CLooG (run time)" >&5
+$as_echo_n "checking for version 0.14.0 of CLooG (run time)... " >&6; }
+if test "${gcc_cv_cloog_rt_0_14_0+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  gcc_cv_cloog_rt_0_14_0=guessing yes
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdlib.h>
+     #include "cloog/cloog.h"
+int
+main ()
+{
+if ((cloog_version_major () != CLOOG_VERSION_MAJOR)
+      && (cloog_version_minor () != CLOOG_VERSION_MINOR)
+      && (cloog_version_revision () != CLOOG_VERSION_REVISION))
+      {
+        exit (1);
+      }
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gcc_cv_cloog_rt_0_14_0=yes
+else
+  gcc_cv_cloog_rt_0_14_0=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
 
-  #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 5
-  choke me
-  #endif
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_rt_0_14_0" >&5
+$as_echo "$gcc_cv_cloog_rt_0_14_0" >&6; }
+  fi
 
+  # Version check for CLooG-PPL (Legacy).
+  if test "${ENABLE_CLOOG_CHECK}" = yes \
+    && test "${cloog_org}" = no ; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.15.5 (or later revision) of CLooG" >&5
+$as_echo_n "checking for version 0.15.5 (or later revision) of CLooG... " >&6; }
+if test "${gcc_cv_cloog_ct_0_15_5+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include "cloog/cloog.h"
+int
+main ()
+{
+#if CLOOG_VERSION_MAJOR != 0 \
+      || CLOOG_VERSION_MINOR != 15 \
+      || CLOOG_VERSION_REVISION < 5
+      choke me
+     #endif
   ;
   return 0;
 }
@@ -5970,32 +6159,47 @@ if ac_fn_c_try_compile "$LINENO"; then :
 int
 main ()
 {
-
-  #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 9
-  choke me
-  #endif
-
+#if CLOOG_VERSION_MAJOR != 0 \
+      || CLOOG_VERSION_MINOR != 15 \
+      || CLOOG_VERSION_REVISION < 9
+      choke me
+     #endif
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_c_try_compile "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  gcc_cv_cloog_ct_0_15_5=yes
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: buggy but acceptable" >&5
-$as_echo "buggy but acceptable" >&6; }
+  gcc_cv_cloog_ct_0_15_5=buggy but acceptable
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }; clooglibs= ; clooginc=
+  gcc_cv_cloog_ct_0_15_5=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  CFLAGS="$saved_CFLAGS"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_cloog_ct_0_15_5" >&5
+$as_echo "$gcc_cv_cloog_ct_0_15_5" >&6; }
+  fi
+
+  if test "${gcc_cv_cloog_ct_0_14_0}" = no \
+    || test "${gcc_cv_cloog_rt_0_14_0}" = no \
+    || test "${gcc_cv_cloog_ct_0_15_5}" = no; then
+    clooglibs=
+    clooginc=
+  fi
+
+  if test "${cloog_allow_fail}" = yes \
+    && test "${clooglibs:-null}" = null && test "${clooginc:-null}" = null ; then
+    as_fn_error "Unable to find a usable CLooG. See config.log for details." "$LINENO" 5
+  fi
+
+  CFLAGS=$saved_cflags
+  LIBS=$saved_libs
+  LDFLAGS=$saved_ldflags
 fi
 
-# Flags needed for CLOOG
 
 
 
diff --git a/configure.ac b/configure.ac
index 3d969aa..721115a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1580,8 +1580,6 @@ AC_SUBST(pplinc)
 
 
 # Check for CLOOG
-clooglibs=" -lcloog "
-clooginc=" -DCLOOG_PPL_BACKEND "
 
 AC_ARG_WITH(cloog, [  --with-cloog=PATH       Specify prefix directory for the installed CLooG-PPL package
                           Equivalent to --with-cloog-include=PATH/include
@@ -1593,7 +1591,7 @@ if test "x$with_ppl" = "xno"; then
   with_cloog=no
 fi
 
-case $with_cloog in 
+case $with_cloog in
   no)
     clooglibs=
     clooginc=
@@ -1601,19 +1599,20 @@ case $with_cloog in
   "" | yes)
     ;;
   *)
-    clooglibs="-L$with_cloog/lib -lcloog"
-    clooginc="-I$with_cloog/include -DCLOOG_PPL_BACKEND "
+    clooglibs="-L$with_cloog/lib"
+    clooginc="-I$with_cloog/include"
     ;;
 esac
-if test "x$with_cloog_include" != x; then
-  clooginc="-I$with_cloog_include -DCLOOG_PPL_BACKEND "
+if test "${with_cloog_include+set}" = set ; then
+  clooginc="-I$with_cloog_include"
 fi
-if test "x$with_cloog_lib" != x; then
-  clooglibs="-L$with_cloog_lib -lcloog"
+if test "${with_cloog_lib+set}" = set; then
+  clooglibs="-L$with_cloog_lib"
 fi
-if test "x$with_cloog$with_cloog_include$with_cloog_lib" = x && test -d ${srcdir}/cloog; then
-  clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' -lcloog '
-  clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include -DCLOOG_PPL_BACKEND '
+if test "${with_cloog+set}" = set && test "${with_cloog_include+set}" = set \
+  && test "${with_cloog_lib+set}" = x && test -d ${srcdir}/cloog; then
+  clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' '
+  clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include '
   enable_cloog_version_check=no
 fi
 
@@ -1622,24 +1621,134 @@ AC_ARG_ENABLE(cloog-version-check,
 ENABLE_CLOOG_CHECK=$enableval,
 ENABLE_CLOOG_CHECK=yes)
 
-if test "x$with_cloog" != "xno" -a "${ENABLE_CLOOG_CHECK}" = "yes"; then
-  saved_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS $clooginc $gmpinc $pplinc"
-  AC_MSG_CHECKING([for version 0.15.5 (or later revision) of CLooG])
-  AC_TRY_COMPILE([#include "cloog/cloog.h"],[
-  #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 5
-  choke me
-  #endif
-  ], [AC_TRY_COMPILE([#include "cloog/cloog.h"],[
-  #if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 9
-  choke me
-  #endif
-  ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
-  [AC_MSG_RESULT([no]); clooglibs= ; clooginc= ])
-  CFLAGS="$saved_CFLAGS"
+if test "x$with_cloog" != "xno"; then
+  dnl CLooG configure test programs.
+  m4_define([CLOOG_BACKEND_PROG],[AC_LANG_PROGRAM(
+    [#include <cloog/cloog.h>],
+    [cloog_version ()])])
+
+  m4_define([CLOOG_CHECK_CT_PROG],[AC_LANG_PROGRAM(
+    [#include "cloog/cloog.h"],
+    [#if CLOOG_VERSION_MAJOR != $1 \
+      || CLOOG_VERSION_MINOR != $2 \
+      || CLOOG_VERSION_REVISION < $3
+      choke me
+     #endif])])
+
+  m4_define([CLOOG_CHECK_RT_PROG],[AC_LANG_PROGRAM(
+    [#include <stdlib.h>
+     #include "cloog/cloog.h"],
+    [if ((cloog_version_major () != CLOOG_VERSION_MAJOR)
+      && (cloog_version_minor () != CLOOG_VERSION_MINOR)
+      && (cloog_version_revision () != CLOOG_VERSION_REVISION))
+      {
+        exit (1);
+      }])])
+
+  saved_cflags=$CFLAGS
+  saved_libs=$LIBS
+  saved_ldflags=$LDFLAGS
+
+  # Only fail if the user explicitly selected CLooG.
+  cloog_allow_fail=no
+  if test "${with_cloog+set}" = set \
+    || test "${with_cloog_include+set}" = set \
+    || test "${with_cloog_lib+set}" = set ; then
+    cloog_allow_fail=yes
+  fi
+
+  # Stage 1: Detect the available CLooG+backend combination.
+  clooglegacyinc="-DCLOOG_PPL_BACKEND"
+  cloogorginc="-DCLOOG_INT_GMP -DCLOOG_ORG"
+
+  CFLAGS="${CFLAGS} ${gmpinc} ${pplinc} ${clooginc} ${cloogorginc}"
+  LDFLAGS="${LDFLAGS} ${clooglibs}"
+
+  AC_CACHE_CHECK([for installed CLooG type],
+                 [gcc_cv_cloog_type],
+    [LIBS="-lcloog ${saved_libs}"
+     AC_LINK_IFELSE([CLOOG_BACKEND_PROG],
+      [gcc_cv_cloog_type="PPL Legacy"],
+      [LIBS="-lcloog-isl -lisl ${saved_libs}"
+       AC_LINK_IFELSE([CLOOG_BACKEND_PROG],
+        [gcc_cv_cloog_type=ISL],
+        [LIBS="-lcloog-ppl ${saved_libs}"
+         AC_LINK_IFELSE([CLOOG_BACKEND_PROG],
+          [gcc_cv_cloog_type=PPL],
+          [gcc_cv_cloog_type=no])])])])
+
+  case $gcc_cv_cloog_type in
+    "PPL Legacy")
+      clooginc="${clooginc} ${clooglegacyinc}"
+      clooglibs="${clooglibs} -lcloog"
+      cloog_org=no
+      ;;
+    "ISL")
+      clooginc="${clooginc} ${cloogorginc}"
+      clooglibs="${clooglibs} -lcloog-isl"
+      cloog_org=yes
+      ;;
+    "PPL")
+      clooginc="${clooginc} ${cloogorginc}"
+      clooglibs="${clooglibs} -lcloog-ppl"
+      cloog_org=yes
+      ;;
+    *)
+      clooglibs=
+      clooginc=
+      ;;
+  esac
+
+  # Stage 2: Version check the found CLooG.
+  CFLAGS="${saved_cflags} ${gmpinc} ${pplinc} ${clooginc}"
+  LDFLAGS="${saved_ldflags} ${clooglibs}"
+
+  if test "${ENABLE_CLOOG_CHECK}" = yes \
+    && test "${cloog_org}" = yes ; then
+    AC_CACHE_CHECK([for verison 0.14.0 of CLooG (compile time)],
+      [gcc_cv_cloog_ct_0_14_0],
+      [AC_COMPILE_IFELSE([CLOOG_CHECK_CT_PROG(0,14,0)],
+        [gcc_cv_cloog_ct_0_14_0=yes],
+        [gcc_cv_cloog_ct_0_14_0=no])])
+
+    AC_CACHE_CHECK([for version 0.14.0 of CLooG (run time)],
+      [gcc_cv_cloog_rt_0_14_0],
+      [AC_RUN_IFELSE([CLOOG_CHECK_RT_PROG],
+        [gcc_cv_cloog_rt_0_14_0=yes],
+        [gcc_cv_cloog_rt_0_14_0=no],
+        [gcc_cv_cloog_rt_0_14_0=guessing yes])])
+  fi
+
+  # Version check for CLooG-PPL (Legacy).
+  if test "${ENABLE_CLOOG_CHECK}" = yes \
+    && test "${cloog_org}" = no ; then
+    AC_CACHE_CHECK([for version 0.15.5 (or later revision) of CLooG],
+      [gcc_cv_cloog_ct_0_15_5],
+      [AC_COMPILE_IFELSE([CLOOG_CHECK_CT_PROG(0,15,5)],
+        [AC_COMPILE_IFELSE([CLOOG_CHECK_CT_PROG(0,15,9)],
+          [gcc_cv_cloog_ct_0_15_5=yes],
+          [gcc_cv_cloog_ct_0_15_5=buggy but acceptable])],
+        [gcc_cv_cloog_ct_0_15_5=no])])
+  fi
+
+  if test "${gcc_cv_cloog_ct_0_14_0}" = no \
+    || test "${gcc_cv_cloog_rt_0_14_0}" = no \
+    || test "${gcc_cv_cloog_ct_0_15_5}" = no; then
+    clooglibs=
+    clooginc=
+  fi
+
+  if test "${cloog_allow_fail}" = yes \
+    && test "${clooglibs:-null}" = null && test "${clooginc:-null}" = null ; then
+    AC_MSG_ERROR([Unable to find a usable CLooG. See config.log for details.])
+  fi
+
+  CFLAGS=$saved_cflags
+  LIBS=$saved_libs
+  LDFLAGS=$saved_ldflags
 fi
 
-# Flags needed for CLOOG
+dnl Flags needed for CLOOG
 AC_SUBST(clooglibs)
 AC_SUBST(clooginc)
 
