Tcl Source Code

View Ticket
Login
Ticket UUID: 3bd69eba99a395ee83cc0d1e29b867f3fbd55ff4
Title: `make dist` fails when tclsh9.0 is on $PATH
Type: Bug Version: 8.6.5+
Submitter: dgp Created on: 2016-05-31 19:30:21
Subsystem: 53. Configure and Build Tools Assigned To: jan.nijtmans
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2016-06-01 15:15:07
Resolution: Fixed Closed By: jan.nijtmans
    Closed on: 2016-06-01 15:15:07
Description:
If you've installed tclsh9.0 on your system
(say, off the novem branch), then when you
try to build Tcl 8.6(.5) you get...

$ ./configure
...
checking for tclsh... /path/to/bin/tclsh9.0
...
$ make dist
/path/to/tclsh9.0 /path/to/genStubs.tcl ...
version conflict for package "Tcl": have 9.0a0, need 8.4
    while executing
"package require Tcl 8.4"
    (file "/path/to/genStubs.tcl" line 13)

Either genStubs.tcl can be more accepting in what
Tcl versions it screens out, or the configure script
can become more limiting in what executables it
permits NATIVE_TCLSH to be, but something has to
change.
User Comments: jan.nijtmans added on 2016-06-01 15:15:07:
Explanation why all the "package require Tcl 8" checks are not necessary: Since the pkgIndex.tcl, or the startup in tkMain.c already check for the minimum required Tcl version, a "package require Tk 8.x" will already result in a failure if the Tcl version is not compatible with the Tk version.

jan.nijtmans added on 2016-06-01 12:07:49:
Fixed on all open branches. Thanks for noticing this: the tools should (and do) just work for any Tcl version which is currently supported.

jan.nijtmans added on 2016-05-31 20:39:41:
I would vote for enabling genStubs.tcl to run with novem, so simply removing the "8.4" (just "package require Tcl" without version number) should suffice