[petsc-dev] download-ml failure with perl-5.22

Satish Balay balay at mcs.anl.gov
Mon Oct 19 15:25:24 CDT 2015


Ok - updated the tarball. I can push this to maint..


Satish

-----
diff --git a/config/BuildSystem/config/packages/ml.py b/config/BuildSystem/config/packages/ml.py
index 670c0a8..55d2fd3 100644
--- a/config/BuildSystem/config/packages/ml.py
+++ b/config/BuildSystem/config/packages/ml.py
@@ -4,9 +4,9 @@ import os
 class Configure(config.package.GNUPackage):
   def __init__(self, framework):
     config.package.GNUPackage.__init__(self, framework)
-    self.gitcommit         = '3edc7782780b5874ee4bfce3898436c7bca3fcc6'
+    self.gitcommit         = 'v6.2-p3'
     self.giturls           = ['https://bitbucket.org/petsc/pkg-ml.git']
-    self.download          = ['http://ftp.mcs.anl.gov/pub/petsc/externalpackages/ml-6.2-p2.tar.gz']
+    self.download          = ['http://ftp.mcs.anl.gov/pub/petsc/externalpackages/ml-6.2-p3.tar.gz']
     self.functions         = ['ML_Set_PrintLevel']
     self.includes          = ['ml_include.h']
     self.liblist           = [['libml.a']]


On Mon, 19 Oct 2015, Jed Brown wrote:

> I have updated pkg-ml with this fix.  Satish, could you roll a new tarball?
> 
> Jed Brown <jed at jedbrown.org> writes:
> 
> > My --download-ml fails with the following:
> >
> > perl ./config/generate-makeoptions.pl ./src/Makefile ML > /home/jed/petsc/mpich-optg/include/Makefile.export.ml.macros
> > Makefile:754: recipe for target 'install-exec-hook' failed
> > make[3]: Leaving directory '/home/jed/petsc/mpich-optg/externalpackages/ml'
> > Makefile:645: recipe for target 'install-exec-am' failed
> > make[2]: Leaving directory '/home/jed/petsc/mpich-optg/externalpackages/ml'
> > Makefile:602: recipe for target 'install-am' failed
> > make[1]: Leaving directory '/home/jed/petsc/mpich-optg/externalpackages/ml'
> > Makefile:325: recipe for target 'install-recursive' failedCan't use 'defined(@array)' (Maybe you should just omit the defined()?) at ./config/generate-makeoptions.pl line 13.
> >
> > The relevant code is:
> >
> >   if( !(defined(@ARGV) && scalar(@ARGV)==2) ) {
> >     die "Error, this script takes two and only two arguments (makefile_name package_name).!\n";
> >   }
> >
> > Using defined() on arrays has been deprecated for ages, but was finally
> > removed in perl 5.22.
> >
> > https://metacpan.org/pod/distribution/perl/pod/perldelta.pod#defined-array-and-defined-hash-are-now-fatal-errors
> >
> >
> > I rarely touch Perl, but I think they could safely rewrite this as
> >
> >   if($#ARGV != 1) {
> >
> >
> > Also, this file was deleted over 4 years ago in their repository.  I
> > feel like we're going to become de-facto maintainers of standalone ML if
> > we don't find a way to move to the version that upstream develops (which
> > is now tangled in Trilinos, at least from a build perspective).
> 




More information about the petsc-dev mailing list