| |
46 |
46 |
cd $tclDir |
| |
47 |
47 |
|
| |
48 |
48 |
# puts ENV=$::env(PATH) |
| |
49 |
49 |
# puts ENV=$::env(HOME) |
| |
50 |
50 |
# exec >@stdout 2>@stderr bash -lc "echo \$PATH" |
| |
51 |
51 |
# exec >@stdout 2>@stderr bash -lc "cd && pwd" |
| |
52 |
52 |
# exec >@stdout 2>@stderr bash -lc "cd && ls -la" |
| |
53 |
53 |
|
| |
54 |
54 |
switch -exact -- $TOOLCHAIN { |
| |
55 |
55 |
autoconf-tea { |
| |
56 |
56 |
exec >@stdout 2>@stderr bash -lc "./configure --libdir=$tclDir --enable-64bit" |
| |
57 |
57 |
exec >@stdout 2>@stderr bash -lc "make" |
| |
58 |
58 |
|
| |
59 |
59 |
cd $BUILDDIR |
| |
60 |
60 |
# puts BUILDDIR=$BUILDDIR,PWD=[pwd],INSTALLDIR=$INSTALLDIR |
| |
61 |
61 |
# exec >@stdout 2>@stderr bash -lc "./configure --with-tcl=$tclDir" |
| |
62 |
62 |
exec >@stdout 2>@stderr bash -lc "./configure --prefix=$INSTALLDIR --exec-prefix=$INSTALLDIR --with-tcl=$tclDir" |
| |
63 |
63 |
try { |
| |
64 |
64 |
exec >@stdout 2>@stderr bash -lc "make test" |
| |
65 |
65 |
} trap CHILDSTATUS {- opts} { |
| |
66 |
|
puts TEST=$opts |
| |
|
66 |
lassign [dict get $opts -errorcode] -> pid code |
| |
|
67 |
# when make encountered a build error, we expect to see an |
| |
|
68 |
# error code of 2. Any other, non-make error code will be |
| |
|
69 |
# ignored for the time being; assuming the test suite |
| |
|
70 |
# completed. |
| |
|
71 |
if {$code == 2} {exit 1} |
| |
|
72 |
puts stderr "WARNING: make failed with unexpected error code: $opts" |
| |
67 |
73 |
} |
| |
68 |
74 |
|
| |
69 |
|
try { |
| |
70 |
75 |
exec >@stdout 2>@stderr bash -lc "make install" |
| |
71 |
|
} trap CHILDSTATUS {- opts} { |
| |
72 |
|
puts INSTALL=$opts |
| |
73 |
76 |
} |
| |
74 |
|
|
| |
75 |
|
} |
| |
76 |
77 |
nmake-tea { |
| |
77 |
78 |
exec >@stdout 2>@stderr nmake -nologo -f makefile.vc TCLDIR=$tclRoot release |
| |
78 |
79 |
|
| |
79 |
80 |
cd [file join $BUILDDIR win] |
| |
80 |
81 |
|
| |
81 |
82 |
exec >@stdout 2>@stderr nmake -nologo -f makefile.vc TCLDIR=$tclRoot all |
| |
82 |
83 |
exec >@stdout 2>@stderr nmake -nologo -f makefile.vc TCLDIR=$tclRoot test |
| |
83 |
84 |
} |
| |
84 |
85 |
default { |
| |
85 |
86 |
throw [list BUILD UNSUPPORTED $TOOLCHAIN] \ |
| |
86 |
87 |
"Unsupported toolchain: '$TOOLCHAIN'." |
| |
87 |
88 |
} |
| |
88 |
89 |
} |
| |
89 |
90 |
} |
| |
90 |
91 |
|
| |
91 |
92 |
# puts ===$::argv |
| |
92 |
93 |
::build {*}$::argv |
| |
93 |
94 |
|
| |
94 |
95 |
|
| |
95 |
96 |
# Local variables: |