Skip Menu |

This queue is for tickets about the ExtUtils-MakeMaker CPAN distribution.

Report information
The Basics
Id: 51645
Status: rejected
Priority: 0/
Queue: ExtUtils-MakeMaker

People
Owner: Nobody in particular
Requestors: dolmen [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 6.54
Fixed in: (no value)



Subject: Files generated from PL_FILES are not installed
In my Makefile.PL for DateTime::TimeZone::HPUX 1.03: http://cpansearch.perl.org/src/DOLMEN/DateTime-TimeZone-HPUX-1.03/Makefile.PL PL_FILES => { 'JavaMap.PL' => 'lib/DateTime/TimeZone/HPUX/Map.pm' }, However Map.pm is not installed (and not listed anywhere in the Makefile except in the build part) unless the file was already present at Makefile.PL run time. The problem seems to be that generated files are not considered when the file list is established. -- Olivier Mengué - http://o.mengue.free.fr/
On Wed Nov 18 08:07:23 2009, DOLMEN wrote: Show quoted text
> In my Makefile.PL for DateTime::TimeZone::HPUX 1.03: > http://cpansearch.perl.org/src/DOLMEN/DateTime-TimeZone-HPUX- > 1.03/Makefile.PL > > PL_FILES => { 'JavaMap.PL' => 'lib/DateTime/TimeZone/HPUX/Map.pm' > }, > > However Map.pm is not installed (and not listed anywhere in the > Makefile > except in the build part) unless the file was already present at > Makefile.PL run time. > > The problem seems to be that generated files are not considered when > the > file list is established.
PL_FILES is normally run after pm_to_blib which is when stuff gets copied from lib to blib, so MakeMaker doesn't see the new file in lib. There's some attempted DWIMery, but it requires you to tell MakeMaker about the generated file via PM. The sucky thing is you can't easily add to PM. Either MakeMaker generates it or you do. I tried fiddling with PL_FILES in the past to fix this, but it has to work this way for backwards compatibility reasons. See 26dc65fa6ddb938365990a1aaea2de8c77a3834c and 371dc5b91bb6d61355cb8d6afaa294e473b484cf in the git history if you're curious. A work around is to put the new file into blib/lib instead of lib. Sorry, that's the best I can offer.