lapackpp: set BLA_VENDOR for cray (#28125)

This commit is contained in:
luker 2022-01-06 12:44:28 -06:00 committed by GitHub
parent 83a98c3807
commit 27cbf46dd6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -45,12 +45,18 @@ class Lapackpp(CMakePackage):
def cmake_args(self): def cmake_args(self):
spec = self.spec spec = self.spec
return [
args = [
'-DBUILD_SHARED_LIBS=%s' % ('+shared' in spec), '-DBUILD_SHARED_LIBS=%s' % ('+shared' in spec),
'-Dbuild_tests=%s' % self.run_tests, '-Dbuild_tests=%s' % self.run_tests,
'-DLAPACK_LIBRARIES=%s' % spec['lapack'].libs.joined(';') '-DLAPACK_LIBRARIES=%s' % spec['lapack'].libs.joined(';')
] ]
if spec['blas'].name == 'cray-libsci':
args.append(self.define('BLA_VENDOR', 'CRAY'))
return args
def check(self): def check(self):
# If the tester fails to build, ensure that the check() fails. # If the tester fails to build, ensure that the check() fails.
if os.path.isfile(join_path(self.build_directory, 'test', 'tester')): if os.path.isfile(join_path(self.build_directory, 'test', 'tester')):
@ -58,3 +64,8 @@ def check(self):
make('check') make('check')
else: else:
raise Exception('The tester was not built!') raise Exception('The tester was not built!')
def flag_handler(self, name, flags):
if (self.spec['blas'].name == 'cray-libsci') and name == 'cxxflags':
flags.append('-DLAPACK_FORTRAN_ADD_')
return (None, None, flags)