> The following was supposedly scribed by > Adrian Howard > on Wednesday 18 February 2004 10:54 am:
>You can get MakeMaker to do all the tedious jumping between directories >and building for you. See ><http://www.perlmonks.org/index.pl?node_id=291297> for an example. > >You can checkout, build and distribute individual modules if you want - >or checkout and build the whole tree. > >Would this work for you? This takes care of the build and distribute issues, but the check-in doesn't seem to be handled. I've got a subversion repository setup now, so I'm doing some experiments to figure out what is the best way to handle this. Basically, I want to checkout a purely code tree, such that if I did: svn co svn://servername/module/trunk/code I could then 'perl -Icode program.pl' and be using the latest version of the modules. But, I don't want to always be doing 'perl -Icode' or have to stick to the original checkout directory, so I'd rather copy the latest modules somewhere into the global @INC directories. svn co svn://servername/module/trunk/code cd code for i in `find -iname "*.pm"`;do cp $i /usr/lib/perl/site-perl/5.6.1/;done Note that this will only work if the tree of code/ looks like: `-- CAD `-- Drawing.pm (which is incompatible with the h2xs style tree) `-- CAD `-- Drawing `-- Drawing.pm So, now I can move all over the system, running new programs, and adding new functions to the modules (directly in the @INC tree), but when I reach the point where I want to check them back in, I've got to do something like: # (still in the code/ directory) for i in `find -iname "*.pm"`;do cp /usr/lib/perl/site-perl/5.6.1/$i $i;done svn commit Because /usr/lib/perl/site-perl/5.6.1/ will have lots of modules which are not in my svn repository. I guess the main issue is translating between the @INC-style tree and the h2xs-style tree. Then, ExtUtils::MakeMaker could take care of the rest. --Eric
