On Thu, Jul 3, 2008 at 9:16 AM, David Cantrell <[EMAIL PROTECTED]> wrote: > $ tar xzf perl-5.x.x.tar.gz > $ perl-5.x.x/bin/perl -MCPAN -e 'install qw(...)' # <-- INSTALL > $ rm -rf perl-5.x.x > > So scripts packaged with modules really do get installed to wherever > they would get installed by an ordinary user running perl from his home > dir or similar.
Scripts in that install will get installed. That doesn't mean that scripts in "build_requires" will get installed if the user has configured build_requires not to be installed but only made available during build. That's a perfectly reasonable use case -- one of the reasons why "build_requires" exists distinct from "requires" in the first place. > Indeed. A system that only test()s is not, IMO, a reasonable testing > system because real users just don't do that. What about ActiveState and the PPM build system? And I would imagine that some of the unix distributions might similarly need to confirm that "test" works successfully and then package up blib without installing. There are lots of 'real users' -- some might well load the CPAN shell and run 'test Foo::Bar::Baz' before calling 'install Foo::Bar::Baz'. The distribution shouldn't care. CPAN.pm should make sure listed dependencies can be found. >> Hey, David Cantrell -- how about Devel::CheckBin to go along in the >> series with Devel::CheckLib and Devel::CheckOS? :-) > > What should it do? Look for a named binary in the $PATH and > $Config{whateverbin}? What about checking that the frobnitz command it > finds is the frobnitz command that you want? If you don't think that > the latter matters, consider the case of specifically needing GNU make > or GNU tar. I'd suggest searching in $ENV{PATH} and $Config{whateverbin} and returning an array of paths for any commands that match. (Extra credit -- match frobnitz/frobnitz.exe/frobnitz.bat on win32). Haven't really thought about priority. Probably $ENV{PATH} should take precedence as it's what shows up on the command line. Figuring out whether any path returned is the 'right' frobnitz is an exercise for the programmer. David