From b6abb10ccc410a9a9657a03473979aac2590ff9e Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Fri, 24 May 2013 01:30:05 +0000 Subject: [PATCH] * boards/fission-dwp.exp: New file. --- gdb/testsuite/ChangeLog | 4 ++ gdb/testsuite/boards/fission-dwp.exp | 61 ++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 gdb/testsuite/boards/fission-dwp.exp diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index fea0e02acec..882054b59cc 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2013-05-23 Doug Evans + + * boards/fission-dwp.exp: New file. + 2013-05-23 Yao Qi Pedro Alves diff --git a/gdb/testsuite/boards/fission-dwp.exp b/gdb/testsuite/boards/fission-dwp.exp new file mode 100644 index 00000000000..7ab03d0d659 --- /dev/null +++ b/gdb/testsuite/boards/fission-dwp.exp @@ -0,0 +1,61 @@ +# Copyright 2012-2013 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 . + +# This file is a dejagnu "board file" and is used to run the testsuite +# with Fission support and generation of dwp files. +# http://gcc.gnu.org/wiki/DebugFission +# http://gcc.gnu.org/wiki/DebugFissionDWP +# +# Example usage: +# bash$ make check RUNTESTFLAGS='--target_board=fission-dwp' + +# This is copied from baseboards/unix.exp. +# At the moment this only supports things that unix.exp supports. +load_generic_config "unix" +process_multilib_options "" +set found_gcc [find_gcc] +set found_gxx [find_g++] +set_board_info compiler "$found_gcc" + +# This requires a relatively recent version of gcc (>4.7) and gold +# for the linker. +set_board_info debug_flags "-gdwarf-4 -gsplit-dwarf -Wl,--gdb-index" + +set contrib_dir [file normalize $srcdir/../contrib] +if ![info exists CC_FOR_TARGET] { + set CC_FOR_TARGET "$found_gcc" +} +set CC_FOR_TARGET "/bin/sh $contrib_dir/cc-with-tweaks.sh -p $CC_FOR_TARGET" +if ![info exists CXX_FOR_TARGET] { + set CXX_FOR_TARGET "$found_gxx" +} +set CXX_FOR_TARGET "/bin/sh $contrib_dir/cc-with-tweaks.sh -p $CXX_FOR_TARGET" + +if ![info exists READELF_FOR_TARGET] { + set READELF_FOR_TARGET "[transform readelf]" +} +# cc-with-tweaks.sh uses READELF, not READELF_FOR_TARGET. Blech. +set env(READELF) "$READELF_FOR_TARGET" + +if ![info exists DWP_FOR_TARGET] { + set DWP_FOR_TARGET "[transform dwp]" +} +# cc-with-tweaks.sh uses DWP, not DWP_FOR_TARGET. Blech. +set env(DWP) "$DWP_FOR_TARGET" + +# This is needed otherwise dejagnu tries to rsh to host "fission". Blech. +# Double blech: set_board_info only sets the value if not already set. +unset_board_info isremote +set_board_info isremote 0