CPAN::SDKMaker
[email protected] (Stas Bekman) Thu, 07 Mar 2002 15:05:40 +0800
| Newsgroups | perl.sdk |
|---|---|
| Organization | Hope, Humanized |
| Message-ID | <[email protected]> |
Hope that this list is alive and kicking We were discussing a module that I wrote: CPAN::Grab at module-authors list: http://archive.develooper.com/[email protected]/msg00331.html and were thinking of a better name, I've suggested CPAN::SDKMaker which lead me to think that it actually belongs to the SDK discussion. So what do you think? I've attached the description at the end Since I haven't followed the SDK development. Do you have something like CPAN::Grab already, or does my tool gives some good start? Here it the thread with some good ideas in it: http://archive.develooper.com/[email protected]/index.html#00331 NAME CPAN::Grab - Grab a bundle or a number of modules from CPAN and package them into one buildable tar. SYNOPSIS % perl -MCPAN::Grab -wegrab MyLocalBundle 0.1 Bundle::Apache % perl -MCPAN::Grab -wegrab MyCoolBundle 0.1 MD5 CGI DESCRIPTION This package does a very simple thing. It grabs the source packages from CPAN, using "CPAN.pm" and puts them all into a single *tar.gz*, that later can be installed in one command. Sometimes it's important that we provide an easy way to provide all the required package, to save a hassle to users especially if they have to use our software, but know little or no Perl at all and don't know how to use CPAN shell to install all the required packages. Releasing Bundles and properly defining prerequisites is important, and we go one step further to actually provide sort of SDK. This package relies on the locally working CPAN shell. If you didn't configure your CPAN.pm, do it now. If normally CPAN.pm works for you, this package should work too. CAVEATS Some packages' build is interactive (i.e. user input is expected). Therefore we use CPAN's *inactivity_timeout* attribute to interrupt the awaiting for user's input after a few seconds, which works in *perl Makefile.PL* stage, but not during *make*. In the latter case you have to manually satisfy the requested input or interrupt it. Since here we completely rely on CPAN shell to do the right thing, there is not much we can do. USAGE To grab the packages *Foo* and *Bar* (which can be single modules, or bundles) and pack them into a package *FooBar* version 0.2, execute: % perl -MCPAN::Grab -wegrab FooBar 0.2 Foo Bar this will create FooBar-0.2.tar.gz in the current directory. Now to install the contents of this package, run: % tar -xzvf FooBar-0.2.tar.gz % cd FooBar % perl Makefile.PL && make install The last command will go through all the source packages and run: % perl Makefile.PL && make install in every one. AUTHORS Stas Bekman <[email protected]> Inspired by Doug MacEachern <[email protected]> _____________________________________________________________________ Stas Bekman JAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide http://perl.apache.org/guide mailto:[email protected] http://ticketmaster.com http://apacheweek.com http://singlesheaven.com http://perl.apache.org http://perlmonth.com/