Esempio n. 1
0
 def checkClassify(self, libName, funcs, libDir=None, otherLibs=[], prototype='', call='', fortranMangle=0, cxxMangle=0, cxxLink=0):
   '''Recursive decompose to rapidly classify functions as found or missing'''
   import config
   def functional(funcs):
     named = config.NamedInStderr(funcs)
     if self.check(libName, funcs, libDir, otherLibs, prototype, call, fortranMangle, cxxMangle, cxxLink):
       return True
     else:
       return named.named
   found, missing = config.classify(funcs, functional)
   return found, missing
Esempio n. 2
0
 def checkClassify(self, libName, funcs, libDir=None, otherLibs=[], prototype='', call='', fortranMangle=0, cxxMangle=0, cxxLink=0):
   '''Recursive decompose to rapidly classify functions as found or missing'''
   import config
   def functional(funcs):
     named = config.NamedInStderr(funcs)
     if self.check(libName, funcs, libDir, otherLibs, prototype, call, fortranMangle, cxxMangle, cxxLink):
       return True
     else:
       return named.named
   found, missing = config.classify(funcs, functional)
   return found, missing
Esempio n. 3
0
 def checkClassify(self, funcs, libraries = None):
   '''Recursive decompose to rapidly classify functions as found or missing
   To confirm that a function is missing, we require a compile/link
   failure with only that function in a compilation unit.  In contrast,
   we can confirm that many functions are present by compiling them all
   together in a large compilation unit.  We optimistically compile
   everything together, then trim all functions that were named in the
   error message and bisect the result.  The trimming is only an
   optimization to increase the likelihood of a big-batch compile
   succeeding; we do not rely on the compiler naming missing functions.
   '''
   def functional(funcs):
     named = config.NamedInStderr(funcs)
     if self.check(funcs, libraries, named.examineStderr):
       return True
     else:
       return named.named
   import config
   found, missing = config.classify(funcs, functional)
   return found, missing
Esempio n. 4
0
 def checkClassify(self, funcs, libraries = None):
   '''Recursive decompose to rapidly classify functions as found or missing
   To confirm that a function is missing, we require a compile/link
   failure with only that function in a compilation unit.  In contrast,
   we can confirm that many functions are present by compiling them all
   together in a large compilation unit.  We optimistically compile
   everything together, then trim all functions that were named in the
   error message and bisect the result.  The trimming is only an
   optimization to increase the likelihood of a big-batch compile
   succeeding; we do not rely on the compiler naming missing functions.
   '''
   def functional(funcs):
     named = config.NamedInStderr(funcs)
     if self.check(funcs, libraries, named.examineStderr):
       return True
     else:
       return named.named
   import config
   found, missing = config.classify(funcs, functional)
   return found, missing