Ryan Schmidt wrote:

We can't use 'array unset env' as that is documented to disconnect Tcl from the environment, and some messing around hasn't shown a clean way to work around this. Maybe a Tcl expert is needed, and determining if this is Mac-specific or 8.4.7; of course, either way, we have to deal with it.

FYI, this is done in portutil.tcl (base/src/port1.0/) in proc command_exec.

Thanks for the analysis! I added a link to your explanation to http://trac.macports.org/wiki/LeopardProblems

Do we really not have a macports base ticket for this issue yet? I couldn't find one but maybe I'm searching wrong. We need one so that we can mark all the other port bugs that are cropping up as duplicates of it.

As far as I can tell, Apple explicitly enables the use of "putenv" to clear out environment variables in Leopard's tcl-64 variant (#define USE_PUTENV 1). Whereas the original tcl 8.4.7 (and Tiger's tcl-20.1.4 too) only uses that on Windows, as far as I can tell. And sets the var to NULL otherwise. Still doesn't explain why doing a "port clean" and restarting fixes it, but it's a difference between the two Tcl-8.4.7's ?

--anders

_______________________________________________
macports-users mailing list
macports-users@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo/macports-users

Reply via email to