blob: 3e7999330934046a2cd479a82df53bc60c5ccc2e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
proc test_procedure {} {
global srcdir subdir
set wd [pwd]
set flags ""
if {$srcdir == ""} {
set pattern "*.c"
} else {
set pattern "$srcdir/$subdir/*.c"
}
# for first pass, force 64-bit compilation for 64-bit systems
# Add any other 64-bit arcvhitecture you want tested below.
# To find tcl's platform name for your machine, run the following:
# echo "puts $::tcl_platform(machine)" | tclsh
set do_64_bit_pass 0
if {$::tcl_platform(machine) == "x86_64" || $::tcl_platform(machine) == "ppc64" || $::tcl_platform(machine) == "s390x" } {
set do_64_bit_pass 1
}
if {$do_64_bit_pass} {
set flags "additional_flags=-m64"
foreach filename [lsort [glob $pattern]] {
set file [file tail [string range $filename 0 end-2]]
if {![installtest_p]} { untested $file; continue }
target_compile $filename $wd/$file executable $flags
send_log "Testing 64-bit ${file}\n"
set res [exec $srcdir/$subdir/test.tcl $file $filename]
if {$res == "PASS"} {
pass "$file"
} elseif {$res == "UNSUPP"} {
unsupported "$file not supported on this arch"
} else {
fail "64-bit $file"
send_log "$res\n"
}
catch {exec rm -f $wd/$file}
}
}
if { $::tcl_platform(machine) == "s390x" } {
set flags "additional_flags=-m31"
} else {
set flags "additional_flags=-m32"
}
foreach filename [lsort [glob $pattern]] {
set file [file tail [string range $filename 0 end-2]]
if {![installtest_p]} { untested $file; continue }
target_compile $filename $wd/$file executable $flags
send_log "Testing 32-bit ${file}\n"
set res [exec $srcdir/$subdir/test.tcl $file $filename]
if {$res == "PASS"} {
pass "32-bit $file"
} elseif {$res == "UNSUPP"} {
unsupported "$file not supported on this arch"
} else {
fail "32-bit $file"
send_log "$res\n"
}
catch {exec rm -f $wd/$file}
}
}
set timeout 600
test_procedure
|