1# Expect script for run_dump_test based ld-sh tests.
2#   Copyright (C) 2001-2020 Free Software Foundation, Inc.
3#
4# This file is part of the GNU Binutils.
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 3 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
19# MA 02110-1301, USA.
20#
21# Written by Hans-Peter Nilsson (hp@bitrange.com)
22#
23
24# This file is kept separate from sh.exp, because having it separate
25# simplifies selective testing, like in "make check-ld
26# RUNTESTFLAGS=rd-sh.exp=shared-1".  It is assumed that sh.exp is a place
27# for constructs where the name of the test is harder to extract and
28# select than here.
29
30if ![istarget sh*-*-*] {
31    return
32}
33
34set asflags_save "$ASFLAGS"
35set ldflags_save "$LDFLAGS"
36
37set rd_test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
38foreach shtest $rd_test_list {
39    # We need to strip the ".d", but can leave the dirname.
40    verbose [file rootname $shtest]
41    # vxworks-static.d relies on files created by sh-vxworks.exp.
42    # We run it there instead of here.
43    if { [file tail $shtest] != "vxworks1-static.d" } {
44	run_dump_test [file rootname $shtest]
45    }
46    if [string match $srcdir/$subdir/*-dso.d $shtest] {
47	# Copy the output of the DSO-createing test to .so file.
48	# Notice that a DSO-creating test must precede the tests
49	# which need that DSO in sort-order by name.
50	set cmd "cp tmpdir/dump tmpdir/[file rootname [file tail $shtest]].so"
51	send_log "$cmd\n"
52	set cmdret [catch "exec $cmd" comp_output]
53	send_log "$comp_output\n"
54	# FIXME: What if it fails?  Need we do something?
55    }
56}
57set ASFLAGS "$asflags_save"
58set LDFLAGS "$ldflags_save"
59