While testing MakeMaker on Cygwin, the new Install.t test was unable to clean up the blib/ directory created by blib due to mandatory file locking of the copied blib/lib/Big/Dummy.pm file. Investigating with lsof reveals that something in or called by pm_to_blib() is holding blib/lib/Big/Dummy.pm open and causing it to be locked. I think this is an old problem only now revealed because pm_to_blib() is rarely run within a larger program, and even rarer is it run on systems with mandatory locking.
I've eyeballed some of the suspect code, ExtUtils::Install, File::Copy & File::Compare but every filehandle I see opened appears to have a corresponding close. If someone can come up with a function to find all open, global filehandles in a perl program it would help a lot.
