ADDED build/utils/kitcreator-downloader.tcl Index: build/utils/kitcreator-downloader.tcl ================================================================== --- /dev/null +++ build/utils/kitcreator-downloader.tcl @@ -0,0 +1,45 @@ +#!/usr/bin/env tclsh +# KitCreator downloader v0.1.1 -- download Tclkits generated by +# http://kitcreator.rkeene.org/kitcreator. Works with Tcl 8.5+ and Jim Tcl. +# Copyright (C) 2016, dbohdan. +# License: MIT. +proc download url { + set page [split [exec curl -s $url] \n] + set descr [lsearch -glob -inline $page *Description:*] + regexp {(http://kitcreator.rkeene.org/[^"]+/tclkit)} \ + [lsearch -glob -inline $page *URL:*] _ url + + set filename tclkit + + regexp {Tcl ([0-9.]+)} $descr _ version + append filename -$version + + regexp {Platform ([-a-z0-9]+)} $descr _ platform + append filename -$platform + + if {[regexp {packages statically linked} $descr]} { + append filename -staticpkgs + } + + if {[regexp {Threaded} $descr]} { + append filename -threaded + } + + if {[regexp {Packages: (.*)} $descr _ packages]} { + foreach package $packages { + set package [string trimright $package ,] + append filename -$package + } + } + + puts "Downloading $url to $filename..." + exec curl -o $filename $url >@ stdout 2>@ stderr +} + +set url [lindex $argv 0] +if {$url eq {}} { + puts "usage: $argv0 url" + puts {The URL must be a KitCreator Web Interface build page.} +} else { + download $url +}