Subversion Repositories slepc-dev

Rev

Blame | Compare with Previous | Last modification | View Log | RSS feed

import os
import sys

import petscconf
import check

def Check(conf,directory,libs):

  if petscconf.MPIUNI:

    if petscconf.SCALAR == 'real':
      if petscconf.PRECISION == 'double':
        functions = ['dnaupd','dneupd','dsaupd','dseupd']
      else:
        functions = ['snaupd','sneupd','dsaupd','dseupd']
    else:
      if petscconf.PRECISION == 'double':
        functions = ['znaupd','zneupd']
      else:
        functions = ['cnaupd','cneupd']

    if libs:
      libs = [libs]
    else:
      libs = [['-larpack'],['-larpack_LINUX'],['-larpack_SUN4']]

  else:

    if petscconf.SCALAR == 'real':
      if petscconf.PRECISION == 'double':
        functions = ['pdnaupd','pdneupd','pdsaupd','pdseupd']
      else:
        functions = ['psnaupd','psneupd','pdsaupd','pdseupd']
    else:
      if petscconf.PRECISION == 'double':
        functions = ['pznaupd','pzneupd']
      else:
        functions = ['pcnaupd','pcneupd']

    if libs:
      libs = [libs]
    else:
      libs = [['-lparpack','-larpack'],['-lparpack_MPI','-larpack'],['-lparpack_MPI-LINUX','-larpack_LINUX'],['-lparpack_MPI-SUN4','-larpack_SUN4']]

  if directory:
    dirs = [directory]
  else:
    dirs = check.GenerateGuesses('Arpack')
   
  return check.FortranLib(conf,'ARPACK',dirs,libs,functions)