Hex Artifact Content
Not logged in

Artifact 97cb78f4d81eb51c65e3fe99c5cd072c64f79f33:

File tools/lib/pkgIndex.tcl part of check-in [cdf5e6d8b7] - Encapsulated access to the fossil and cvs applications in their own packages. by aku on 2007-09-13 06:59:24.

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 31 2e 30 20 5b 6c 69 73 74 20 73       1.0 [list s
0070: 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69 6e  ource [file join
0080: 20 24 64 69 72 20 72 63 73 70 61 72 73 65 72 2e   $dir rcsparser.
0090: 74 63 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66  tcl]].package if
00a0: 6e 65 65 64 65 64 20 76 63 3a 3a 63 76 73 3a 3a  needed vc::cvs::
00b0: 63 6d 64 20 20 20 20 20 20 20 20 20 20 20 20 31  cmd            1
00c0: 2e 30 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20  .0 [list source 
00d0: 5b 66 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20  [file join $dir 
00e0: 63 76 73 5f 63 6d 64 2e 74 63 6c 5d 5d 0a 70 61  cvs_cmd.tcl]].pa
00f0: 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20 76  ckage ifneeded v
0100: 63 3a 3a 63 76 73 3a 3a 77 73 20 20 20 20 20 20  c::cvs::ws      
0110: 20 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74         1.0 [list
0120: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
0130: 69 6e 20 24 64 69 72 20 63 76 73 2e 74 63 6c 5d  in $dir cvs.tcl]
0140: 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65 65 64  ].package ifneed
0150: 65 64 20 76 63 3a 3a 66 6f 73 73 69 6c 3a 3a 63  ed vc::fossil::c
0160: 6d 64 20 20 20 20 20 20 20 20 20 31 2e 30 20 5b  md         1.0 [
0170: 6c 69 73 74 20 73 6f 75 72 63 65 20 5b 66 69 6c  list source [fil
0180: 65 20 6a 6f 69 6e 20 24 64 69 72 20 66 6f 73 73  e join $dir foss
0190: 69 6c 5f 63 6d 64 2e 74 63 6c 5d 5d 0a 70 61 63  il_cmd.tcl]].pac
01a0: 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20 76 63  kage ifneeded vc
01b0: 3a 3a 66 6f 73 73 69 6c 3a 3a 77 73 20 20 20 20  ::fossil::ws    
01c0: 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74 20        1.0 [list 
01d0: 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f 69  source [file joi
01e0: 6e 20 24 64 69 72 20 66 6f 73 73 69 6c 2e 74 63  n $dir fossil.tc
01f0: 6c 5d 5d 0a 70 61 63 6b 61 67 65 20 69 66 6e 65  l]].package ifne
0200: 65 64 65 64 20 76 63 3a 3a 66 6f 73 73 69 6c 3a  eded vc::fossil:
0210: 3a 69 6d 70 6f 72 74 3a 3a 63 76 73 20 31 2e 30  :import::cvs 1.0
0220: 20 5b 6c 69 73 74 20 73 6f 75 72 63 65 20 5b 66   [list source [f
0230: 69 6c 65 20 6a 6f 69 6e 20 24 64 69 72 20 69 6d  ile join $dir im
0240: 70 6f 72 74 63 76 73 2e 74 63 6c 5d 5d 0a 70 61  portcvs.tcl]].pa
0250: 63 6b 61 67 65 20 69 66 6e 65 65 64 65 64 20 76  ckage ifneeded v
0260: 63 3a 3a 74 6f 6f 6c 73 3a 3a 6c 6f 67 20 20 20  c::tools::log   
0270: 20 20 20 20 20 20 20 31 2e 30 20 5b 6c 69 73 74         1.0 [list
0280: 20 73 6f 75 72 63 65 20 5b 66 69 6c 65 20 6a 6f   source [file jo
0290: 69 6e 20 24 64 69 72 20 6c 6f 67 2e 74 63 6c 5d  in $dir log.tcl]
02a0: 5d 0a                                            ].