19d310bb7SBarry Smithfrom __future__ import generators 29d310bb7SBarry Smithimport config.base 39d310bb7SBarry Smith 49d310bb7SBarry Smithclass Configure(config.base.Configure): 59d310bb7SBarry Smith def __init__(self, framework): 69d310bb7SBarry Smith config.base.Configure.__init__(self, framework) 79d310bb7SBarry Smith self.headerPrefix = '' 89d310bb7SBarry Smith self.substPrefix = '' 98d35c829SSatish Balay self.have_command_argument = False 109d310bb7SBarry Smith return 119d310bb7SBarry Smith 129d310bb7SBarry Smith def __str__(self): 139d310bb7SBarry Smith return '' 149d310bb7SBarry Smith 159d310bb7SBarry Smith def setupHelp(self, help): 169d310bb7SBarry Smith import nargs 179d310bb7SBarry Smith return 189d310bb7SBarry Smith 199d310bb7SBarry Smith def setupDependencies(self, framework): 209d310bb7SBarry Smith config.base.Configure.setupDependencies(self, framework) 219d310bb7SBarry Smith self.compilers = self.framework.require('config.compilers', self) 220542e31aSBarry Smith self.setCompilers = self.framework.require('config.setCompilers', self) 239d310bb7SBarry Smith self.functions = self.framework.require('config.functions', self) 249d310bb7SBarry Smith self.libraries = framework.require('config.libraries', self) 259d310bb7SBarry Smith return 269d310bb7SBarry Smith 279d310bb7SBarry Smith def configureFortranCommandLine(self): 289d310bb7SBarry Smith '''Check for the mechanism to retrieve command line arguments in Fortran''' 299d310bb7SBarry Smith 309d310bb7SBarry Smith # These are for when the routines are called from Fortran 31d1fb55d9SBarry Smith 32d1fb55d9SBarry Smith self.libraries.pushLanguage('FC') 33d1fb55d9SBarry Smith self.libraries.saveLog() 34*9c9d773aSMartin Diehl if self.libraries.check('','', call = ' integer i\n character(len=80) arg\n i = command_argument_count()\n call get_command_argument(i,arg)'): 35d1fb55d9SBarry Smith self.logWrite(self.libraries.restoreLog()) 36d1fb55d9SBarry Smith self.libraries.popLanguage() 378d35c829SSatish Balay self.have_command_argument = True 388d35c829SSatish Balay else: 398d35c829SSatish Balay self.logPrint("Missing GET_COMMAND_ARGUMENT() support in Fortran!") 409d310bb7SBarry Smith return 419d310bb7SBarry Smith 429d310bb7SBarry Smith def configure(self): 430542e31aSBarry Smith if hasattr(self.setCompilers, 'FC'): 449d310bb7SBarry Smith self.executeTest(self.configureFortranCommandLine) 459d310bb7SBarry Smith return 46