OSDN Git Service

92b8146e505ef12d312e589fe34eaec3e243d9f7
[pf3gnuchains/gcc-fork.git] / libgomp / testsuite / libgomp.c++ / c++.exp
1 load_lib libgomp-dg.exp
2
3 global shlib_ext
4
5 set shlib_ext [get_shlib_extension]
6 set lang_link_flags "-lstdc++"
7 set lang_test_file_found 0
8 set lang_library_path "../libstdc++-v3/src/.libs"
9
10 # Initialize dg.
11 dg-init
12
13 set blddir [lookfor_file [get_multilibs] libgomp]
14
15
16 if { $blddir != "" } {
17     # Look for a static libstdc++ first.
18     if [file exists "${blddir}/${lang_library_path}/libstdc++.a"] {
19         set lang_test_file "${lang_library_path}/libstdc++.a"
20         set lang_test_file_found 1
21         # We may have a shared only build, so look for a shared libstdc++.
22     } elseif [file exists "${blddir}/${lang_library_path}/libstdc++.${shlib_ext}"] {
23         set lang_test_file "${lang_library_path}/libstdc++.${shlib_ext}"
24         set lang_test_file_found 1
25     } else {
26         puts "No libstdc++ library found, will not execute c++ tests"
27     }
28 } elseif { [info exists GXX_UNDER_TEST] } {
29     set lang_test_file_found 1
30     # Needs to exist for libgomp.exp.
31     set lang_test_file ""
32 } else {
33     puts "GXX_UNDER_TEST not defined, will not execute c++ tests"
34 }
35
36 if { $lang_test_file_found } {
37     # Gather a list of all tests.
38     set tests [lsort [glob -nocomplain $srcdir/$subdir/*.C]]
39
40     set ld_library_path $always_ld_library_path
41     if { $blddir != "" } {
42         add_path ld_library_path "${blddir}/${lang_library_path}"
43     }
44     set_ld_library_path_env_vars
45
46     set flags_file "${blddir}/../libstdc++-v3/scripts/testsuite_flags"
47     if { [file exists $flags_file] } {
48         set libstdcxx_includes [exec sh $flags_file --build-includes]
49     } else {
50         set libstdcxx_includes ""
51     }
52
53     # Main loop.
54     gfortran-dg-runtest $tests $libstdcxx_includes
55 }
56
57 # All done.
58 dg-finish