valgrind: add develop; fix build on macOS with clang (#3066)
- add develop version to valgrind; fix build on macOS with clang - switch valgrind to AutotoolsPackage
This commit is contained in:
parent
b1eb921f28
commit
b07835904a
1 changed files with 23 additions and 9 deletions
|
@ -22,11 +22,11 @@
|
|||
# License along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
|
||||
from spack import *
|
||||
import sys
|
||||
|
||||
|
||||
class Valgrind(Package):
|
||||
class Valgrind(AutotoolsPackage):
|
||||
"""An instrumentation framework for building dynamic analysis.
|
||||
|
||||
There are Valgrind tools that can automatically detect many memory
|
||||
|
@ -44,17 +44,31 @@ class Valgrind(Package):
|
|||
version('3.11.0', '4ea62074da73ae82e0162d6550d3f129')
|
||||
version('3.10.1', '60ddae962bc79e7c95cfc4667245707f')
|
||||
version('3.10.0', '7c311a72a20388aceced1aa5573ce970')
|
||||
version('develop', svn='svn://svn.valgrind.org/valgrind/trunk')
|
||||
|
||||
variant('mpi', default=True, description='Activates MPI support for valgrind')
|
||||
variant('mpi', default=True,
|
||||
description='Activates MPI support for valgrind')
|
||||
variant('boost', default=True,
|
||||
description='Activates boost support for valgrind')
|
||||
|
||||
depends_on('mpi', when='+mpi')
|
||||
depends_on('boost', when='+boost')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = ['--prefix=%s' % prefix,
|
||||
'--enable-ubsan']
|
||||
configure(*options)
|
||||
make()
|
||||
make("install")
|
||||
depends_on("autoconf", type='build', when='@develop')
|
||||
depends_on("automake", type='build', when='@develop')
|
||||
depends_on("libtool", type='build', when='@develop')
|
||||
|
||||
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'
|
||||
options.append('--enable-ubsan')
|
||||
|
||||
if sys.platform == 'darwin':
|
||||
options.extend([
|
||||
'--build=amd64-darwin',
|
||||
'--enable-only64bit'
|
||||
])
|
||||
return options
|
||||
|
|
Loading…
Reference in a new issue