summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/tau/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/tau/package.py')
-rw-r--r--var/spack/repos/builtin/packages/tau/package.py36
1 files changed, 24 insertions, 12 deletions
diff --git a/var/spack/repos/builtin/packages/tau/package.py b/var/spack/repos/builtin/packages/tau/package.py
index 3b181f3fa4..a77df8d37c 100644
--- a/var/spack/repos/builtin/packages/tau/package.py
+++ b/var/spack/repos/builtin/packages/tau/package.py
@@ -30,6 +30,7 @@ import os.path
from llnl.util.filesystem import join_path
+
class Tau(Package):
"""
A portable profiling and tracing toolkit for performance
@@ -45,15 +46,20 @@ class Tau(Package):
version('2.23.1', '6593b47ae1e7a838e632652f0426fe72')
# TODO : shmem variant missing
- variant('download', default=False, description='Downloads and builds various dependencies')
+ variant('download', default=False,
+ description='Downloads and builds various dependencies')
variant('scorep', default=False, description='Activates SCOREP support')
variant('openmp', default=True, description='Use OpenMP threads')
- variant('mpi', default=True, description='Specify use of TAU MPI wrapper library')
+ variant('mpi', default=True,
+ description='Specify use of TAU MPI wrapper library')
variant('phase', default=True, description='Generate phase based profiles')
- variant('comm', default=True, description=' Generate profiles with MPI communicator info')
+ variant('comm', default=True,
+ description=' Generate profiles with MPI communicator info')
- # TODO : Try to build direct OTF2 support? Some parts of the OTF support library in TAU are non-conformant,
- # TODO : and fail at compile-time. Further, SCOREP is compiled with OTF2 support.
+ # TODO : Try to build direct OTF2 support? Some parts of the OTF support
+ # TODO : library in TAU are non-conformant,
+ # TODO : and fail at compile-time. Further, SCOREP is compiled with OTF2
+ # support.
depends_on('pdt') # Required for TAU instrumentation
depends_on('scorep', when='+scorep')
depends_on('binutils', when='~download')
@@ -65,13 +71,17 @@ class Tau(Package):
##########
# Selecting a compiler with TAU configure is quite tricky:
- # 1 - compilers are mapped to a given set of strings (and spack cc, cxx, etc. wrappers are not among them)
+ # 1 - compilers are mapped to a given set of strings
+ # (and spack cc, cxx, etc. wrappers are not among them)
# 2 - absolute paths are not allowed
- # 3 - the usual environment variables seems not to be checked ('CC', 'CXX' and 'FC')
- # 4 - if no -cc=<compiler> -cxx=<compiler> is passed tau is built with system compiler silently
+ # 3 - the usual environment variables seems not to be checked
+ # ('CC', 'CXX' and 'FC')
+ # 4 - if no -cc=<compiler> -cxx=<compiler> is passed tau is built with
+ # system compiler silently
# (regardless of what %<compiler> is used in the spec)
#
- # In the following we give TAU what he expects and put compilers into PATH
+ # In the following we give TAU what he expects and put compilers into
+ # PATH
compiler_path = os.path.dirname(self.compiler.cc)
os.environ['PATH'] = ':'.join([compiler_path, os.environ['PATH']])
compiler_options = ['-c++=%s' % self.compiler.cxx_names[0],
@@ -80,7 +90,8 @@ class Tau(Package):
compiler_options.append('-fortran=%s' % self.compiler.fc_names[0])
##########
- # Construct the string of custom compiler flags and append it to compiler related options
+ # Construct the string of custom compiler flags and append it to
+ # compiler related options
useropt = ' '.join(useropt)
useropt = "-useropt=%s" % useropt
compiler_options.append(useropt)
@@ -92,8 +103,9 @@ class Tau(Package):
change_sed_delimiter('@', ';', 'utils/FixMakefile')
change_sed_delimiter('@', ';', 'utils/FixMakefile.sed.default')
- # TAU configure, despite the name , seems to be a manually written script (nothing related to autotools).
- # As such it has a few #peculiarities# that make this build quite hackish.
+ # TAU configure, despite the name , seems to be a manually
+ # written script (nothing related to autotools). As such it has
+ # a few #peculiarities# that make this build quite hackish.
options = ["-prefix=%s" % prefix,
"-iowrapper",
"-pdt=%s" % spec['pdt'].prefix]