Artifact 5bdfea38bf87844aa680e6f9bb22dbefad84171e:
File
tools/lib/pkgIndex.tcl
part of check-in
[6f121db1e2]
- Added structure to the CVS frontend code, putting the repository traversal
into its own package.
by
aku on
2007-09-17 01:43:07.
0000: 69 66 20 7b 21 5b 70 61 63 6b 61 67 65 20 76 73 if {![package vs
0010: 61 74 69 73 66 69 65 73 20 5b 70 61 63 6b 61 67 atisfies [packag
0020: 65 20 72 65 71 75 69 72 65 20 54 63 6c 5d 20 38 e require Tcl] 8
0030: 2e 34 5d 7d 20 72 65 74 75 72 6e 0a 70 61 63 6b .4]} return.pack
0040: 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a age ifneeded vc:
0050: 3a 72 63 73 3a 3a 70 61 72 73 65 72 20 20 20 20 :rcs::parser
0060: 20 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74 1.0 [list
0070: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f source [file jo
0080: 69 6e 20 24 64 69 72 20 72 63 73 70 61 72 73 65 in $dir rcsparse
0090: 72 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 r.tcl]].package
00a0: 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 63 76 73 ifneeded vc::cvs
00b0: 3a 3a 63 6d 64 20 20 20 20 20 20 20 20 20 20 20 ::cmd
00c0: 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75 1.0 [list sou
00d0: 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 rce [file join $
00e0: 64 69 72 20 63 76 73 5f 63 6d 64 2e 74 63 6c 5d dir cvs_cmd.tcl]
00f0: 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64 ].package ifneed
0100: 65 64 20 76 63 3a 3a 63 76 73 3a 3a 77 73 20 20 ed vc::cvs::ws
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 2e 30 1.0
0120: 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b 66 [list source [f
0130: 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 63 76 ile join $dir cv
0140: 73 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 s.tcl]].package
0150: 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 63 76 73 ifneeded vc::cvs
0160: 3a 3a 77 73 3a 3a 66 69 6c 65 73 20 20 20 20 20 ::ws::files
0170: 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75 1.0 [list sou
0180: 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 rce [file join $
0190: 64 69 72 20 63 76 73 5f 66 69 6c 65 73 2e 74 63 dir cvs_files.tc
01a0: 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 l]].package ifne
01b0: 65 64 65 64 20 76 63 3a 3a 66 6f 73 73 69 6c 3a eded vc::fossil:
01c0: 3a 63 6d 64 20 20 20 20 20 20 20 20 20 20 20 31 :cmd 1
01d0: 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 .0 [list source
01e0: 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 [file join $dir
01f0: 66 6f 73 73 69 6c 5f 63 6d 64 2e 74 63 6c 5d 5d fossil_cmd.tcl]]
0200: 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64 65 .package ifneede
0210: 64 20 76 63 3a 3a 66 6f 73 73 69 6c 3a 3a 77 73 d vc::fossil::ws
0220: 20 20 20 20 20 20 20 20 20 20 20 20 31 2e 30 20 1.0
0230: 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b 66 69 [list source [fi
0240: 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 66 6f 73 le join $dir fos
0250: 73 69 6c 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 sil.tcl]].packag
0260: 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 66 e ifneeded vc::f
0270: 6f 73 73 69 6c 3a 3a 69 6d 70 6f 72 74 3a 3a 63 ossil::import::c
0280: 76 73 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 vs 1.0 [list s
0290: 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e ource [file join
02a0: 20 24 64 69 72 20 69 6d 70 6f 72 74 63 76 73 2e $dir importcvs.
02b0: 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 tcl]].package if
02c0: 6e 65 65 64 65 64 20 76 63 3a 3a 66 6f 73 73 69 needed vc::fossi
02d0: 6c 3a 3a 69 6d 70 6f 72 74 3a 3a 73 74 61 74 73 l::import::stats
02e0: 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 1.0 [list sourc
02f0: 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 e [file join $di
0300: 72 20 69 6d 70 6f 72 74 5f 73 74 61 74 69 73 74 r import_statist
0310: 69 63 73 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 ics.tcl]].packag
0320: 65 20 69 66 6e 65 65 64 65 64 20 76 63 3a 3a 66 e ifneeded vc::f
0330: 6f 73 73 69 6c 3a 3a 69 6d 70 6f 72 74 3a 3a 6d ossil::import::m
0340: 61 70 20 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 ap 1.0 [list s
0350: 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e ource [file join
0360: 20 24 64 69 72 20 69 6d 70 6f 72 74 5f 6d 61 70 $dir import_map
0370: 2e 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 .tcl]].package i
0380: 66 6e 65 65 64 65 64 20 76 63 3a 3a 74 6f 6f 6c fneeded vc::tool
0390: 73 3a 3a 6c 6f 67 20 20 20 20 20 20 20 20 20 20 s::log
03a0: 20 20 31 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 1.0 [list sour
03b0: 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 ce [file join $d
03c0: 69 72 20 6c 6f 67 2e 74 63 6c 5d 5d 0a ir log.tcl]].