summaryrefslogtreecommitdiffstats
path: root/tools/mkVfs.tcl
diff options
context:
space:
mode:
authorhypnotoad <yoda@etoyoc.com>2014-09-12 16:03:20 (GMT)
committerhypnotoad <yoda@etoyoc.com>2014-09-12 16:03:20 (GMT)
commitee30b1c0abf416e9e6b409e713c1309f2de7eb1b (patch)
tree010d3f3d0066645e2f9db108a45d10ebacca5088 /tools/mkVfs.tcl
parentb3362b7dfd448156b70fbb8e708bb16397e94692 (diff)
downloadtcl-ee30b1c0abf416e9e6b409e713c1309f2de7eb1b.zip
tcl-ee30b1c0abf416e9e6b409e713c1309f2de7eb1b.tar.gz
tcl-ee30b1c0abf416e9e6b409e713c1309f2de7eb1b.tar.bz2
Developed an improved bootloader built around TclSetPreInitScript. The new bootloader
now mounts the VFS before the interpreter is initialized, and gives it enough hints to point to the VFS for init.tcl and main.tcl (If present) Also, Tcl_ZVfs_Boot now takes and additional argument: the name of the file to mount. As the difference between a normal shell and a zvfs enabled shell is one again, several lines of code, the example shells is folded back into tclAppInit.c and controlled with macros. The ZVFS commands are now loaded in as a static package. Removed the Stubs entry for Tcl_Boot_ZVFS, it's now intended that shells build their own copy of tclZipVfs.o
Diffstat (limited to 'tools/mkVfs.tcl')
-rw-r--r--tools/mkVfs.tcl6
1 files changed, 2 insertions, 4 deletions
diff --git a/tools/mkVfs.tcl b/tools/mkVfs.tcl
index c7bf17b..83eb9e6 100644
--- a/tools/mkVfs.tcl
+++ b/tools/mkVfs.tcl
@@ -15,7 +15,7 @@ proc pkgIndexDir {root fout d1} {
if {[file isdirectory $f] && [string compare CVS $ftail]} {
pkgIndexDir $root $fout $f
} elseif {[file tail $f] eq "pkgIndex.tcl"} {
- puts $fout "set dir \$HERE[string range $d1 $idx end]"
+ puts $fout "set dir \${VFSROOT}[string range $d1 $idx end]"
puts $fout [cat $f]
}
}
@@ -87,7 +87,7 @@ set fout [open ${TCL_SCRIPT_DIR}/tclIndex a]
puts $fout {#
# MANIFEST OF INCLUDED PACKAGES
#
-set HERE $dir
+set VFSROOT $dir
}
pkgIndexDir ${TCL_SCRIPT_DIR} $fout ${TCL_SCRIPT_DIR}
close $fout
@@ -96,12 +96,10 @@ puts $fout {
# Save Tcl the trouble of hunting for these packages
}
set ddedll [glob -nocomplain ${TCLSRC_ROOT}/win/tcldde*.dll]
-puts "DDE DLL $ddedll"
if {$ddedll != {}} {
puts $fout [cat ${TCL_SCRIPT_DIR}/dde/pkgIndex.tcl]
}
set regdll [glob -nocomplain ${TCLSRC_ROOT}/win/tclreg*.dll]
-puts "REG DLL $ddedll"
if {$regdll != {}} {
puts $fout [cat ${TCL_SCRIPT_DIR}/reg/pkgIndex.tcl]
}