binutils-gdb/gdb/testsuite/boards/remote-stdio-gdbserver.exp
Andrew Burgess 1d506c26d9 Update copyright year range in header of all files managed by GDB
This commit is the result of the following actions:

  - Running gdb/copyright.py to update all of the copyright headers to
    include 2024,

  - Manually updating a few files the copyright.py script told me to
    update, these files had copyright headers embedded within the
    file,

  - Regenerating gdbsupport/Makefile.in to refresh it's copyright
    date,

  - Using grep to find other files that still mentioned 2023.  If
    these files were updated last year from 2022 to 2023 then I've
    updated them this year to 2024.

I'm sure I've probably missed some dates.  Feel free to fix them up as
you spot them.
2024-01-12 15:49:57 +00:00

99 lines
3.3 KiB
Text

# Copyright 2011-2024 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
# with a remotehost and gdbserver using stdio for communicating through
# ssh. Certain firewalls prevent gdbserver from using the usual mechanism of
# listening on a remote port, so use stdio via ssh instead.
#
# To use this file:
# bash$ cd ${build_dir}/gdb
# bash$ make check RUNTESTFLAGS="--target_board=remote-stdio-gdbserver \
# REMOTE_USERNAME=... REMOTE_HOSTNAME=... \
# [REMOTE_TMPDIR=${remote_dir}] [GDBSERVER=${remote_gdbserver}]"
load_board_description "stdio-gdbserver-base"
# Test machine info. The generic_config gdbserver reads some of these
# values from board_info, so this file must set them there.
if [info exists REMOTE_USERNAME] {
set_board_info username $REMOTE_USERNAME
} else {
set_board_info username unspecified_username
}
if [info exists REMOTE_HOSTNAME] {
set_board_info hostname $REMOTE_HOSTNAME
} else {
set_board_info hostname unspecified_hostname
}
set_board_info rsh_prog /usr/bin/ssh
set_board_info rcp_prog /usr/bin/scp
# Some remote machines don't have writable home directories.
if [info exists REMOTE_TMPDIR] {
set_board_info remotedir $REMOTE_TMPDIR
} else {
# Set remotedir by default, to force remote_download target to give an
# absolute file name.
save_vars {rsh_cmd res} {
set rsh_cmd \
[join \
[list \
[board_info $board rsh_prog] \
-l [board_info $board username] \
[board_info $board hostname]]]
set res [remote_exec build $rsh_cmd pwd]
if { [lindex $res 0] != 0 } {
error "Couldn't set remotedir using pwd"
}
set_board_info remotedir [string trim [lindex $res 1]]
}
}
if [info exists GDBSERVER] {
unset_board_info gdb_server_prog
set_board_info gdb_server_prog $GDBSERVER
}
proc get_remote_login { } {
set result ""
if {[board_info [target_info name] exists username]} {
append result "[board_info [target_info name] username]@"
}
if {[board_info [target_info name] exists hostname]} {
append result "[board_info [target_info name] hostname]"
}
return $result
}
proc get_target_remote_pipe_cmd { } {
set target_exec [gdbserver_download_current_prog]
set rsh_cmd "[board_info [target_info name] rsh_prog] [get_remote_login]"
set gdbserver "[board_info [target_info name] gdb_server_prog]"
return "$rsh_cmd $gdbserver --once stdio $target_exec"
}
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
}