Re: [Module-build-general] PATCH: added ACTION_versioninstall
Status: Beta
Brought to you by:
kwilliams
From: Brian I. <in...@tt...> - 2003-02-20 04:39:05
|
On 19/02/03 20:43 -0600, Ken Williams wrote: > Applied! > > I think the fact that $only::config::versionlib, > $only::config::versionarch, and @ARGV need to be manipulated > dynamically means that only.pm needs a little interface work, though - > do you plan on adding a programmatic interface that could just accept > this stuff as arguments? Good point. That's pretty crufty. I'll fix it. Expect a patch later tonight. Cheers, Brian > > -Ken > > On Wednesday, February 19, 2003, at 07:24 PM, Brian Ingerson wrote: > > > Here's a patch to make: > > > > ./Build versioninstall work. > > > > Cheers, Brian > > > > > > diff -ru Module-Build-0.15-orig/lib/Module/Build/Base.pm > > Module-Build-0.15/lib/Module/Build/Base.pm > > --- Module-Build-0.15-orig/lib/Module/Build/Base.pm Fri Jan 17 > > 12:53:11 2003 > > +++ Module-Build-0.15/lib/Module/Build/Base.pm Wed Feb 19 17:01:52 2003 > > @@ -761,6 +761,28 @@ > > ExtUtils::Install::install($self->install_map('blib'), 1, 1); > > } > > > > +sub ACTION_versioninstall { > > + my ($self) = @_; > > + eval { require only }; > > + die "You must have only.pm installed for this operation\n" > > + if $@; > > + > > + if (defined $self->{args}{versionlib}) { > > + require Config; > > + $only::config::versionlib = $self->{args}{versionlib}; > > + $only::config::versionarch = > > + File::Spec->catdir($self->{args}{versionlib}, > > + $Config::Config{archname}); > > + } > > + my @args = (); > > + if (defined $self->{args}{version}) { > > + push @args, $self->{args}{version}; > > + } > > + $self->depends_on('build'); > > + local @ARGV = @args; > > + only::install(); > > +} > > + > > sub ACTION_clean { > > my ($self) = @_; > > foreach my $item (keys %{$self->{cleanup}}) { > > diff -ru Module-Build-0.15-orig/lib/Module/Build.pm > > Module-Build-0.15/lib/Module/Build.pm > > --- Module-Build-0.15-orig/lib/Module/Build.pm Fri Jan 17 13:11:05 2003 > > +++ Module-Build-0.15/lib/Module/Build.pm Wed Feb 19 16:46:26 2003 > > @@ -733,6 +733,28 @@ > > anything, it will just report what it I<would> have done if you had > > actually run the C<install> action. > > > > +=item versioninstall > > + > > +If you have C<only.pm> installed on your system, you can use this > > action > > +to install a module into the version specific library trees. This > > means > > +that you can have several versions of the same module installed and > > +C<use> a specific one like this: > > + > > + use only MyModule => 0.55; > > + > > +To override the default installation libraries in C<only::config>, > > +specify the C<versionlib> parameter when you run the C<Build.PL> > > script: > > + > > + perl Build.PL versionlib=/my/version/place/ > > + > > +To override which version the module is installed as, specify the > > +C<versionlib> parameter when you run the C<Build.PL> script: > > + > > + perl Build.PL version=0.50 > > + > > +See the C<only.pm> documentation for more information on version > > +specific installs. > > + > > =item manifest > > > > This is an action intended for use by module authors, not people > > Only in Module-Build-0.15: x > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. > > The most comprehensive and flexible code editor you can use. > > Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. > > www.slickedit.com/sourceforge > > _______________________________________________ > > Module-build-general mailing list > > Mod...@li... > > https://lists.sourceforge.net/lists/listinfo/module-build-general > > > > -Ken |