#! /usr/bin/env tclkit # Generate the tclkit download matrix # -jcw set R ../equi4.com/pub/tk array set O { aix AIX bsdos BSD/OS darwin {Mac OS X} freebsd FreeBSD freebsd4 {FreeBSD 4.x} freebsd5 {FreeBSD 5.x} hpux HP-UX irix IRIX irix64 {IRIX 64} linux Linux macos {Mac Classic} netbsd NetBSD openbsd OpenBSD osf1 OSF1 solaris Solaris win32 Windows } array set M { 64 {MIPS 64} 9000 {HP 9000} alpha Alpha arm ARM fat {68k + PPC} hppa PA-RISC ia64 Itanium mips MIPS n32 {MIPS 32} n770 {Nokia 770} ppc PowerPC ppc64 {PowerPC 64} s390 S/390 s390x {S/390 64} sparc SPARC univ Universal win32 x86 x86 x86 x86_64 {x86 64} } # tclkit(linux-x86-static.upx.bin) = 2 4 5 6 8 9 mk::file open db mk::view layout db.n {full sh:I os mach gui stat upx ver:I} set versions [lsort -dictionary [glob -directory $R -tails 8*]] set clear {} set n 0 foreach x $versions { foreach y [glob -nocomplain -directory $R/$x -tails tclkit*-*] { array set f {os "" mach "" gui "" sh 0 stat "" upx ""} foreach z [split $y -.] { if {[info exists O($z)]} { set f(os) $O($z) } if {[info exists M($z)]} { set f(mach) $M($z) } switch $z { aqua { set f(gui) aqua } xft { set f(gui) xft } static { set f(stat) static } tclkitsh { set f(sh) 1 } upx { set f(upx) UPX } } } eval [linsert [array get f] 0 mk::row append db.n full $y ver $n] } incr n lappend clear "" } proc rowdone {{type 2} {cells ""}} { global R versions old if {[llength $type] == 0} return set sh [lindex $type 0] set c "colspan=[expr {[llength $cells] + 5}] bgcolor=\"#eeeeee\"" switch $sh { 0 { puts "