From: SourceForge.net <no...@so...> - 2010-02-09 13:34:38
|
Bugs item #2948478, was opened at 2010-02-09 08:13 Message generated for change (Comment added) made by lvirden You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=2948478&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: 56. LibTomMath Group: development: 8.6b1.1 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Larry W. Virden (lvirden) Assigned to: Kevin B KENNY (kennykb) Summary: gmake genstubs fail for tcl cvs head Initial Comment: platform sparc solaris 8 sun c compiler, tcl cvs head from tcl-20100208.tar.gz downloaded from activestate. After configure, I ran gmake genstubs and got: Emitting tclTomMath syntax error in expression "$name in $hooks($intf)": extra tokens at end of expr ession ("if" test expression) while compiling "if {$name in $hooks($intf)} { set root 0 break; }" ("if" then script line 2) while compiling "if {[info exists hooks($intf)]} { if {$name in $hooks($intf)} { set root 0 break; } }" ("foreach" body line 2) while compiling "foreach intf [array names interfaces] { if {[info exists hooks($intf)]} { if {$name in $hooks($intf)} { set root 0 break; } } }" (compiling body of proc "emitInit", line 20) invoked from within "emitInit $name text" (procedure "emitInits" line 20) invoked from within "emitInits" (procedure "genStubs::init" line 22) invoked from within "genStubs::init" (file "/vol/tclsrcsol/tcl86/tcl/tools/genStubs.tcl" line 1112) gmake: *** [genstubs] Error 1 ---------------------------------------------------------------------- >Comment By: Larry W. Virden (lvirden) Date: 2010-02-09 08:34 Message: The tclsh in my path is a tclsh 8.4.9 version. genStubs.tcl has a package require Tcl 8.4 in it. So the tclsh was seen as compatible by Tcl. Tcl then declared the syntax wrong. The tclsh executable is no longer created by the core build scripts. It seems, to me, that the best solution would be for the core Makefiles to use the tclsh naming conventions that it creates. Certainly people could come along and create by hand additional links, etc. but the build environment shouldn't depend on those being present. ---------------------------------------------------------------------- Comment By: Alexandre Ferrieux (ferrieux) Date: 2010-02-09 08:20 Message: Cannot repro on my Fedora 12 (bug GNU make also). Note that this step (genstubs) depends on a previously installed tclsh. Possibly in your case that's the system default tclsh, that can be a bit old and not support the "in" infix operator in expressions. I hurry to add that if that's the case, then indeed it is a bug, because the build system should take steps to be bootstrappable on reasonably old Tcl version. Using too new constructs like "in" that are easy to emulate is a mistake. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=2948478&group_id=10894 |