in reply to ExtUtils::MakeMaker : how to ignore files and not add them

I observed another problem: With the simple Makefile.PL I posted and the existence of a lock file, make complains.

For example: create a lock file for a perl module file I am editing (so, B.pm.lock exists). While the lock file exists, run perl Makefile.PL which produces Makefile. Exit the editor, the lock file is removed. Finally, do make. It complains (for me) that it can not find the lock file as it thinks it depends on it. And true: grep lock Makefile finds traces of the lock filename in the Makefile.

Any ideas?

bw, bliako

p.s. I have updated main post to include versions (ExtUtils/MakeMaker.pm 7.44 and perl v.5.28.2 in linux fedora 30 with latest updates)

Replies are listed 'Best First'.
Re^2: ExtUtils::MakeMaker : how to ignore files and not add them
by hippo (Archbishop) on Mar 20, 2020 at 10:49 UTC

    Confirmed here with version 7.04 of ExtUtils::MakeMaker. Here's a simple script to reproduce the error. Anything after the .pm in the module name will do.

    #!/bin/bash mkdir -p lib/A cat > lib/A/B.pm <<EOT package A::B; our \$VERSION = 0.01; 1; EOT cat > Makefile.PL <<EOT use ExtUtils::MakeMaker; WriteMakefile( NAME => 'A::B', VERSION_FROM => 'lib/A/B.pm' ); EOT ext=foo touch lib/A/B.pm$ext perl Makefile.PL rm lib/A/B.pm$ext make

    Certainly seems like a bug to me.

    Update: any file created anywhere within lib/ appears to trigger it.