Update the contents of openspeedshop package.py so it passes the flake8 tests.

This commit is contained in:
Jim Galarowicz 2016-10-11 09:01:20 -07:00
parent a82ccf3c40
commit 2c0614a88f

View File

@ -79,27 +79,35 @@ class Openspeedshop(Package):
variant('runtime', default=False, variant('runtime', default=False,
description="build only the runtime libraries and collectors.") description="build only the runtime libraries and collectors.")
variant('frontend', default=False, variant('frontend', default=False,
description="build only the FE tool using the runtime_dir to point to target build.") description="build only the FE tool using the runtime_dir \
to point to target build.")
variant('cuda', default=False, variant('cuda', default=False,
description="build with cuda packages included.") description="build with cuda packages included.")
variant('ptgf', default=False, variant('ptgf', default=False,
description="build with the PTGF based gui package enabled.") description="build with the PTGF based gui package enabled.")
variant('rtfe', default=False, variant('rtfe', default=False,
description="build for clusters heterogeneous processors on fe/be nodes.") description="build for clusters heterogeneous processors \
on fe/be nodes.")
# MPI variants # MPI variants
variant('openmpi', default=False, variant('openmpi', default=False,
description="Build mpi collector for openmpi MPI when variant is enabled.") description="Build mpi collector for openmpi \
MPI when variant is enabled.")
variant('mpt', default=False, variant('mpt', default=False,
description="Build mpi collector for SGI MPT MPI when variant is enabled.") description="Build mpi collector for SGI \
MPT MPI when variant is enabled.")
variant('mvapich2', default=False, variant('mvapich2', default=False,
description="Build mpi collector for mvapich2 MPI when variant is enabled.") description="Build mpi collector for mvapich2\
MPI when variant is enabled.")
variant('mvapich', default=False, variant('mvapich', default=False,
description="Build mpi collector for mvapich MPI when variant is enabled.") description="Build mpi collector for mvapich\
MPI when variant is enabled.")
variant('mpich2', default=False, variant('mpich2', default=False,
description="Build mpi collector for mpich2 MPI when variant is enabled.") description="Build mpi collector for mpich2\
MPI when variant is enabled.")
variant('mpich', default=False, variant('mpich', default=False,
description="Build mpi collector for mpich MPI when variant is enabled.") description="Build mpi collector for mpich\
MPI when variant is enabled.")
depends_on("cmake@3.0.2:", type='build') depends_on("cmake@3.0.2:", type='build')
# Dependencies for openspeedshop that are common to all # Dependencies for openspeedshop that are common to all
@ -155,11 +163,9 @@ def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
cmakeOptions.remove(word) cmakeOptions.remove(word)
if word.startswith('-DCMAKE_C_FLAGS'): if word.startswith('-DCMAKE_C_FLAGS'):
cmakeOptions.remove(word) cmakeOptions.remove(word)
BuildTypeOptions.extend([ BuildTypeOptions.extend(['-DCMAKE_BUILD_TYPE=None',
'-DCMAKE_BUILD_TYPE=None',
'-DCMAKE_CXX_FLAGS=%s' % compile_flags, '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
'-DCMAKE_C_FLAGS=%s' % compile_flags '-DCMAKE_C_FLAGS=%s' % compile_flags])
])
cmakeOptions.extend(BuildTypeOptions) cmakeOptions.extend(BuildTypeOptions)
@ -171,34 +177,22 @@ def set_mpi_cmakeOptions(self, spec, cmakeOptions):
# openmpi # openmpi
if '+openmpi' in spec: if '+openmpi' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DOPENMPI_DIR=%s' % spec['openmpi'].prefix])
'-DOPENMPI_DIR=%s' % spec['openmpi'].prefix
])
# mpich # mpich
if '+mpich' in spec: if '+mpich' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DMPICH_DIR=%s' % spec['mpich'].prefix])
'-DMPICH_DIR=%s' % spec['mpich'].prefix
])
# mpich2 # mpich2
if '+mpich2' in spec: if '+mpich2' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DMPICH2_DIR=%s' % spec['mpich2'].prefix])
'-DMPICH2_DIR=%s' % spec['mpich2'].prefix
])
# mvapich # mvapich
if '+mvapich' in spec: if '+mvapich' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DMVAPICH_DIR=%s' % spec['mvapich'].prefix])
'-DMVAPICH_DIR=%s' % spec['mvapich'].prefix
])
# mvapich2 # mvapich2
if '+mvapich2' in spec: if '+mvapich2' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix])
'-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix
])
# mpt # mpt
if '+mpt' in spec: if '+mpt' in spec:
MPIOptions.extend([ MPIOptions.extend(['-DMPT_DIR=%s' % spec['mpt'].prefix])
'-DMPT_DIR=%s' % spec['mpt'].prefix
])
cmakeOptions.extend(MPIOptions) cmakeOptions.extend(MPIOptions)
@ -264,21 +258,22 @@ def setup_environment(self, spack_env, run_env):
# Settings specific to the version, checking here # Settings specific to the version, checking here
# for the cbtf instrumentor # for the cbtf instrumentor
if '+cbtf' in self.spec: if '+cbtf' in self.spec:
cbtf_mc = '/sbin/cbtf_mrnet_commnode'
cbtf_lmb = '/sbin/cbtf_libcbtf_mrnet_backend'
run_env.set('XPLAT_RSH', 'ssh') run_env.set('XPLAT_RSH', 'ssh')
run_env.set('MRNET_COMM_PATH', run_env.set('MRNET_COMM_PATH',
join_path(self.spec['cbtf-krell'].prefix \ join_path(self.spec['cbtf-krell'].prefix + cbtf_mc))
+ '/sbin/cbtf_mrnet_commnode'))
run_env.set('CBTF_MRNET_BACKEND_PATH', run_env.set('CBTF_MRNET_BACKEND_PATH',
join_path(self.spec['cbtf-krell'].prefix \ join_path(self.spec['cbtf-krell'].prefix + cbtf_lmb))
+ '/sbin/cbtf_libcbtf_mrnet_backend'))
run_env.prepend_path('PATH', self.spec['mrnet'].prefix.bin) run_env.prepend_path('PATH', self.spec['mrnet'].prefix.bin)
run_env.prepend_path('PATH', self.spec['cbtf-krell'].prefix.bin) run_env.prepend_path('PATH', self.spec['cbtf-krell'].prefix.bin)
run_env.prepend_path('PATH', self.spec['cbtf-krell'].prefix.sbin) run_env.prepend_path('PATH', self.spec['cbtf-krell'].prefix.sbin)
# Find cbtf-krell component library path # Find cbtf-krell component library path
cbtfkrell_libdir = find_libraries(['libcbtf-core'], cbtfkrell_libdir = \
find_libraries(['libcbtf-core'],
root=self.spec['cbtf-krell'].prefix, root=self.spec['cbtf-krell'].prefix,
shared=True, recurse=True) shared=True, recurse=True)
run_env.prepend_path('LD_LIBRARY_PATH', run_env.prepend_path('LD_LIBRARY_PATH',
@ -333,14 +328,16 @@ def setup_environment(self, spack_env, run_env):
os.path.dirname(binutils_libdir.joined())) os.path.dirname(binutils_libdir.joined()))
# Find libmonitor library path # Find libmonitor library path
libmonitor_libdir = find_libraries(['libmonitor'], libmonitor_libdir = \
find_libraries(['libmonitor'],
root=self.spec['monitor'].prefix, root=self.spec['monitor'].prefix,
shared=True, recurse=True) shared=True, recurse=True)
run_env.prepend_path('LD_LIBRARY_PATH', run_env.prepend_path('LD_LIBRARY_PATH',
os.path.dirname(libmonitor_libdir.joined())) os.path.dirname(libmonitor_libdir.joined()))
# Find libunwind library path # Find libunwind library path
libunwind_libdir = find_libraries(['libunwind'], libunwind_libdir = \
find_libraries(['libunwind'],
root=self.spec['libunwind'].prefix, root=self.spec['libunwind'].prefix,
shared=True, recurse=True) shared=True, recurse=True)
run_env.prepend_path('LD_LIBRARY_PATH', run_env.prepend_path('LD_LIBRARY_PATH',
@ -363,19 +360,19 @@ def install(self, spec, prefix):
with working_dir('build_runtime', create=True): with working_dir('build_runtime', create=True):
cmakeOptions = [] cmakeOptions = []
cmakeOptions.extend( cmakeOptions.extend([
['-DCMAKE_INSTALL_PREFIX=%s' % prefix, '-DCMAKE_INSTALL_PREFIX=%s' % prefix,
'-DINSTRUMENTOR=%s' % instrumentor_setting, '-DINSTRUMENTOR=%s' % instrumentor_setting,
'-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix, '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
'-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix, '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
'-DPAPI_DIR=%s' % spec['papi'].prefix '-DPAPI_DIR=%s' % spec['papi'].prefix])
])
# Add any MPI implementations coming from variant settings # Add any MPI implementations coming from variant settings
self.set_mpi_cmakeOptions(spec, cmakeOptions) self.set_mpi_cmakeOptions(spec, cmakeOptions)
cmakeOptions.extend(std_cmake_args) cmakeOptions.extend(std_cmake_args)
# Adjust the build options to the favored ones for this build # Adjust the build options to the favored
# ones for this build
self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
cmake('..', *cmakeOptions) cmake('..', *cmakeOptions)
@ -386,41 +383,58 @@ def install(self, spec, prefix):
else: else:
cmake_prefix_path = join_path(spec['dyninst'].prefix) cmake_prefix_path = join_path(spec['dyninst'].prefix)
with working_dir('build', create=True): with working_dir('build', create=True):
python_vers = format(spec['python'].version.up_to(2)) python_vers = format(spec['python'].version.up_to(2))
python_pv = '/python' + python_vers
python_pvs = '/libpython' + python_vers + '.so'
cmakeOptions = [] cmakeOptions = []
cmakeOptions.extend( cmakeOptions.extend(
['-DCMAKE_INSTALL_PREFIX=%s' % prefix, ['-DCMAKE_INSTALL_PREFIX=%s'
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, % prefix,
'-DINSTRUMENTOR=%s' % instrumentor_setting, '-DCMAKE_PREFIX_PATH=%s'
'-DBINUTILS_DIR=%s' % spec['binutils'].prefix, % cmake_prefix_path,
'-DLIBELF_DIR=%s' % spec['libelf'].prefix, '-DINSTRUMENTOR=%s'
'-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, % instrumentor_setting,
'-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix, '-DBINUTILS_DIR=%s'
'-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix, % spec['binutils'].prefix,
'-DPAPI_DIR=%s' % spec['papi'].prefix, '-DLIBELF_DIR=%s'
'-DSQLITE3_DIR=%s' % spec['sqlite'].prefix, % spec['libelf'].prefix,
'-DQTLIB_DIR=%s' % spec['qt'].prefix, '-DLIBDWARF_DIR=%s'
'-DPYTHON_EXECUTABLE=%s' % join_path(spec['python'].prefix \ % spec['libdwarf'].prefix,
+ '/bin/python'), '-DLIBMONITOR_DIR=%s'
'-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ % spec['libmonitor'].prefix,
+ '/python' + python_vers, '-DLIBUNWIND_DIR=%s'
'-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ % spec['libunwind'].prefix,
+ '/libpython' + python_vers + '.so', '-DPAPI_DIR=%s'
% spec['papi'].prefix,
'-DSQLITE3_DIR=%s'
% spec['sqlite'].prefix,
'-DQTLIB_DIR=%s'
% spec['qt'].prefix,
'-DPYTHON_EXECUTABLE=%s'
% join_path(spec['python'].prefix + '/bin/python'),
'-DPYTHON_INCLUDE_DIR=%s'
% join_path(
spec['python'].prefix.include) + python_pv,
'-DPYTHON_LIBRARY=%s'
% join_path(
spec['python'].prefix.lib) + python_pvs,
'-DBoost_NO_SYSTEM_PATHS=TRUE', '-DBoost_NO_SYSTEM_PATHS=TRUE',
'-DBoost_NO_BOOST_CMAKE=TRUE', '-DBoost_NO_BOOST_CMAKE=TRUE',
'-DBOOST_ROOT=%s' % spec['boost'].prefix, '-DBOOST_ROOT=%s'
'-DBoost_DIR=%s' % spec['boost'].prefix, % spec['boost'].prefix,
'-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib, '-DBoost_DIR=%s'
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix % spec['boost'].prefix,
]) '-DBOOST_LIBRARYDIR=%s'
% spec['boost'].prefix.lib,
'-DDYNINST_DIR=%s'
% spec['dyninst'].prefix])
# Add any MPI implementations coming from variant settings # Add any MPI implementations coming from variant settings
self.set_mpi_cmakeOptions(spec, cmakeOptions) self.set_mpi_cmakeOptions(spec, cmakeOptions)
cmakeOptions.extend(std_cmake_args) cmakeOptions.extend(std_cmake_args)
# Adjust the build options to the favored ones for this build # Adjust the build options to the favored
# ones for this build
self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
cmake('..', *cmakeOptions) cmake('..', *cmakeOptions)
@ -431,7 +445,7 @@ def install(self, spec, prefix):
elif '+cbtf' in spec: elif '+cbtf' in spec:
instrumentor_setting = "cbtf" instrumentor_setting = "cbtf"
resolve_symbols = "symtabapi" # resolve_symbols = "symtabapi"
cmake_prefix_path = join_path(spec['cbtf'].prefix) \ cmake_prefix_path = join_path(spec['cbtf'].prefix) \
+ ':' + join_path(spec['cbtf-krell'].prefix)\ + ':' + join_path(spec['cbtf-krell'].prefix)\
+ ':' + join_path(spec['dyninst'].prefix) + ':' + join_path(spec['dyninst'].prefix)
@ -439,32 +453,53 @@ def install(self, spec, prefix):
if '+runtime' in spec: if '+runtime' in spec:
with working_dir('build_cbtf_runtime', create=True): with working_dir('build_cbtf_runtime', create=True):
python_vers = '%d.%d' % spec['python'].version[:2] python_vers = '%d.%d' % spec['python'].version[:2]
python_pv = '/python' + python_vers
python_pvs = '/libpython' + python_vers + '.so'
cmakeOptions = [] cmakeOptions = []
cmakeOptions.extend(['-DCMAKE_INSTALL_PREFIX=%s' % prefix, cmakeOptions.extend(
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, ['-DCMAKE_INSTALL_PREFIX=%s'
'-DINSTRUMENTOR=%s' % instrumentor_setting, % prefix,
'-DBINUTILS_DIR=%s' % spec['binutils'].prefix, '-DCMAKE_PREFIX_PATH=%s'
'-DLIBELF_DIR=%s' % spec['libelf'].prefix, % cmake_prefix_path,
'-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, '-DINSTRUMENTOR=%s'
'-DCBTF_DIR=%s' % spec['cbtf'].prefix, % instrumentor_setting,
'-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix, '-DBINUTILS_DIR=%s'
'-DPYTHON_EXECUTABLE=%s' % join_path(spec['python'].prefix + '/bin/python'), % spec['binutils'].prefix,
'-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ '-DLIBELF_DIR=%s'
+ '/python' + python_vers, % spec['libelf'].prefix,
'-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ '-DLIBDWARF_DIR=%s'
+ '/libpython' + python_vers + '.so', % spec['libdwarf'].prefix,
'-DCBTF_DIR=%s'
% spec['cbtf'].prefix,
'-DCBTF_KRELL_DIR=%s'
% spec['cbtf-krell'].prefix,
'-DPYTHON_EXECUTABLE=%s'
% join_path(spec['python'].prefix + '/bin/python'),
'-DPYTHON_INCLUDE_DIR=%s'
% join_path(
spec['python'].prefix.include) + python_pv,
'-DPYTHON_LIBRARY=%s'
% join_path(
spec['python'].prefix.lib) + python_pvs,
'-DBoost_NO_SYSTEM_PATHS=TRUE', '-DBoost_NO_SYSTEM_PATHS=TRUE',
'-DBoost_NO_BOOST_CMAKE=TRUE', '-DBoost_NO_BOOST_CMAKE=TRUE',
'-DBOOST_ROOT=%s' % spec['boost'].prefix, '-DBOOST_ROOT=%s'
'-DBoost_DIR=%s' % spec['boost'].prefix, % spec['boost'].prefix,
'-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib, '-DBoost_DIR=%s'
'-DBoost_INCLUDE_DIRS:PATH=%s' % spec['boost'].prefix.include, % spec['boost'].prefix,
'-DBoost_LIBRARY_DIRS:PATH=%s' % spec['boost'].prefix.lib, '-DBOOST_LIBRARYDIR=%s'
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix, % spec['boost'].prefix.lib,
'-DMRNET_DIR=%s' % spec['mrnet'].prefix '-DBoost_INCLUDE_DIRS:PATH=%s'
]) % spec['boost'].prefix.include,
'-DBoost_LIBRARY_DIRS:PATH=%s'
% spec['boost'].prefix.lib,
'-DDYNINST_DIR=%s'
% spec['dyninst'].prefix,
'-DMRNET_DIR=%s'
% spec['mrnet'].prefix])
# Adjust the build options to the favored ones for this build # Adjust the build options to the
# favored ones for this build
self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
cmake('..', *cmakeOptions) cmake('..', *cmakeOptions)
@ -476,35 +511,58 @@ def install(self, spec, prefix):
else: else:
with working_dir('build_cbtf', create=True): with working_dir('build_cbtf', create=True):
python_vers = format(spec['python'].version.up_to(2)) python_vers = format(spec['python'].version.up_to(2))
python_pv = '/python' + python_vers
python_pvs = '/libpython' + python_vers + '.so'
cmakeOptions = [] cmakeOptions = []
cmakeOptions.extend(['-DCMAKE_INSTALL_PREFIX=%s' % prefix, cmakeOptions.extend(
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, ['-DCMAKE_INSTALL_PREFIX=%s'
'-DINSTRUMENTOR=%s' % instrumentor_setting, % prefix,
'-DBINUTILS_DIR=%s' % spec['binutils'].prefix, '-DCMAKE_PREFIX_PATH=%s'
'-DLIBELF_DIR=%s' % spec['libelf'].prefix, % cmake_prefix_path,
'-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, '-DINSTRUMENTOR=%s'
'-DSQLITE3_DIR=%s' % spec['sqlite'].prefix, % instrumentor_setting,
'-DCBTF_DIR=%s' % spec['cbtf'].prefix, '-DBINUTILS_DIR=%s'
'-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix, % spec['binutils'].prefix,
'-DQTLIB_DIR=%s' % spec['qt'].prefix, '-DLIBELF_DIR=%s'
'-DPYTHON_EXECUTABLE=%s' % join_path(spec['python'].prefix + '/bin/python'), % spec['libelf'].prefix,
'-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ '-DLIBDWARF_DIR=%s'
+ '/python' + python_vers, % spec['libdwarf'].prefix,
'-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ '-DSQLITE3_DIR=%s'
+ '/libpython' + python_vers + '.so', % spec['sqlite'].prefix,
'-DCBTF_DIR=%s'
% spec['cbtf'].prefix,
'-DCBTF_KRELL_DIR=%s'
% spec['cbtf-krell'].prefix,
'-DQTLIB_DIR=%s'
% spec['qt'].prefix,
'-DPYTHON_EXECUTABLE=%s'
% join_path(
spec['python'].prefix + '/bin/python'),
'-DPYTHON_INCLUDE_DIR=%s'
% join_path(
spec['python'].prefix.include) + python_pv,
'-DPYTHON_LIBRARY=%s'
% join_path(
spec['python'].prefix.lib) + python_pvs,
'-DBoost_NO_SYSTEM_PATHS=TRUE', '-DBoost_NO_SYSTEM_PATHS=TRUE',
'-DBoost_NO_BOOST_CMAKE=TRUE', '-DBoost_NO_BOOST_CMAKE=TRUE',
'-DBOOST_ROOT=%s' % spec['boost'].prefix, '-DBOOST_ROOT=%s'
'-DBoost_DIR=%s' % spec['boost'].prefix, % spec['boost'].prefix,
'-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib, '-DBoost_DIR=%s'
'-DBoost_INCLUDE_DIRS:PATH=%s' % spec['boost'].prefix.include, % spec['boost'].prefix,
'-DBoost_LIBRARY_DIRS:PATH=%s' % spec['boost'].prefix.lib, '-DBOOST_LIBRARYDIR=%s'
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix, % spec['boost'].prefix.lib,
'-DMRNET_DIR=%s' % spec['mrnet'].prefix '-DBoost_INCLUDE_DIRS:PATH=%s'
]) % spec['boost'].prefix.include,
'-DBoost_LIBRARY_DIRS:PATH=%s'
% spec['boost'].prefix.lib,
'-DDYNINST_DIR=%s'
% spec['dyninst'].prefix,
'-DMRNET_DIR=%s'
% spec['mrnet'].prefix])
# Adjust the build options to the favored
# Adjust the build options to the favored ones for this build # ones for this build
self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
cmake('..', *cmakeOptions) cmake('..', *cmakeOptions)
@ -512,4 +570,3 @@ def install(self, spec, prefix):
make("clean") make("clean")
make() make()
make("install") make("install")