#   Copyright (C) 1988, 1990, 1991, 1992, 1993 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
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */

# Please email any bugs, comments, and/or additions to this file to:
# bug-dejagnu@prep.ai.mit.edu

# This file was written by Rob Savoye. (rob@cygnus.com)

load_lib util-defs.exp
load_lib utils-lib.exp

# print the version number of objdump
send_user "Version [binutil_version $OBJDUMP]"
set test_code $objdir/$subdir/bintest
set addr "\[0-9A-Fa-f\]+"

#
# setup the list. Here the layout:
# 1st field is the command line option.
# 2nd field is the pattern to match. NOTE - No variable substitutions can be used!
# 3rd field is an optional message to print with PASS/FAIL.
#
set utility [list { "" ".*Usage:.*objdump.*\-ahifdDr.*t.*xsl.*\-m machine.*\-j section[-_]name.*\.\.\." "No arguments" } \
	    { "-i" "BFD header file version.*srec.*header .* endian, data .* endian.*(m68k|i386|sparc|sh|z8k|h8|vax|tahoe|i960|i860|a29k|mips|we32k|romp|alliant|convex|m88k|pyramid|rs6000|hppa|alpha|arm)" "Show formats" } ]

foreach i $utility {
    if [util_test "$OBJDUMP" "$OBJDUMPFLAGS [lindex $i 0]" $test_code [lindex $i 1] [lindex $i 2]] then {
	fail "[lindex $i 2]"
    } else {
	pass "[lindex $i 2]"
    }
    # this is a hack. Since execing objdump with no errors produces a Tcl
    # error, we need to reset so runtest.exp doesn't get confused.
    if [string match "" [lindex $i 0]] then {
	unset errorInfo
    }
}
#
# FIXME: lots more options to test...
#





