1#   Copyright (C) 2011-2021 Free Software Foundation, Inc.
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; either version 3 of the License, or
6# (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program; see the file COPYING3.  If not see
15# <http://www.gnu.org/licenses/>.
16
17load_lib gdb-test.exp
18load_lib target-supports.exp
19
20dg-init
21v3-build_support
22
23global GDB
24if ![info exists ::env(GUALITY_GDB_NAME)] {
25    if [info exists GDB] {
26	set guality_gdb_name "$GDB"
27    } else {
28	set guality_gdb_name "[transform gdb]"
29    }
30    setenv GUALITY_GDB_NAME "$guality_gdb_name"
31}
32
33if {! [gdb_version_check]} {
34    dg-finish
35    # Only print unsupported message in one instance.
36    if ![gcc_parallel_test_run_p prettyprinters] {
37	return
38    }
39    gcc_parallel_test_enable 0
40    unsupported "prettyprinters.exp"
41    gcc_parallel_test_enable 1
42    return
43}
44
45global DEFAULT_CXXFLAGS
46global PCH_CXXFLAGS
47gdb-dg-runtest [lsort [glob $srcdir/$subdir/*.cc]] \
48  "" "$DEFAULT_CXXFLAGS $PCH_CXXFLAGS"
49
50if { [check_effective_target_lto] } {
51  append cxxflags " -flto"
52  # work around sourceware.org 20882
53  regsub {^(.*)-Wl,--gc-sections(.*)$} $cxxldflags {\1\2} cxxldflags
54  gdb-dg-runtest [lsort [glob $srcdir/$subdir/*.cc]] \
55    "" "$DEFAULT_CXXFLAGS -flto $PCH_CXXFLAGS"
56}
57
58if [info exists guality_gdb_name] {
59    unsetenv GUALITY_GDB_NAME
60}
61
62dg-finish
63