Update openspeedshop and cbtf-krell module creation code (#9234)
* Add the setting of CBTF_MPI_IMPLEMENTATION to the cbtf-krell and openspeeedshop package files, so that the mpi implementation can be found by the tool. This allows users to not have to set this manually if only one mpi implementation is specified in the build. * Update version ranges for dependencies of cbtf packages
This commit is contained in:

committed by
Peter Scheibel

parent
72fa122101
commit
c10d432a2e
@@ -18,6 +18,7 @@ class CbtfKrell(CMakePackage):
|
||||
git = "https://github.com/OpenSpeedShop/cbtf-krell.git"
|
||||
|
||||
version('develop', branch='master')
|
||||
version('1.9.2', branch='1.9.2')
|
||||
version('1.9.1.2', branch='1.9.1.2')
|
||||
version('1.9.1.1', branch='1.9.1.1')
|
||||
version('1.9.1.0', branch='1.9.1.0')
|
||||
@@ -49,12 +50,10 @@ class CbtfKrell(CMakePackage):
|
||||
depends_on("cmake@3.0.2:", type='build')
|
||||
|
||||
# For binutils
|
||||
depends_on("binutils", when='@develop')
|
||||
depends_on("binutils@2.29.1", when='@1.9.1.0:9999')
|
||||
depends_on("binutils")
|
||||
|
||||
# For boost
|
||||
depends_on("boost@1.50.0:", when='@develop')
|
||||
depends_on("boost@1.66.0", when='@1.9.1.0:9999')
|
||||
depends_on("boost@1.66.0:")
|
||||
|
||||
# For Dyninst
|
||||
depends_on("dyninst@develop", when='@develop')
|
||||
@@ -62,36 +61,34 @@ class CbtfKrell(CMakePackage):
|
||||
depends_on("dyninst@develop", when='@1.9.1.0:9999')
|
||||
|
||||
# For MRNet
|
||||
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti')
|
||||
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop')
|
||||
depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti', type=('build', 'link', 'run'))
|
||||
depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop', type=('build', 'link', 'run'))
|
||||
|
||||
depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti')
|
||||
depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999')
|
||||
depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
|
||||
depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
|
||||
|
||||
# For Xerces-C
|
||||
depends_on("xerces-c@3.1.1:", when='@develop')
|
||||
depends_on("xerces-c@3.1.4", when='@1.9.1.0:9999')
|
||||
depends_on("xerces-c")
|
||||
|
||||
# For CBTF
|
||||
depends_on("cbtf@develop", when='@develop')
|
||||
depends_on("cbtf@1.9.1.0:9999", when='@1.9.1.0:9999')
|
||||
depends_on("cbtf@develop", when='@develop', type=('build', 'link', 'run'))
|
||||
depends_on("cbtf@1.9.1.0:9999", when='@1.9.1.0:9999', type=('build', 'link', 'run'))
|
||||
|
||||
# For CBTF with cti
|
||||
depends_on("cbtf@develop+cti", when='@develop+cti')
|
||||
depends_on("cbtf@1.9.1.0:9999+cti", when='@1.9.1.0:9999+cti')
|
||||
depends_on("cbtf@develop+cti", when='@develop+cti', type=('build', 'link', 'run'))
|
||||
depends_on("cbtf@1.9.1.0:9999+cti", when='@1.9.1.0:9999+cti', type=('build', 'link', 'run'))
|
||||
|
||||
# For CBTF with runtime
|
||||
depends_on("cbtf@develop+runtime", when='@develop+runtime')
|
||||
depends_on("cbtf@1.9.1.0:9999+runtime", when='@1.9.1.0:9999+runtime')
|
||||
depends_on("cbtf@develop+runtime", when='@develop+runtime', type=('build', 'link', 'run'))
|
||||
depends_on("cbtf@1.9.1.0:9999+runtime", when='@1.9.1.0:9999+runtime', type=('build', 'link', 'run'))
|
||||
|
||||
# for services and collectors
|
||||
depends_on("libmonitor@2013.02.18+krellpatch")
|
||||
|
||||
depends_on("libunwind", when='@develop')
|
||||
depends_on("libunwind@1.1", when='@1.9.1.0:9999')
|
||||
depends_on("libunwind@1.2.1", when='@1.9.1.0:9999')
|
||||
|
||||
depends_on("papi", when='@develop')
|
||||
depends_on("papi@5.5.1", when='@1.9.1.0:9999')
|
||||
depends_on("papi@5.4.1:")
|
||||
|
||||
depends_on("llvm-openmp-ompt@tr6_forwards+standalone")
|
||||
|
||||
@@ -103,6 +100,9 @@ class CbtfKrell(CMakePackage):
|
||||
depends_on("mvapich", when='+mvapich')
|
||||
depends_on("mpt", when='+mpt')
|
||||
|
||||
depends_on("python", when='@develop', type=('build', 'run'))
|
||||
depends_on("python@2.7.14:2.7.15", when='@2.3.1.3:9999', type=('build', 'run'))
|
||||
|
||||
depends_on("gotcha")
|
||||
|
||||
parallel = False
|
||||
@@ -226,3 +226,37 @@ def cmake_args(self):
|
||||
self.set_cray_login_node_cmake_options(spec, cmake_args)
|
||||
|
||||
return cmake_args
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
"""Set up the compile and runtime environments for a package."""
|
||||
|
||||
# Environment settings for cbtf-krell, bin is automatically
|
||||
# added to the path in the module file
|
||||
run_env.prepend_path('PATH', self.prefix.sbin)
|
||||
|
||||
run_env.set('XPLAT_RSH', 'ssh')
|
||||
run_env.set('MRNET_COMM_PATH', self.prefix.sbin.cbtf_mrnet_commnode)
|
||||
|
||||
# Set CBTF_MPI_IMPLEMENTATON to the appropriate mpi implementation
|
||||
# This is needed by CBTF tools to deploy the correct
|
||||
# mpi runtimes for cbtfsummary
|
||||
# Users may have to set the CBTF_MPI_IMPLEMENTATION variable
|
||||
# manually if multiple mpi's are specified in the build
|
||||
|
||||
if self.spec.satisfies('+mpich'):
|
||||
run_env.set('CBTF_MPI_IMPLEMENTATION', "mpich")
|
||||
|
||||
if self.spec.satisfies('+mvapich'):
|
||||
run_env.set('CBTF_MPI_IMPLEMENTATION', "mvapich")
|
||||
|
||||
if self.spec.satisfies('+mvapich2'):
|
||||
run_env.set('CBTF_MPI_IMPLEMENTATION', "mvapich2")
|
||||
|
||||
if self.spec.satisfies('+mpt'):
|
||||
run_env.set('CBTF_MPI_IMPLEMENTATION', "mpt")
|
||||
|
||||
if self.spec.satisfies('+openmpi'):
|
||||
run_env.set('CBTF_MPI_IMPLEMENTATION', "openmpi")
|
||||
|
||||
run_env.set('CBTF_MRNET_BACKEND_PATH',
|
||||
self.prefix.sbin.cbtf_libcbtf_mrnet_backend)
|
||||
|
Reference in New Issue
Block a user