NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
A few things that might be helpful to consider... (Score:1)
First of all, an offering. Below is some bash-shell code that might be a start toward a portion of what you requested. The code was passed a parameter that was the name of a perl source tar-ball (.gz). It built the version of perl and installed it to a local usr/test/ directory tree relative to where it was installed, and at the time would execute the CPAN module's 'autobundle' command and write to a file. (It also removed the 'built-in' and 'command line' entries from the various Makefiles, because of issues I experienced.)
#!/bin/bash +x CSD=`pwd` PATH=$CSD/usr/test/bin:$PATH file=$1 directory=`gzip -dc $file | tar tf - | head -1 | tr '/' ' ' | gawk '{print $1;}'` echo " $file - $directory " gzip -dc $file | tar xf - rm -fr $CSD/usr/test/* cd $directory rm -f config.sh Policy.sh sh Configure -des -Dprefix=$CSD/usr/test -Dusedevel -Uinstallusrbinperl for makefile in `find . -type f -name makefile` do cp -v $makefile $makefile.temp grep -v built-in $makefile.temp | grep -v 'command line' > $makefile done make make test make install ( cd /usr/include && $CSD/usr/test/bin/h2ph *.h sys/*.h )
date >> ~/.cpan/Bundle/$directory.txt
perl -MCPAN -e 'autobundle;'
cd $CSD
echo rm -fr $directory
rm -fr $directory
I could imagine after building the perl version desired using a Bundle file to have the system install the other modules desired. If the system had a complete local CPAN mirror, then testing under a number of different versions might even be possible.
Having said that, the only big issues I can see with the proposal are: a) the presence or lack thereof of external libraries or utilities that might be required to test a particular configuration, and b) the presence of tests for the module(s) involved (as there are some modules I have encountered in the past that lacked tests, which made it difficult to install them automatically from the CPAN module.
I would also suggest considering having the system email the results or notification of their availability, and possibly writing into some kind of report the submitter could come back to check later (such as a report stored in a database or something).
I don't know if any of what I said is of any help or anything, but if you choose to move ahead with a project like this, I wish you the best with it.
Reply to This
Re:A few things that might be helpful to consider. (Score:1)
#!/bin/bash +x
CSD=`pwd`
PATH=$CSD/usr/test/bin:$PATH
file=$1
directory=`gzip -dc $file | tar tf - | head -1 | tr '/' ' ' | gawk '{print $1;}'`
echo " $file - $directory "
gzip -dc $file | tar xf -
rm -fr $CSD/usr/test/*
cd $directory
rm -f config.sh Policy.sh
sh Configure -des -Dprefix=$CSD/usr/test -Dusedevel -Uinstallusrbinperl
for makefile in `find .
Re:A few things that might be helpful to consider. (Score:1)
<ecode>tags, Luke.