From d9e4770529f1c1b645b74a6b3ec6ee5be2b7459d Mon Sep 17 00:00:00 2001 From: Vince Darley Date: Mon, 13 Oct 2003 11:15:51 +0000 Subject: [PATCH] filesystem boundary fix --- ChangeLog | 18 ++++++++++++++++++ DESCRIPTION.txt | 5 +++-- configure.in | 2 +- generic/vfs.c | 4 ++-- library/pkgIndex.tcl | 10 +++++----- library/pkgIndex.tcl.in | 2 +- win/makefile.vc | 12 ++++++------ 7 files changed, 36 insertions(+), 17 deletions(-) diff --git a/ChangeLog b/ChangeLog index d888394..975d535 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2003-10-13 Vince Darley + + * generic/vfs.c: added support for TCL_FILESYSTEM_VERSION_2 + which provides for more seamless boundaries between filesystems + (using VfsListMountsInDir), which allows for fixing Tcl's + [Bug 800106]. This means (with a suitable version of Tcl) that + 'glob */*' across a filesystem boundary will now work correctly. + + The code should compile and load successfully with both Tcl 8.4 + and a future version of Tcl where the newer code will be + operational. + + * library/pkgIndex.tcl(.in): + * DESCRIPTION.txt: + * win/makefile.vc: + * configure.in: updated version to 1.3.0 reflecting the above + significant change. + 2003-10-06 Jeff Hobbs * configure: updated to autoconf 2.5 diff --git a/DESCRIPTION.txt b/DESCRIPTION.txt index 2041e63..8c48444 100644 --- a/DESCRIPTION.txt +++ b/DESCRIPTION.txt @@ -1,15 +1,16 @@ Identifier: vfs -Version: 1.2.1 +Version: 1.3.0 Title: Interface to Virtual File Systems for Tcl 8.4 Creator: Vince Darley Description: The goal of this extension is to expose Tcl 8.4's new filesystem C API to the Tcl level. Rights: BSD URL: http://sourceforge.net/projects/tclvfs -Date: 2002-05-25 +Date: 2003-10-08 Architecture: tcl Architecture: Linux-x86 Require: tcl 8.4 +Recommend: tcl 8.5 Recommend: Trf Recommend: http 2.6 Recommend: base64 diff --git a/configure.in b/configure.in index 59a862f..34f50a3 100644 --- a/configure.in +++ b/configure.in @@ -25,7 +25,7 @@ AC_SUBST(CONFIGDIR) PACKAGE=vfs MAJOR_VERSION=1 -MINOR_VERSION=2 +MINOR_VERSION=3 PATCHLEVEL= VERSION=${MAJOR_VERSION}.${MINOR_VERSION}${PATCHLEVEL} diff --git a/generic/vfs.c b/generic/vfs.c index 010952f..ceb8743 100644 --- a/generic/vfs.c +++ b/generic/vfs.c @@ -341,7 +341,7 @@ Vfs_Init(interp) } vfsFilesystem.version = TCL_FILESYSTEM_VERSION_1; #ifdef VFS_COMPILE_WITH_84 - vfsFilesystem.listMountsProc = &VfsListVolumes; + vfsFilesystem.listVolumesProc = &VfsListVolumes; #else vfsFilesystem.listMountsProc = (Tcl_FSListMountsProc*)&VfsListVolumes; #endif @@ -351,7 +351,7 @@ Vfs_Init(interp) } vfsFilesystem.version = TCL_FILESYSTEM_VERSION_2; #ifdef VFS_COMPILE_WITH_84 - vfsFilesystem.listMountsProc = + vfsFilesystem.listVolumesProc = (Tcl_FSListVolumesProc*)&VfsListMountsInDir; #else vfsFilesystem.listMountsProc = &VfsListMountsInDir; diff --git a/library/pkgIndex.tcl b/library/pkgIndex.tcl index 3e4023e..9e3dd5f 100644 --- a/library/pkgIndex.tcl +++ b/library/pkgIndex.tcl @@ -17,14 +17,14 @@ variable vfs::dll if {$::tcl_platform(platform) eq "unix"} { if {[info exists ::tcl_platform(debug)]} { - set dll libvfs1.2g + set dll libvfs1.3g } else { - set dll libvfs1.2 + set dll libvfs1.3 } } elseif {[info exists ::tcl_platform(debug)]} { - set dll vfs12g + set dll vfs13g } else { - set dll vfs12 + set dll vfs13 } set dll [file join $dir $dll[info sharedlibextension]] @@ -38,7 +38,7 @@ proc loadvfs {dll} { load $dll } -package ifneeded vfs 1.2.1 [list loadvfs $dll] +package ifneeded vfs 1.3.0 [list loadvfs $dll] package ifneeded starkit 1.2 [list source [file join $dir starkit.tcl]] package ifneeded vfslib 1.3.1 [list source [file join $dir vfslib.tcl]] diff --git a/library/pkgIndex.tcl.in b/library/pkgIndex.tcl.in index 137c77c..fb9d2e7 100644 --- a/library/pkgIndex.tcl.in +++ b/library/pkgIndex.tcl.in @@ -25,7 +25,7 @@ proc loadvfs {dll} { load $dll } -package ifneeded vfs 1.2.1 [list loadvfs $vfs::dll] +package ifneeded vfs 1.3.0 [list loadvfs $vfs::dll] package ifneeded starkit 1.2 [list source [file join $dir starkit.tcl]] package ifneeded vfslib 1.3.1 [list source [file join $dir vfslib.tcl]] diff --git a/win/makefile.vc b/win/makefile.vc index d6872fe..a08fc04 100644 --- a/win/makefile.vc +++ b/win/makefile.vc @@ -9,11 +9,11 @@ # MACHINE = IX86 -VFS_VERSION = 1.2.1 -DLL_VERSION = 12 +VFS_VERSION = 1.3.0 +DLL_VERSION = 13 # comment the following line to compile with symbols -NODEBUG=1 +NODEBUG=0 !IF "$(NODEBUG)" == "1" DEBUGDEFINES = @@ -59,7 +59,7 @@ include32 = -I"$(TOOLS32)\include" # point TCL and TCLLIB to your tcl distribution TCL = c:\progra~1\tcl -TCLLIB = $(TCL)\lib\tclstub84$(DBGX).lib +TCLLIB = $(TCL)\lib\tclstub85.lib INSTALLDIR = $(TCL)\lib\vfs$(VFS_VERSION) ###################################################################### @@ -140,8 +140,8 @@ RMDIR = deltree /Y !endif INCLUDES = \ - -I../../tcl8.4/generic \ - -I../../tcl8.4/windows \ + -I../../cvs-tcl/generic \ + -I../../cvs-tcl/windows \ -I$(TOOLS32)/include \ -I../generic -- 2.23.0