binutils-gdb/gdb/testsuite/gdb.mi/mi-info-os.exp

59 lines
1.8 KiB
Plaintext

# Copyright 2012-2016 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 3 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, see <http://www.gnu.org/licenses/>.
load_lib mi-support.exp
set MIFLAGS "-i=mi"
# This test is Linux-only.
if ![istarget *-*-linux*] then {
unsupported "mi-info-os.exp"
return -1
}
# Support for XML-output is needed to run this test.
if [gdb_skip_xml_test] then {
unsupported "mi-info-os.exp"
return -1
}
gdb_exit
if [mi_gdb_start] {
continue
}
standard_testfile basics.c
if [build_executable "Failed to build $testfile" $testfile $srcfile \
debug] {
return -1;
}
if {[mi_gdb_load $binfile] < 0} {
return -1
}
# When testing a cross configuration, we need to be sure to first
# connect to the target. If we didn't do that, GDB would try running
# the command against the default run target. The usual way to do
# that and cover all targets is to run to main, with mi_run_to_main.
# However, with native configurations, -info-os should work before
# running any program, so we want to avoid "run". Using
# mi_gdb_target_load directly instead achieves this.
if {[mi_gdb_target_load] < 0} {
return -1
}
# Try the argument-less form that lists all the types in a table.
mi_gdb_test "-info-os" ".*\\^done,OSDataTable=.*" "-info-os"