On 08/12/14 10:42, Martin Kletzander wrote: > With this patch it is possible to put e.g. "perl::XML:XPath -" in > $buildreq in bootstrap.conf which will cause a check for perl module > XML::XPath
looks useful... > perl -m"XML::XPath" -e 'exit 0' >/dev/null 2>&1 > > If this fails due to any other error then XML::XPath missing, it is left > on the user to fix up his/hers bootstrap.conf. One of the examples > might be perl itself missing, which should be in $buildreq and precede > any perl::Module specifications. Versioning of perl modules is not > supported. > > Signed-off-by: Martin Kletzander <mklet...@redhat.com> > --- > build-aux/bootstrap | 14 +++++++++++++- > 1 file changed, 13 insertions(+), 1 deletion(-) > > diff --git a/build-aux/bootstrap b/build-aux/bootstrap > index ce90bc4..8f948a0 100755 > --- a/build-aux/bootstrap > +++ b/build-aux/bootstrap > @@ -1,6 +1,6 @@ > #! /bin/sh > # Print a version string. > -scriptversion=2013-12-05.23; # UTC > +scriptversion=2014-12-08.10; # UTC > > # Bootstrap this package from checked-out sources. > > @@ -446,6 +446,7 @@ check_versions() { > test "$appvar" = TAR && appvar=AMTAR > case $appvar in > GZIP) ;; # Do not use $GZIP: it contains gzip options. > + PERL::*) ;; # Keep perl modules as-is > *) eval "app=\${$appvar-$app}" ;; > esac > > @@ -463,6 +464,17 @@ check_versions() { > ret=1 > continue > } ;; > + # Another check is for perl modules. These can be written as > + # e.g. per::XML::XPath in case of XML::XPath module, etc. s/per/perl/ > + perl::*) > + # Check for perl modules > + app="${app#perl::}" > + if ! perl -m"$app" -e 'exit 0' >/dev/null 2>&1; then Should we honor $PERL here? > + warn_ "Error: perl module '$app' not found" > + ret=1 > + fi > + continue > + ;; > esac > if [ "$req_ver" = "-" ]; then > # Merely require app to exist; not all prereq apps are well-behaved > thanks, Pádraig.