From: SourceForge.net <no...@so...> - 2010-09-02 14:29:16
|
Bugs item #3057500, was opened at 2010-09-01 10:52 Message generated for change (Comment added) made by dgp You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=3057500&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 81. Bundled Packages Group: development: 8.6b1.1 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Twylite (twylite) Assigned to: Nobody/Anonymous (nobody) Summary: Itcl itcl.tcl path, INSTALL_DIR and pkgIndex mismatch Initial Comment: When building Itcl on WIN32 with MSVC6 or MSVC9 as part of a tcl "nmake release install": (1) Itcl installs to the wrong folder. It ends up with bin/, include/ and lib/ under $(TCLDIR)/lib rather than under $(TCLDIR). (2) The name of the lib folder is incorrect. The C logic expects to find it's init script (itcl.tcl) in a lib folder named after the $(ITCL_PATH_LEVEL), but the makefile.vc uses just the major and minor versions. (3) The pkgIndex.tcl does not work correctly for a build with OPTS=threads. The "add" variable needs to include the "t" suffix in such a case. (4) The package version in the pkgIndex.tcl file (major + minor) is mismatched with the DLL (ITCL_PATCH_LEVEL), causing "package require" to report errors. The following patch fixes all these issues: diff -r1.3 makefile.vc 60c60 < DOTVERSION = $(ITCL_MAJOR_VERSION).$(ITCL_MINOR_VERSION) --- > DOTVERSION = $(ITCL_PATCH_LEVEL) 70,74c70,74 < BIN_INSTALL_DIR = $(_INSTALLDIR)\bin < DOC_INSTALL_DIR = $(_INSTALLDIR)\doc < LIB_INSTALL_DIR = $(_INSTALLDIR)\lib < SCRIPT_INSTALL_DIR = $(_INSTALLDIR)\lib\$(PROJECT)$(DOTVERSION) < INCLUDE_INSTALL_DIR = $(_INSTALLDIR)\include --- > BIN_INSTALL_DIR = $(_INSTALLDIR)\..\bin > DOC_INSTALL_DIR = $(_INSTALLDIR)\..\doc > LIB_INSTALL_DIR = $(_INSTALLDIR) > SCRIPT_INSTALL_DIR = $(_INSTALLDIR)\$(PROJECT)$(DOTVERSION) > INCLUDE_INSTALL_DIR = $(_INSTALLDIR)\..\include 274c274 < echo ^ ^ ^ ^ set add {}>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" --- > echo ^ ^ ^ ^ set add {$(SUFX:g=)}>> "$(SCRIPT_INSTALL_DIR)\pkgIndex.tcl" 281c281 < echo ^ ^ ^ ^ package ifneeded Itcl $(VERSION) [list load\ --- > echo ^ ^ ^ ^ package ifneeded Itcl $(DOTVERSION) [list load\ ---------------------------------------------------------------------- >Comment By: Don Porter (dgp) Date: 2010-09-02 10:29 Message: Regarding the OPTS=threads issue, I would be surprised if Itcl makes any use of the Tcl routines dealing with threads. So I can't see any reason why a hypothetical --enable-threads build of Itcl would differ from the --disable-threads build. Might be an opportunity for simplification here, rather than maintenance repair of tracking a bunch of letter suffices. ---------------------------------------------------------------------- Comment By: Twylite (twylite) Date: 2010-09-02 10:26 Message: I'm assuming that was a request to do so, so it is now Itcl bug #3058200 ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2010-09-02 09:25 Message: Is this issue raised with the upstream Itcl project as well? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=3057500&group_id=10894 |