Valgrind: add ubsan and only64bit variants. (#9302)
* Add conflict for +ubsan when building with clang on MacOS * only64bit is enabled by default
This commit is contained in:
parent
2b3e7dbd93
commit
9b5f3d77f3
@ -51,7 +51,17 @@ class Valgrind(AutotoolsPackage):
|
||||
description='Activates MPI support for valgrind')
|
||||
variant('boost', default=True,
|
||||
description='Activates boost support for valgrind')
|
||||
variant('only64bit', default=True,
|
||||
description='Sets --enable-only64bit option for valgrind')
|
||||
variant('ubsan', default=True,
|
||||
description='Activates ubsan support for valgrind')
|
||||
|
||||
conflicts('+ubsan', when='platform=darwin %clang',
|
||||
msg="""
|
||||
Cannot build libubsan with clang on macOS.
|
||||
Otherwise with (Apple's) clang there is a linker error:
|
||||
clang: error: unknown argument: '-static-libubsan'
|
||||
""")
|
||||
depends_on('mpi', when='+mpi')
|
||||
depends_on('boost', when='+boost')
|
||||
|
||||
@ -66,14 +76,11 @@ class Valgrind(AutotoolsPackage):
|
||||
def configure_args(self):
|
||||
spec = self.spec
|
||||
options = []
|
||||
if not (spec.satisfies('%clang') and sys.platform == 'darwin'):
|
||||
# Otherwise with (Apple's) clang there is a linker error:
|
||||
# clang: error: unknown argument: '-static-libubsan'
|
||||
if spec.satisfies('+ubsan'):
|
||||
options.append('--enable-ubsan')
|
||||
if spec.satisfies('+only64bit'):
|
||||
options.append('--enable-only64bit')
|
||||
|
||||
if sys.platform == 'darwin':
|
||||
options.extend([
|
||||
'--build=amd64-darwin',
|
||||
'--enable-only64bit'
|
||||
])
|
||||
options.append('--build=amd64-darwin')
|
||||
return options
|
||||
|
Loading…
Reference in New Issue
Block a user