1 # Functional and regression tests in C
++ for libstdc
++.
3 # Copyright
(C
) 2001, 2002, 2003, 2004 Free Software Foundation
, Inc.
5 # This
program is free software
; you can redistribute it and
/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation
; either version
2 of the License
, or
8 #
(at your option
) any later version.
10 # This
program is distributed in the hope that it will be useful
,
11 # but WITHOUT
ANY WARRANTY
; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License
for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this
program; if not
, write to the Free Software
17 # Foundation
, Inc.
, 51 Franklin Street
, Fifth Floor
, Boston
, MA
02110-1301, USA.
19 # libstdc
++-v3 testsuite that uses the
'dg.exp' driver.
24 # Build the support objects.
29 #
If there is a
"testsuite_files" file, use it.
31 # This is a workaround
for problems reported with using
:
33 # runtest
normal.exp
="`cat testsuite_files`"
36 # http
://gcc.gnu.org
/ml
/libstdc
++/2005-03/msg00278.html
37 #
for discussion of the problem.
39 #
If that worked consistently
, we could modify
"make check" to
40 # pass that option
, and
then remove this code.
41 if {[info exists blddir
]} {
42 set tests_file
"${blddir}/testsuite/testsuite_files"
44 if {[info exists tests_file
] && [file
exists $tests_file
]} {
45 set f
[open $tests_file
]
46 while { ! [eof $f
] } {
48 if { [string length
"$t"] != 0 } {
49 lappend tests $
{srcdir
}/$
{t
}
54 # Find directories that might have tests.
55 set subdirs
[glob
"$srcdir/\[0-9\]\[0-9\]*"]
56 foreach d
[glob
"$srcdir/\[a-z\]*"] {
57 if {[file isdirectory $d
]} {
63 set subdir_tests
[find $s
*.cc
]
64 set subdir_tests_c
[find $s
*.c
]
65 foreach e $subdir_tests_c
{
66 lappend subdir_tests $e
69 # Filter out tests that should not be run.
70 foreach t $subdir_tests
{
71 # The DejaGNU
"find" procedure sometimes returns a list
72 # containing an empty string
, when it should really
return
78 #
1. interactive tests.
79 #
2. performance tests.
80 #
3. wchar_t tests
, if not supported.
81 #
4. thread tests
, if not supported.
82 if { [string first _xin $t
] == -1
83 && [string first performance $t
] == -1
84 && ($
{v3
-wchar_t
} ||
[string first wchar_t $t
] == -1)
85 && ($
{v3
-threads
} ||
[string first thread $t
] == -1) } {
91 set tests
[lsort $tests
]
94 global DEFAULT_CXXFLAGS
96 dg
-runtest $tests
"" "$DEFAULT_CXXFLAGS $PCH_CXXFLAGS"