OSDN Git Service

5c85cc00beabc677de5e86c590ef65288f0bbd03
[pf3gnuchains/pf3gnuchains4x.git] / winsup / cygwin / testsuite / winsup.api / winsup.exp
1 source "site.exp"
2
3 if { ! [isnative] } {
4     verbose "skipping winsup.api because it's not native"
5     return
6 }
7
8 set rv ""
9
10 proc ws_spawn {cmd args} {
11     global rv
12     verbose "running $cmd\n"
13     catch [eval "exec $cmd"] rv
14     verbose send "catchCode = $rv\n"
15 }
16
17 foreach src [glob -nocomplain $srcdir/$subdir/*.c $srcdir/$subdir/*/*.c] {
18     regsub "^$srcdir/$subdir/" $src "" testcase
19     regsub ".c$" $testcase "" base
20     regsub ".*/" $base "" basename
21     regsub "/" $base "-" base
22
23     if { [regexp "^xf-" $basename] } {
24         setup_xfail "*-*-*"
25     } else {
26         clear_xfail
27     }
28
29     ws_spawn "$CC $src $rootme/new-libcygwin.a -o $base.exe"
30     if { $rv != "" } {
31         verbose -log "$rv"
32         fail "$testcase (compile)"
33     } else {
34         ws_spawn "../cygrun ./$base.exe"
35         if { $rv != "" } {
36             verbose -log "$testcase: $rv"
37             fail "$testcase (execute)"
38         } else {
39             pass "$testcase"
40             file delete "$base.exe"
41         }
42     }
43 }