in reply to MakeMaker, h2xs, and writing CPAN modules
Hi Perrin,
Ive had similar issues as you are discussing here, and the approach ive come up with to work around them is as follows:
- set the enviornment variable PERL5LIB to be the root of your "lib development path". So for my machine its set to
Now anything in this path is treated as it would be if it were per/lib or perl/site/libperl5lib=d:\development\perl\devlib -
From this directory use h2xs to create a module framework. There is a trick with this however. Once you do
Go into the Bar directory and move everything up 1 level. And then lose the Bar directory.h2xs -AXC -n Foo::Barmove *.* .. rd Bar - Now to save yourself some pain (IMO) create a subdirectory of Foo called t. move the created test.pl into /t and rename it test.t
Once all of this is done,(assuming i havent forgotten some niggling but important detail) your module should be _both_ useable as normal and usable as per make. Thus once you are happy with the module you should be able to say
A caveat however: this technique has the problem that you can only be developing 1 module at a time in each path/class heirarchy. Ie you cant work on Foo::Bar and Foo::Baz at the same time (the makefiles and etc would overwrite each other.)nmake nmake test nmake dist
To be honest, normally I develop a module in the devlib _without_ using h2xs first. Then I use h2xs and copy everything but the autogenerated .pm file into the appropriate directory.
As always with advice like this: YMMV
Yves / DeMerphq
---
Writing a good benchmark isnt as easy as it might look.
In Section
Seekers of Perl Wisdom