Fix PR gdb/844
authorDaniel Jacobowitz <drow@false.org>
Sat, 4 Jan 2003 23:05:05 +0000 (23:05 +0000)
committerDaniel Jacobowitz <drow@false.org>
Sat, 4 Jan 2003 23:05:05 +0000 (23:05 +0000)
* lib/gdb.exp (gdb_compile): Handle "quiet" option.
(gdb_compile_pthreads): Pass "quiet" to gdb_compile.

* gdb.threads/gcore-thread.exp: Use gdb_compile_pthreads.  Return
instead of calling gdb_suppress_entire_file.
* gdb.threads/print-threads.exp: Likewise.
* gdb.threads/schedlock.exp: Likewise.

* gdb.threads/killed.exp: Return instead of calling
gdb_suppress_entire_file.
* gdb.threads/linux-dp.exp: Likewise.
* gdb.threads/pthreads.exp: Likewise.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.threads/gcore-thread.exp
gdb/testsuite/gdb.threads/killed.exp
gdb/testsuite/gdb.threads/linux-dp.exp
gdb/testsuite/gdb.threads/print-threads.exp
gdb/testsuite/gdb.threads/pthreads.exp
gdb/testsuite/gdb.threads/schedlock.exp
gdb/testsuite/lib/gdb.exp

index 6602520..6c39246 100644 (file)
@@ -1,5 +1,21 @@
 2003-01-04  Daniel Jacobowitz  <drow@mvista.com>
 
+       Fix PR gdb/844
+       * lib/gdb.exp (gdb_compile): Handle "quiet" option.
+       (gdb_compile_pthreads): Pass "quiet" to gdb_compile.
+
+       * gdb.threads/gcore-thread.exp: Use gdb_compile_pthreads.  Return
+       instead of calling gdb_suppress_entire_file.
+       * gdb.threads/print-threads.exp: Likewise.
+       * gdb.threads/schedlock.exp: Likewise.
+
+       * gdb.threads/killed.exp: Return instead of calling
+       gdb_suppress_entire_file.
+       * gdb.threads/linux-dp.exp: Likewise.
+       * gdb.threads/pthreads.exp: Likewise.
+
+2003-01-04  Daniel Jacobowitz  <drow@mvista.com>
+
        * gdb.base/callfuncs.exp: Don't XFAIL unprototyped functions for
        stabs.
        * gdb.base/completion.exp: Allow marker1(void) as well as marker1().
index 6ec14ef..8184fa5 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 2002 Free Software Foundation, Inc.
+# Copyright 2002, 2003 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -32,38 +32,13 @@ set testfile "pthreads"
 set srcfile  ${testfile}.c
 set binfile  ${objdir}/${subdir}/${testfile}
 
-set built_binfile 0
 if [istarget "*-*-linux"] then {
     set target_cflags "-D_MIT_POSIX_THREADS"
 } else {
     set target_cflags ""
 }
-set why_msg "unrecognized error"
-foreach lib {-lpthreads -lpthread -lthread} {
-    set options "debug"
-    lappend options "incdir=${objdir}"
-    lappend options "libs=$lib"
-    set ccout [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $options]
-    switch -regexp -- $ccout {
-       ".*no posix threads support.*" {
-           set why_msg "missing threads include file"
-           break
-       }
-       ".*cannot open -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       ".*Can't find library for -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       {^$} {
-           pass "successfully compiled posix threads test case"
-           set built_binfile 1
-           break
-       }
-    }
-}
-if {$built_binfile == "0"} {
-    unsupported "Couldn't compile ${srcfile}, ${why_msg}"
+
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
     return -1
 }
 
index 8037dd4..5557d45 100644 (file)
@@ -67,7 +67,7 @@ set srcfile ${testfile}.c
 set binfile ${objdir}/${subdir}/${testfile}
 
 if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
-    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+    return -1
 }
 
 
index 67ed122..6d48b0d 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999, 2001, 2002 Free Software Foundation, Inc.
+# Copyright 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -50,7 +50,7 @@ set testfile "linux-dp"
 set srcfile ${testfile}.c
 set binfile ${objdir}/${subdir}/${testfile}
 if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug libs=-lpthread}] != ""} {
-    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+    return -1
 }
 
 gdb_start
index 7bbc5aa..60a106a 100644 (file)
@@ -38,41 +38,7 @@ set binfile ${objdir}/${subdir}/${testfile}
 # carriage return)
 set horiz "\[^\n\r\]*"
 
-set built_binfile 0
-
-# Default to the usual (only?) -lpthread on GNU/Linux to quiet noise
-if [istarget "*-*-linux*"] then {
-    set possible_libs "-lpthread -lpthreads -lthread"
-} else {
-    set possible_libs "-lpthreads -lpthread -lthread"
-}
-
-set why_msg "unrecognized error"
-foreach lib $possible_libs {
-    set options "debug"
-    lappend options "incdir=${objdir}"
-    lappend options "libs=$lib"
-    set ccout [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $options]
-    switch -regexp -- $ccout {
-       ".*no posix threads support.*" {
-           set why_msg "missing threads include file"
-           break
-       }
-       ".*cannot open -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       ".*Can't find library for -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       {^$} {
-           pass "successfully compiled posix threads test case"
-           set built_binfile 1
-           break
-       }
-    }
-}
-if {$built_binfile == "0"} {
-    unsupported "Couldn't compile ${srcfile}, ${why_msg}"
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
     return -1
 }
 
index c37e306..1ab019b 100644 (file)
@@ -46,7 +46,7 @@ if [istarget "*-*-linux"] then {
 }
 
 if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
-    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+    return -1
 }
 
 
index 2f0be4b..28298c6 100644 (file)
@@ -33,41 +33,7 @@ set testfile "schedlock"
 set srcfile ${testfile}.c
 set binfile ${objdir}/${subdir}/${testfile}
 
-set built_binfile 0
-
-# Default to the usual (only?) -lpthread on GNU/Linux to quiet noise
-if [istarget "*-*-linux*"] then {
-    set possible_libs "-lpthread -lpthreads -lthread"
-} else {
-    set possible_libs "-lpthreads -lpthread -lthread"
-}
-
-set why_msg "unrecognized error"
-foreach lib $possible_libs {
-    set options "debug"
-    lappend options "incdir=${objdir}"
-    lappend options "libs=$lib"
-    set ccout [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $options]
-    switch -regexp -- $ccout {
-       ".*no posix threads support.*" {
-           set why_msg "missing threads include file"
-           break
-       }
-       ".*cannot open -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       ".*Can't find library for -lpthread.*" {
-           set why_msg "missing runtime threads library"
-       }
-       {^$} {
-           pass "successfully compiled posix threads test case"
-           set built_binfile 1
-           break
-       }
-    }
-}
-if {$built_binfile == "0"} {
-    unsupported "Couldn't compile ${srcfile}, ${why_msg}"
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
     return -1
 }
 
index a339221..b4261ae 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+# 2002, 2003
 # Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
@@ -1134,7 +1135,7 @@ proc gdb_compile {source dest type options} {
     set result [target_compile $source $dest $type $options];
     regsub "\[\r\n\]*$" "$result" "" result;
     regsub "^\[\r\n\]*" "$result" "" result;
-    if { $result != "" } {
+    if { $result != "" && [lsearch $options quiet] == -1} {
        clone_output "gdb compile failed, $result"
     }
     return $result;
@@ -1150,7 +1151,7 @@ proc gdb_compile_pthreads {source dest type options} {
     foreach lib {-lpthreads -lpthread -lthread} {
         # This kind of wipes out whatever libs the caller may have
         # set.  Or maybe theirs will override ours.  How infelicitous.
-        set options_with_lib [concat $options [list libs=$lib]]
+        set options_with_lib [concat $options [list libs=$lib quiet]]
         set ccout [gdb_compile $source $dest $type $options_with_lib]
         switch -regexp -- $ccout {
             ".*no posix threads support.*" {