diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 2f1b83c5e5f83ca77a63c0e9717b75e7bc0d05a2..50d3405a81cc14182f47d128540dbf60cded65e8 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,8 @@
+2003-01-07  Alexandre Oliva  <aoliva@redhat.com>
+
+	* test_summary (configflags): Compute correctly with both
+	autoconfiscated and Cygnus-style top-level.
+
 2003-01-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
 	* gcc_update (files_and_dependencies): Add gcc/cp/cfns.h depends
diff --git a/contrib/test_summary b/contrib/test_summary
index 5b9cdc8f39ed7e5dcf028d0e2f4d029d5a1e60c6..377f9e5df0dbc1715fe13262a261fd9be4078215 100755
--- a/contrib/test_summary
+++ b/contrib/test_summary
@@ -94,16 +94,19 @@ BEGIN {
   print "cat <<'"'"'EOF'"'"' |";
 '${prepend_logs+"  system(\"cat $prepend_logs\"); "}'
 }
-$1 ~ /\/configure$/ {
-    srcdir = $1;
-    gsub(/\/configure$/, "", srcdir);
+$0 ~ /^(|# )[^ ]*\/configure / {
+    configflags = $0 " ";
+    gsub(/^# /, "", configflags);
+    srcdir = configflags;
+    gsub(/\/configure .*/, "", srcdir);
     printf "LAST_UPDATED: ";
     system("tail -1 " srcdir "/LAST_UPDATED");
     print "";
 
-    $1 = "configure flags:"; configflags = $0;
-    gsub(/--with-gcc-version-trigger=[^ ]* /, "", configflags);
-    gsub(/ --norecursion/, "", configflags)
+    gsub(/^[^ ]*\/configure /, "configure flags: ", configflags);
+    gsub(/ --with-gcc-version-trigger=[^ ]* /, " ", configflags);
+    gsub(/ --norecursion /, " ", configflags);
+    gsub(/ $/, "", configflags);
 }
 /^Running target / { print ""; print; }
 /^Target / { if (host != "") next; else host = $3; }