Skip Menu |

This queue is for tickets about the Module-Build CPAN distribution.

Report information
The Basics
Id: 42168
Status: open
Priority: 0/
Queue: Module-Build

People
Owner: Nobody in particular
Requestors: pshangov [...] yahoo.com
Cc:
AdminCc:

Bug Information
Severity: Unimportant
Broken in: 0.30
Fixed in: (no value)



Subject: M::B on Win32 produces 'EXE_FILES' option in Makefile.PL that fails under *nix
Using Module::Build 0.30 on WinXP SP3, AS Perl 5.10: If I put a perl script (e.g. "check_perldiag") in the 'bin' folder of my distribution, Module::Build creates a Makefile.PL with the following option: 'EXE_FILES' => [ 'bin\\check_perldiag' ] This, however, apparently fails under *unix, where make says: "No rule to make target `bin\check_perldiag', needed by `blib/script/bin\check_perldiag'. Stop." If I change the above option to: 'EXE_FILES' => [ 'bin/check_perldiag' ] both make on *nix and nmake on Win32 run without any problems, but Module::Build keeps overriding this line every time I do "./Build dist". I cannot change it back from within the resulting archive, since this messes up the permissions inside the archive and CPAN refuses to index the distribution (due to the "no world-writable dirs" rule). Petar Shangov
On Mon Jan 05 16:04:31 2009, pshangov wrote: Show quoted text
> If I change the above option to: > > 'EXE_FILES' => [ > 'bin/check_perldiag' > ] > > both make on *nix and nmake on Win32 run without any problems, but > Module::Build keeps overriding this line every time I do "./Build > dist". I cannot change it back from within the resulting archive, > since this messes up the permissions inside the archive and CPAN > refuses to index the distribution (due to the "no world-writable > dirs" rule).
If you disable the Makefile generation, the Makefile.PL becomes just like any other file (but you have to manually maintain this.) It sounds like you're using the 'traditional' form of Makefile.PL. I think an alternative would be to use the passthrough form. Another alternative is to eliminate the Makefile.PL, or just send to fix its generation. Thanks, Eric