binutils-gdb/gdb/testsuite/boards/local-remote-host-native.exp
Joel Brobecker 61baf725ec update copyright year range in GDB files
This applies the second part of GDB's End of Year Procedure, which
updates the copyright year range in all of GDB's files.

gdb/ChangeLog:

        Update copyright year range in all GDB files.
2017-01-01 10:52:34 +04:00

86 lines
2.8 KiB
Plaintext

# Copyright 2014-2017 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/>.
# This file is a dejagnu "board file" and is used to run the testsuite
# against local host, in remote host mode.
#
# This board file is used to emulate the real remote host testing, in
# which file system of host and build are not shared. This is achieved
# by copying files from source directory to ${host_dir}.
#
# To use this file:
# bash$ cd ${build_dir}/gdb
# bash$ make check RUNTESTFLAGS="--host_board=local-remote-host-native --target_board=local-remote-host-native HOST_DIR=/tmp/foo/"
#
# We set both target board and host board together to test a native gdb
# (host == target) on a remote host (host != build). $HOST_DIR is the
# directory for copying files to, to avoid messing up your HOME. When
# it is absent, files are copied to ./remote-host.
if { $board_type == "target" } {
set_board_info compiler gcc
}
# We have to explicitly specify GDB with the path to the copy in
# the build directory because otherwise it will be set to the
# result of "transform GDB" since the harness thinks we're using
# a remote host. See lib/gdb.exp.
set GDB [file join [pwd] "../gdb"]
verbose -log "Overriding setting of GDB to $GDB"
set_board_info hostname 127.0.0.1
set_board_info username $env(USER)
# The ssh key should be correctly set up that you ssh to 127.0.0.1
# without having to type password.
set_board_info rsh_prog /usr/bin/ssh
set_board_info rcp_prog /usr/bin/scp
set_board_info file_transfer "rsh"
if { ![info exists HOST_DIR] } {
set HOST_DIR [file join [pwd] "remote-host"]
}
if { $board_type == "host" } {
set_board_info gdb_opts "-d \"${HOST_DIR}\""
}
proc ${board}_spawn { board cmd } {
global board_info
set remote [board_info $board hostname]
set username [board_info $board username]
set RSH [board_info $board rsh_prog]
spawn $RSH -t -l $username $remote $cmd
set board_info($board,fileid) $spawn_id
return $spawn_id
}
proc ${board}_download { board src dest } {
global HOST_DIR
if { ![file exists $HOST_DIR] } {
file mkdir $HOST_DIR
}
set destfile [file join $HOST_DIR $dest]
verbose -log "${board}_download: file copy -force $src $destfile"
file copy -force $src $destfile
return $destfile
}