[this mysteriously did not reach the list yesterday so I'm sending again] At 06:03 PM 6/26/2002 +0200, Eduardo Abreu wrote: >I found another dangerous logical name when building 5.8.0-RC2 on my test >system : > "UTIL" conflicts with the build of the List/Util extension. >I first checked there's no such file in the TAR file, then I examined the >DESCRIP.MMS file in [.EXT.LIST.UTIL]. It was a very large file (1055 blocks) >with huge TO_INST_PM and PM_TO_BLIB lists starting with > >TO_INST_PM = [.Util.calcul]add. [.Util.calcul]add1. [.Util.calcul]add8. [.Util.calcul]alpha. \ > [.Util.calcul]at.for [.Util.calcul]bascng.for [.Util.calcul]blank. [.Util.calcul]block.for \ >.... > >PM_TO_BLIB = [.Util.vim.doc]editing.txt [---.lib.List.Util.vim.doc]editing.txt [.Util.unzip.macos.source]macbin3.h \ > [---.lib.List.Util.unzip.macos.source]macbin3.h [.Util.zip.win32]makefile.ibm [---.lib.List.Util.zip.win32]makefile.ibm \ >.... Yup, I saw this with DBD::Sybase once; it had translated the SYBASE logical name and collected a list of all the files in my Sybase installation. Needless to say, do NOT run the clean or realclean targets through MMK. >Those files are nowhere in the Perl distribution, they are on my system disk >in directory SYS$SYSDEVICE:[UTIL]. As this directory contains several >utilities, I have a "$ DEFINE UTIL SYS$SYSDEVICE:[UTIL]" in my SYLOGIN.COM. >It turns out this logical badly affects the execution of "perl makefile.pl" >for List/Util. >Is this a problem in MakeMaker ? > >After a "$ DEASSIGN UTIL", I restarted the build and it ran to completion >without other errors. Your analysis is correct, and yes, it is a general problem with MakeMaker. More precisely, I believe it is a problem with File::Find, a module MakeMaker depends on to locate files. IIRC it takes a directory spec like [foo.bar.baz] and does an opendir() on each of "foo", "bar", and "baz" in turn, which on VMS invokes logical name translation if any of those is a logical name. This can and does send you way off course if the logical points to a directory elsewhere. Clearly fixing File::Find is the way to go eventually. It's a long and complicated module and I don't see anything happening on that before 5.8.0 is released, though if someone comes up with a 3-line fix do speak up. Perhaps the best we can do for now is identify the things under [.ext] that are most likely to collide with existing logical names. Here's what I see right off: LIB LIST MIME POSIX THREAD THREADS TIME UNICODE UTILThread Previous | Thread Next