How about:

>>>>>>>>
-  isGNU = staticmethod(config.memoize(isGNU))
+
+  import sys
+  if sys.version_info >= (2,5):
+    isGNU = staticmethod(config.memoize(isGNU))
+  else:
+    isGNU = staticmethod(isGNU)
<<<<<<<<<


or

>>>>>
-class memoize(dict):
-    '''Memoizing decorator.  No support for keyword arguments.'''
-    def __init__(self, func):
-        self.func = func
+import sys
+if sys.version_info >= (2,5):
+    class memoize(dict):
+        '''Memoizing decorator.  No support for keyword arguments.'''
+        def __init__(self, func):
+            self.func = func
 
-    def __call__(self, *args):
-        return self[args]
+        def __call__(self, *args):
+            return self[args]
 
-    def __missing__(self, args):
-        ret = self[args] = self.func(*args)
-        return ret
+        def __missing__(self, args):
+            ret = self[args] = self.func(*args)
+            return ret
+else:
+    def memoize(dict):
+        return dict
<<<<<<<<<<<<

Satish

On Mon, 1 Jul 2013, Satish Balay wrote:

> On Mon, 1 Jul 2013, Jed Brown wrote:
> 
> > Satish Balay <[email protected]> writes:
> > 
> > > *******************************************************************************
> > >         CONFIGURATION CRASH  (Please send configure.log to 
> > > [email protected])
> > > *******************************************************************************
> > > 'gcc'  File "/sandbox/petsc/petsc.clone/config/configure.py", line 293, 
> > > in petsc_configure
> > >     framework.configure(out = sys.stdout)
> > >   File 
> > > "/sandbox/petsc/petsc.clone/config/BuildSystem/config/framework.py", line 
> > > 942, in configure
> > >     child.configure()
> > >   File 
> > > "/sandbox/petsc/petsc.clone/config/BuildSystem/config/compilerFlags.py", 
> > > line 113, in configure
> > >     self.executeTest(self.configureCompilerFlags)
> > >   File "/sandbox/petsc/petsc.clone/config/BuildSystem/config/base.py", 
> > > line 126, in executeTest
> > >     ret = test(*args,**kargs)
> > >   File 
> > > "/sandbox/petsc/petsc.clone/config/BuildSystem/config/compilerFlags.py", 
> > > line 97, in configureCompilerFlags
> > >     flags = options.getCompilerFlags(language, 
> > > self.setCompilers.getCompiler(), bopt)
> > >   File 
> > > "/sandbox/petsc/petsc.clone/config/BuildSystem/config/compilerOptions.py",
> > >  line 212, in getCompilerFlags
> > >     flags = self.getCFlags(compiler, bopt)
> > >   File 
> > > "/sandbox/petsc/petsc.clone/config/BuildSystem/config/compilerOptions.py",
> > >  line 19, in getCFlags
> > >     if config.setCompilers.Configure.isGNU(compiler) or 
> > > config.setCompilers.Configure.isClang(compiler):
> > >   File "/sandbox/petsc/petsc.clone/config/BuildSystem/config/util.py", 
> > > line 68, in __call__
> > >     return self[args]
> > 
> > What exception is raised?
> 
> I don't know how to check that.
> 
> You can reproduce this on 'cg' by running [on next] 
> ./config/examples/arch-linux-gcc-absoft.py
> 
> Satish
> 

Reply via email to