Ned Konz wrote:
>
> On Wednesday 23 May 2001 02:17, you wrote:
>
> > * Updated Inline.pod. I could really use a hand, if someone would like
> > to go over the doc for me and let me know what needs fixing.
Thanks for reviewing. I'll use your comments to update the doc. Here's
the answers I know off the top of my head:
> Under the VERSION config option, you say:
> It is the canonical factor for defining an installable module.
> What do you mean by this?
I'll rewrite that. I meant that Inline requires the VERSION parameter
when *installing* a module through ExtUtils::MakeMaker, and when loading
an *installed* module. It disallows VERSION in other contexts. This
eliminates potential ambiguity in what actions Inline is supposed to
perform. Does that explain it?
> Could you show setting VERSION in one place (will this work?):
>
> BEGIN { $VERSION = '0.20'; }
>
> use Inline C => 'DATA',
> VERSION => $VERSION,
> NAME => 'Math::Simple';
This would (probably) work. This is better:
BEGIN {
$VERSION = '0.20';
}
use Inline C => 'DATA',
VERSION => $VERSION,
NAME => 'Math::Simple';
The problem IIRC, is that ExtUtils::MakeMaker parses your code for the
$VERSION, if you use VERSION_FROM in Makefile.PL. The parse is pretty
braindead.
> The reason I ask, is that I like to use something like:
> ( $VERSION = '$Revision: 1.22 $ ' ) =~ /\$Revision:\s+(\S+)/;
> or
> $VERSION = sprintf('%d.%02d', (q$Revision: 1.10 $ =~ /\d+/g));
For that reason, the above code might not work in the same context.
> Will using Inline::MakeMaker instead of the standard ExtUtils::MakeMaker
> break the auto-loading operation of CPAN.pm? i.e. if someone has not yet
> installed Inline and goes to install a module that uses it using CPAN.pm,
> will CPAN.pm detect that Inline is needed? I thought it counted on
> ExtUtils::MakeMaker to tell it, but I don't know.
It should do the right thing. Inline::MakeMaker is a thin proxy for
ExtUtils::MakeMaker. It grabs control long enough to set up a few
things. Then it invokes the real McCoy. I think it adds a dependency on
Inline to the WriteMakefile options, but I'll double check.
It would be great if you could test the CPAN.pm install for me.
Cheers, Brian
PS I hope you don't mind me CCing the list. This is good info for
everybody.
--
perl -le 'use Inline C=>q{SV*JAxH(char*x){return newSVpvf
("Just Another %s Hacker",x);}};print JAxH+Perl'