You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
62 lines
2.0 KiB
|
|
set url_kitbase "https://www.gitea1.intx.com.au/jn/punkbin/raw/branch/master" |
|
|
|
package require http |
|
package require tls |
|
http::register https 443 [list ::tls::socket -autoservername true] |
|
package require platform |
|
set plat [platform::identify] |
|
set os [lindex [split $plat -] 0] |
|
set runtime_available 0 |
|
set scriptdir [file dirname [info script]] |
|
switch -- $os { |
|
"win32" { |
|
set url "$url_kitbase/win32-x86_64/tclsh902z.exe" |
|
set output [file join $scriptdir "../src/runtime/tclsh902z.exe"] |
|
set runtime_available 1 |
|
} |
|
"linux" { |
|
switch -glob -- $plat { |
|
*x86_64 { |
|
set url "$url_kitbase/linux-x86_64/tclkit-902-Linux64-intel-dyn" |
|
set output [file join $scriptdir "../src/runtime/tclkit-902-Linux64-intel-dyn"] |
|
set runtime_available 1 |
|
} |
|
*arm { |
|
set url "$url_kitbase/linux-x86_64/tclkit-902-Linux64-arm-dyn" |
|
set output [file join $scriptdir "../src/runtime/tclkit-902-Linux64-arm-dyn"] |
|
set runtime_available 1 |
|
} |
|
default { |
|
# |
|
puts stderr "No runtime currently available for linux $::tcl_platform(machine)" |
|
} |
|
} |
|
} |
|
"macosx" { |
|
set url "$url_kitbase/macosx/tclkit-902-Darwin64-dyn" |
|
set output [file join $scriptdir "../src/runtime/tclkit-902-Darwin64-dyn"] |
|
set runtime_available 1 |
|
} |
|
"freebsd" { |
|
puts stderr "No runtime currently available for freebsd" |
|
} |
|
default { |
|
puts stderr "No runtime currently available for $os" |
|
} |
|
} |
|
|
|
if {$runtime_available} { |
|
if {[file exists $output]} { |
|
puts stderr "Runtime already found at $output" |
|
exit 1 |
|
} |
|
puts stdout "Attempting to download $url" |
|
set fd [open $output wb] |
|
set tok [http::geturl $url -channel $fd -binary 1] |
|
close $fd |
|
if {[http::status $tok] eq "ok" && [http::ncode $tok] == 200} { |
|
puts "Download complete." |
|
} |
|
http::cleanup $tok |
|
}
|
|
|