summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorJim Galarowicz <jeg@krellinst.org>2018-05-17 14:04:33 -0500
committerscheibelp <scheibel1@llnl.gov>2018-05-17 12:04:33 -0700
commitdfd168d557f1acc981c9939526b3ab3f160bee5a (patch)
treeb60ae668a4d4262c1ab3083022e3901e22bfdb88 /var
parentde7d13b0e8dea4affd1ff40ff4d9ae62b27f3af0 (diff)
downloadspack-dfd168d557f1acc981c9939526b3ab3f160bee5a.tar.gz
spack-dfd168d557f1acc981c9939526b3ab3f160bee5a.tar.bz2
spack-dfd168d557f1acc981c9939526b3ab3f160bee5a.tar.xz
spack-dfd168d557f1acc981c9939526b3ab3f160bee5a.zip
cbtf-argonavis-gui: add openspeedshop-utils package to address qt conflicts (#8066)
Fixes #7946 Creates an openspeedshop-utils package that does not depend on qt3 and can be used to resolve the needs of cbtf-argonavis-gui. Changes for creating a release versus develop build are also included. There are package versions which are no longer relevant (e.g. 1.3.0 for cbtf-argonavis-gui has been replaced with 1.3.0.0) but these versions need to be kept to allow uninstalling them; issue #8173 has been created to investigate this.
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py59
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis/package.py70
-rw-r--r--var/spack/repos/builtin/packages/cbtf-krell/package.py60
-rw-r--r--var/spack/repos/builtin/packages/cbtf-lanl/package.py51
-rw-r--r--var/spack/repos/builtin/packages/cbtf/package.py35
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop-utils/package.py344
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop/package.py267
-rw-r--r--var/spack/repos/builtin/packages/qtgraph/package.py14
8 files changed, 689 insertions, 211 deletions
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
index c4154592fa..8ba4e23267 100644
--- a/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
@@ -49,20 +49,55 @@ class CbtfArgonavisGui(QMakePackage):
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
+ version('1.3.0.0', branch='1.3.0.0',
+ git='https://github.com/OpenSpeedShop/cbtf-argonavis-gui.git')
+
version('1.3.0', branch='master',
git='https://github.com/OpenSpeedShop/cbtf-argonavis-gui.git')
- depends_on("cmake@3.0.2:", type='build')
- depends_on("openspeedshop+cuda gui='qt4'")
- depends_on('qt@4.8.6:')
- depends_on("boost@1.50.0:")
- depends_on("cbtf")
- depends_on("cbtf-krell")
- depends_on("cbtf-argonavis")
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf-argonavis-gui.git')
+
+ depends_on("cmake@3.0.2:", when='@develop', type='build')
+ depends_on("cmake@3.11.1", when='@1.3.0.0', type='build')
+
+ # To specify ^elfutils@0.170 on the command line spack
+ # apparently needs/wants this dependency explicity here
+ # even though it is referenced downstream
+ depends_on("elf", type="link")
+
+ depends_on('qt@4.8.6:', when='@develop')
+ depends_on('qt@5.10.0', when='@1.3.0.0')
+
+ depends_on("boost@1.50.0:", when='@develop')
+ depends_on("boost@1.66.0", when='@1.3.0.0')
+
+ # For MRNet
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.3.0.0')
+
+ # Dependencies for the openspeedshop cbtf packages.
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@1.3.0.0')
+
+ depends_on("cbtf-krell@develop", when='@develop')
+ depends_on("cbtf-krell@1.9.1.0", when='@1.3.0.0')
+
+ depends_on("cbtf-argonavis@develop", when='@develop')
+ depends_on("cbtf-argonavis@1.9.1.0", when='@1.3.0.0')
+
depends_on("cuda")
- depends_on("mrnet@5.0.1:+lwthreads")
- depends_on("xerces-c@3.1.1:")
- depends_on("graphviz")
+
+ depends_on("openspeedshop-utils+cuda@develop", when='@develop')
+ depends_on("openspeedshop-utils@2.3.1.3+cuda", when='@1.3.0.0')
+
+ # For Xerces-C
+ depends_on("xerces-c@3.1.1:", when='@develop')
+ depends_on("xerces-c@3.1.4", when='@1.3.0.0')
+
+ depends_on("graphviz@2.40.1:", when='@develop')
+ depends_on("graphviz@2.40.1", when='@1.3.0.0')
+
depends_on("qtgraph")
parallel = False
@@ -74,7 +109,7 @@ class CbtfArgonavisGui(QMakePackage):
spack_env.set('CBTF_KRELL_ROOT', self.spec['cbtf-krell'].prefix)
spack_env.set('CBTF_ARGONAVIS_ROOT',
self.spec['cbtf-argonavis'].prefix)
- spack_env.set('OSS_CBTF_ROOT', self.spec['openspeedshop'].prefix)
+ spack_env.set('OSS_CBTF_ROOT', self.spec['openspeedshop-utils'].prefix)
spack_env.set('GRAPHVIZ_ROOT', self.spec['graphviz'].prefix)
spack_env.set('QTGRAPHLIB_ROOT', self.spec['qtgraph'].prefix)
spack_env.set('KRELL_ROOT_MRNET', self.spec['mrnet'].prefix)
@@ -90,7 +125,7 @@ class CbtfArgonavisGui(QMakePackage):
# The openspeedshop libraries are needed to actually load the
# performance information into the GUI.
run_env.prepend_path(
- 'LD_LIBRARY_PATH', self.spec['openspeedshop'].prefix.lib64)
+ 'LD_LIBRARY_PATH', self.spec['openspeedshop-utils'].prefix.lib64)
def qmake_args(self):
options = ['-o', 'Makefile', 'openss-gui.pro']
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
index de65bca6de..0bffad266c 100644
--- a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
@@ -41,7 +41,6 @@
##########################################################################
from spack import *
-import os
class CbtfArgonavis(CMakePackage):
@@ -51,9 +50,15 @@ class CbtfArgonavis(CMakePackage):
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
+ version('1.9.1.0', branch='1.9.1.0',
+ git='https://github.com/OpenSpeedShop/cbtf-argonavis.git')
+
version('1.9.1', branch='master',
git='https://github.com/OpenSpeedShop/cbtf-argonavis.git')
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf-argonavis.git')
+
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
variant('crayfe', default=False,
@@ -65,17 +70,52 @@ class CbtfArgonavis(CMakePackage):
description='CMake build type')
depends_on("cmake@3.0.2:", type='build')
- depends_on("boost@1.50.0:")
- depends_on("papi")
- depends_on("libmonitor")
- depends_on("mrnet@5.0.1:+lwthreads")
- depends_on("mrnet@5.0.1:+cti", when='+cti')
- depends_on("cbtf")
- depends_on("cbtf+cti", when='+cti')
- depends_on("cbtf+runtime", when='+runtime')
- depends_on("cbtf-krell")
- depends_on("cbtf-krell+cti", when="+cti")
- depends_on("cbtf-krell+runtime", when="+runtime")
+
+ # To specify ^elfutils@0.170 on the command line spack
+ # apparently needs/wants this dependency explicity here
+ # even though it is referenced downstream
+ depends_on("elf", type="link")
+
+ # For boost
+ depends_on("boost@1.50.0:", when='@develop')
+ depends_on("boost@1.66.0", when='@1.9.1.0')
+
+ # For MRNet
+ depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti')
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop~cti')
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0~cti')
+
+ # For CBTF
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@1.9.1.0')
+
+ # For CBTF with cti
+ depends_on("cbtf@develop+cti", when='@develop+cti')
+ depends_on("cbtf@1.9.1.0+cti", when='@1.9.1.0+cti')
+
+ # For CBTF with runtime
+ depends_on("cbtf@develop+runtime", when='@develop+runtime')
+ depends_on("cbtf@1.9.1.0+runtime", when='@1.9.1.0+runtime')
+
+ # For libmonitor
+ depends_on("libmonitor+krellpatch")
+
+ # For PAPI
+ depends_on("papi", when='@develop')
+ depends_on("papi@5.5.1", when='@1.9.1.0')
+
+ # For CBTF-KRELL
+ depends_on("cbtf-krell@develop", when='@develop')
+ depends_on("cbtf-krell@1.9.1.0", when='@1.9.1.0')
+
+ depends_on('cbtf-krell@develop+cti', when='@develop+cti')
+ depends_on('cbtf-krell@1.9.1.0+cti', when='@1.9.1.0+cti')
+
+ depends_on('cbtf-krell@develop+runtime', when='@develop+runtime')
+ depends_on('cbtf-krell@1.9.1.0+runtime', when='@1.9.1.0+runtime')
+
+ # For CUDA
depends_on("cuda")
parallel = False
@@ -109,12 +149,6 @@ class CbtfArgonavis(CMakePackage):
def setup_environment(self, spack_env, run_env):
"""Set up the compile and runtime environments for a package."""
- if os.environ.get('LD_LIBRARY_PATH'):
- cupti_path = self.spec['cuda'].prefix + '/extras/CUPTI/lib64'
- os.environ['LD_LIBRARY_PATH'] += cupti_path
- else:
- os.environ['LD_LIBRARY_PATH'] = cupti_path
-
run_env.prepend_path(
'LD_LIBRARY_PATH',
self.spec['cuda'].prefix + '/extras/CUPTI/lib64')
diff --git a/var/spack/repos/builtin/packages/cbtf-krell/package.py b/var/spack/repos/builtin/packages/cbtf-krell/package.py
index 862250e002..7e7facc93a 100644
--- a/var/spack/repos/builtin/packages/cbtf-krell/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-krell/package.py
@@ -54,9 +54,15 @@ class CbtfKrell(CMakePackage):
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
+ version('1.9.1.0', branch='1.9.1.0',
+ git='https://github.com/OpenSpeedShop/cbtf-krell.git')
+
version('1.9.1', branch='master',
git='https://github.com/OpenSpeedShop/cbtf-krell.git')
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf-krell.git')
+
# MPI variants
variant('openmpi', default=False,
description="Build mpi experiment collector for openmpi MPI..")
@@ -83,29 +89,53 @@ class CbtfKrell(CMakePackage):
# Dependencies for cbtf-krell
depends_on("cmake@3.0.2:", type='build')
- # For binutils service
- depends_on("binutils")
+ # For binutils
+ depends_on("binutils", when='@develop')
+ depends_on("binutils@2.29.1", when='@1.9.1.0')
+
+ # For boost
+ depends_on("boost@1.50.0:", when='@develop')
+ depends_on("boost@1.66.0", when='@1.9.1.0')
+
+ # For Dyninst
+ depends_on("dyninst@9.3.2:", when='@develop')
+ depends_on("dyninst@9.3.2", when='@1.9.1.0')
+
+ # For MRNet
+ depends_on("mrnet@5.0.1-3:+cti", when='@develop+cti')
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@develop')
- # collectionTool
- depends_on("boost@1.50.0:")
- depends_on("dyninst@9.3.2:")
- depends_on("mrnet@5.0.1:+cti", when='+cti')
- depends_on("mrnet@5.0.1:+lwthreads")
+ depends_on("mrnet@5.0.1-3+cti", when='@1.9.1.0+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0')
- depends_on("xerces-c@3.1.1:")
- depends_on("cbtf")
- depends_on("cbtf+cti", when='+cti')
- depends_on("cbtf+runtime", when='+runtime')
+ # For Xerces-C
+ depends_on("xerces-c@3.1.1:", when='@develop')
+ depends_on("xerces-c@3.1.4", when='@1.9.1.0')
+
+ # For CBTF
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@1.9.1.0')
+
+ # For CBTF with cti
+ depends_on("cbtf@develop+cti", when='@develop+cti')
+ depends_on("cbtf@1.9.1.0+cti", when='@1.9.1.0+cti')
+
+ # For CBTF with runtime
+ depends_on("cbtf@develop+runtime", when='@develop+runtime')
+ depends_on("cbtf@1.9.1.0+runtime", when='@1.9.1.0+runtime')
# for services and collectors
depends_on("libmonitor+krellpatch")
- depends_on("libunwind")
- depends_on("papi")
+
+ depends_on("libunwind", when='@develop')
+ depends_on("libunwind@1.1", when='@1.9.1.0')
+
+ depends_on("papi", when='@develop')
+ depends_on("papi@5.5.1", when='@1.9.1.0')
+
depends_on("llvm-openmp-ompt@tr6_forwards+standalone")
# MPI Installations
- # These have not worked either for build or execution, commenting out for
- # now
depends_on("openmpi", when='+openmpi')
depends_on("mpich", when='+mpich')
depends_on("mpich2", when='+mpich2')
diff --git a/var/spack/repos/builtin/packages/cbtf-lanl/package.py b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
index 0c6bf54b4c..d327537cc3 100644
--- a/var/spack/repos/builtin/packages/cbtf-lanl/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
@@ -48,26 +48,57 @@ class CbtfLanl(CMakePackage):
command monitoring tool."""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
+ version('1.9.1.0', branch='1.9.1.0',
+ git='https://github.com/OpenSpeedShop/cbtf-lanl.git')
+
version('1.9.1', branch='master',
- git='http://git.code.sf.net/p/cbtf-lanl/cbtf-lanl')
+ git='https://github.com/OpenSpeedShop/cbtf-lanl.git')
+
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf-lanl.git')
variant('build_type', default='None', values=('None'),
description='CMake build type')
+
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
+
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
depends_on("cmake@3.0.2:", type='build')
- # Dependencies for cbtf-krell
- depends_on("mrnet@5.0.1:+lwthreads")
- depends_on("xerces-c@3.1.1:")
- depends_on("cbtf")
- depends_on("cbtf+cti", when='+cti')
- depends_on("cbtf+runtime", when='+runtime')
- depends_on("cbtf-krell")
- depends_on("cbtf-krell+cti", when='+cti')
- depends_on("cbtf-krell+runtime", when='+runtime')
+
+ # 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='@1.9.1.0+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0')
+
+ # For Xerces-C
+ depends_on("xerces-c@3.1.1:", when='@develop')
+ depends_on("xerces-c@3.1.4", when='@1.9.1.0')
+
+ # For CBTF
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@1.9.1.0')
+
+ # For CBTF with cti
+ depends_on("cbtf@develop+cti", when='@develop+cti')
+ depends_on("cbtf@1.9.1.0+cti", when='@1.9.1.0+cti')
+
+ # For CBTF with runtime
+ depends_on("cbtf@develop+runtime", when='@develop+runtime')
+ depends_on("cbtf@1.9.1.0+runtime", when='@1.9.1.0+runtime')
+
+ # For CBTF-KRELL
+ depends_on("cbtf-krell@develop", when='@develop')
+ depends_on("cbtf-krell@1.9.1.0", when='@1.9.1.0')
+
+ depends_on('cbtf-krell@develop+cti', when='@develop+cti')
+ depends_on('cbtf-krell@1.9.1.0+cti', when='@1.9.1.0+cti')
+
+ depends_on('cbtf-krell@develop+runtime', when='@develop+runtime')
+ depends_on('cbtf-krell@1.9.1.0+runtime', when='@1.9.1.0+runtime')
parallel = False
diff --git a/var/spack/repos/builtin/packages/cbtf/package.py b/var/spack/repos/builtin/packages/cbtf/package.py
index 97d94ff20e..73e7227aba 100644
--- a/var/spack/repos/builtin/packages/cbtf/package.py
+++ b/var/spack/repos/builtin/packages/cbtf/package.py
@@ -53,23 +53,44 @@ class Cbtf(CMakePackage):
homepage = "http://sourceforge.net/p/cbtf/wiki/Home"
# Use when the git repository is available
+
+ version('1.9.1.0', branch='1.9.1.0',
+ git='https://github.com/OpenSpeedShop/cbtf.git')
+
version('1.9.1', branch='master',
git='https://github.com/OpenSpeedShop/cbtf.git')
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf.git')
+
variant('cti', default=False,
description="Build MRNet with the CTI startup option")
+
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
+
variant('build_type', default='None', values=('None'),
description='CMake build type')
- depends_on("cmake@3.0.2:", type='build')
- depends_on("boost@1.50.0:")
- depends_on("mrnet@5.0.1:+lwthreads")
- depends_on("mrnet@5.0.1:+cti", when='+cti')
- depends_on("xerces-c@3.1.1:")
- # Work around for spack libxml2 package bug, take off python when fixed
- depends_on("libxml2+python")
+ depends_on("cmake@3.11.1", when='@1.9.1.0:', type='build')
+ depends_on("cmake@3.0.2:", when='@develop', type='build')
+
+ depends_on("boost@1.66.0", when='@1.9.1.0:')
+ depends_on("boost@1.50.0:", when='@develop')
+
+ # 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='@1.9.1.0:+cti')
+ depends_on("mrnet@5.0.1-3+lwthreads", when='@1.9.1.0:')
+
+ # For Xerces-C
+ depends_on("xerces-c@3.1.1:", when='@develop')
+ depends_on("xerces-c@3.1.4", when='@1.9.1.0:')
+
+ # For XML2
+ depends_on("libxml2", when='@develop')
+ depends_on("libxml2@2.9.4", when='@1.9.1.0:')
parallel = False
diff --git a/var/spack/repos/builtin/packages/openspeedshop-utils/package.py b/var/spack/repos/builtin/packages/openspeedshop-utils/package.py
new file mode 100644
index 0000000000..12eee7c8b1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openspeedshop-utils/package.py
@@ -0,0 +1,344 @@
+##############################################################################
+# Copyright (c) 2013-2018, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+##############################################################################
+# Copyright (c) 2015-2018 Krell Institute. All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public 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 spack
+import spack.store
+
+import os
+import os.path
+
+
+class OpenspeedshopUtils(CMakePackage):
+ """OpenSpeedShop is a community effort by The Krell Institute with
+ current direct funding from DOEs NNSA. It builds on top of a
+ broad list of community infrastructures, most notably Dyninst
+ and MRNet from UW, libmonitor from Rice, and PAPI from UTK.
+ OpenSpeedShop is an open source multi platform Linux performance
+ tool which is targeted to support performance analysis of
+ applications running on both single node and large scale IA64,
+ IA32, EM64T, AMD64, PPC, ARM, Power8, Intel Phi, Blue Gene and
+ Cray platforms. OpenSpeedShop development is hosted by the Krell
+ Institute. The infrastructure and base components of OpenSpeedShop
+ are released as open source code primarily under LGPL.
+ openspeedshop-utils is a package that does not have the
+ qt3 gui. It was created to avoid a conflict between
+ openspeedshop and cbtf-argonavis-gui based on the fact
+ that spack will not allow a qt3 and qt4/qt5 dependency in a packages
+ dependency tree.
+ """
+
+ homepage = "http://www.openspeedshop.org"
+ url = "https://github.com/OpenSpeedShop/openspeedshop.git"
+
+ # Use when the git repository is available
+ version('2.3.1.3', git='https://github.com/OpenSpeedShop/openspeedshop.git', tag='2.3.1.3')
+
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/openspeedshop.git')
+
+ variant('runtime', default=False,
+ description="build only the runtime libraries and collectors.")
+ variant('cti', default=False,
+ description="Build MRNet with the CTI startup option")
+ variant('crayfe', default=False,
+ description="build only the FE tool using the runtime_dir \
+ to point to target build.")
+ variant('cuda', default=False,
+ description="build with cuda packages included.")
+
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
+
+ # MPI variants
+ variant('openmpi', default=False,
+ description="Build mpi collector for openmpi \
+ MPI when variant is enabled.")
+ variant('mpt', default=False,
+ description="Build mpi collector for SGI \
+ MPT MPI when variant is enabled.")
+ variant('mvapich2', default=False,
+ description="Build mpi collector for mvapich2\
+ MPI when variant is enabled.")
+ variant('mvapich', default=False,
+ description="Build mpi collector for mvapich\
+ MPI when variant is enabled.")
+ variant('mpich2', default=False,
+ description="Build mpi collector for mpich2\
+ MPI when variant is enabled.")
+ variant('mpich', default=False,
+ description="Build mpi collector for mpich\
+ MPI when variant is enabled.")
+
+ depends_on("cmake@3.0.2:", type='build')
+
+ # Dependencies for openspeedshop that are common to all
+ # the variants of the OpenSpeedShop build
+ depends_on("libtool", type='build')
+ depends_on("bison", type='build')
+ depends_on("flex", type='build')
+
+ # For binutils
+ depends_on("binutils", when='@develop', type='build')
+ depends_on("binutils@2.29.1", when='@2.3.1.3', type='build')
+
+ depends_on("elf", type="link")
+ depends_on("libdwarf")
+
+ depends_on("sqlite")
+
+ # For boost
+ depends_on("boost@1.50.0:", when='@develop')
+ depends_on("boost@1.66.0", when='@2.3.1.3')
+
+ depends_on("dyninst@9.3.2:", when='@develop')
+ depends_on("dyninst@9.3.2", when='@2.3.1.3')
+
+ depends_on("python", when='@develop')
+ depends_on("python@2.7.14", when='@2.3.1.3')
+
+ depends_on("libxml2", when='@develop')
+ depends_on("libxml2@2.9.4", when='@2.3.1.3')
+
+ # Dependencies for the openspeedshop cbtf packages.
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@2.3.1.3')
+
+ depends_on("cbtf-krell@develop", when='@develop')
+ depends_on("cbtf-krell@1.9.1.0", when='@2.3.1.3')
+
+ depends_on('cbtf-krell@develop+crayfe', when='@develop+crayfe')
+ depends_on('cbtf-krell@1.9.1.0+crayfe', when='@2.3.1.3+crayfe')
+
+ depends_on('cbtf-krell@develop+cti', when='@develop+cti')
+ depends_on('cbtf-krell@1.9.1.0+cti', when='@2.3.1.3+cti')
+
+ depends_on('cbtf-krell@develop+mpich', when='@develop+mpich')
+ depends_on('cbtf-krell@1.9.1.0+mpich', when='@2.3.1.3+mpich')
+
+ depends_on('cbtf-krell@develop+mpich2', when='@develop+mpich2')
+ depends_on('cbtf-krell@1.9.1.0+mpich2', when='@2.3.1.3+mpich2')
+
+ depends_on('cbtf-krell@develop+mpt', when='@develop+mpt')
+ depends_on('cbtf-krell@1.9.1.0+mpt', when='@2.3.1.3+mpt')
+
+ depends_on('cbtf-krell@develop+mvapich', when='@develop+mvapich')
+ depends_on('cbtf-krell@1.9.1.0+mvapich', when='@2.3.1.3+mvapich')
+
+ depends_on('cbtf-krell@develop+mvapich2', when='@develop+mvapich2')
+ depends_on('cbtf-krell@1.9.1.0+mvapich2', when='@2.3.1.3+mvapich2')
+
+ depends_on('cbtf-krell@develop+openmpi', when='@develop+openmpi')
+ depends_on('cbtf-krell@1.9.1.0+openmpi', when='@2.3.1.3+openmpi')
+
+ depends_on("cbtf-argonavis@develop", when='@develop+cuda')
+ depends_on("cbtf-argonavis@1.9.1.0", when='@2.3.1.3+cuda')
+
+ # 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='@2.3.1.3+cti')
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.3.1.3')
+
+ parallel = False
+
+ build_directory = 'build_openspeedshop'
+
+ def set_CrayLoginNode_cmakeOptions(self, spec, cmakeOptions):
+ # Appends to cmakeOptions the options that will enable the appropriate
+ # Cray login node libraries
+
+ CrayLoginNodeOptions = []
+ rt_platform = "cray"
+
+ # How do we get the compute node (CNL) cbtf package install
+ # directory path?
+ # spec['cbtf'].prefix is the login node value for this build, as
+ # we only get here when building the login node components and
+ # that is all that is known to spack.
+ be_ck = spack.store.db.query_one('cbtf-krell arch=cray-CNL-haswell')
+
+ # Equivalent to install-tool cmake arg:
+ # '-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
+ # % <base dir>/cbtf_v2.3.1.release/compute)
+ CrayLoginNodeOptions.append('-DCBTF_KRELL_CN_RUNTIME_DIR=%s'
+ % be_ck.prefix)
+ CrayLoginNodeOptions.append('-DRUNTIME_PLATFORM=%s'
+ % rt_platform)
+
+ cmakeOptions.extend(CrayLoginNodeOptions)
+
+ def cmake_args(self):
+ # Appends base options to cmake_args
+ spec = self.spec
+
+ compile_flags = "-O2 -g"
+
+ cmake_args = []
+
+ # Indicate building cbtf vers (transfer rawdata files)
+ instrumentor_setting = "cbtf"
+
+ if spec.satisfies('+runtime'):
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ else:
+
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ if spec.satisfies('+crayfe'):
+ # We need to build target/compute node
+ # components/libraries first then pass
+ # those libraries to the openspeedshop
+ # login node build
+ self.set_CrayLoginNode_cmakeOptions(spec, cmake_args)
+
+ cmake_args.extend(['-DBUILD_QT3_GUI=FALSE'])
+
+ return cmake_args
+
+ def set_defaultbase_cmakeOptions(self, spec, cmakeOptions):
+ # Appends to cmakeOptions the options that will enable
+ # the appropriate base level options to the openspeedshop
+ # cmake build.
+ python_exe = spec['python'].command.path
+ python_library = spec['python'].libs[0]
+ python_include = spec['python'].headers.directories[0]
+
+ BaseOptions = []
+
+ BaseOptions.append('-DBINUTILS_DIR=%s' % spec['binutils'].prefix)
+ BaseOptions.append('-DLIBELF_DIR=%s' % spec['elf'].prefix)
+ BaseOptions.append('-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix)
+ BaseOptions.append('-DPYTHON_EXECUTABLE=%s' % python_exe)
+ BaseOptions.append('-DPYTHON_INCLUDE_DIR=%s' % python_include)
+ BaseOptions.append('-DPYTHON_LIBRARY=%s' % python_library)
+ BaseOptions.append('-DBoost_NO_SYSTEM_PATHS=TRUE')
+ BaseOptions.append('-DBoost_NO_BOOST_CMAKE=TRUE')
+ BaseOptions.append('-DBOOST_ROOT=%s' % spec['boost'].prefix)
+ BaseOptions.append('-DBoost_DIR=%s' % spec['boost'].prefix)
+ BaseOptions.append('-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib)
+ BaseOptions.append('-DDYNINST_DIR=%s' % spec['dyninst'].prefix)
+
+ cmakeOptions.extend(BaseOptions)
+
+ def set_mpi_cmakeOptions(self, spec, cmakeOptions):
+ # Appends to cmakeOptions the options that will enable
+ # the appropriate MPI implementations
+
+ MPIOptions = []
+
+ # openmpi
+ if spec.satisfies('+openmpi'):
+ MPIOptions.append('-DOPENMPI_DIR=%s' % spec['openmpi'].prefix)
+ # mpich
+ if spec.satisfies('+mpich'):
+ MPIOptions.append('-DMPICH_DIR=%s' % spec['mpich'].prefix)
+ # mpich2
+ if spec.satisfies('+mpich2'):
+ MPIOptions.append('-DMPICH2_DIR=%s' % spec['mpich2'].prefix)
+ # mvapich
+ if spec.satisfies('+mvapich'):
+ MPIOptions.append('-DMVAPICH_DIR=%s' % spec['mvapich'].prefix)
+ # mvapich2
+ if spec.satisfies('+mvapich2'):
+ MPIOptions.append('-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix)
+ # mpt
+ if spec.satisfies('+mpt'):
+ MPIOptions.append('-DMPT_DIR=%s' % spec['mpt'].prefix)
+
+ cmakeOptions.extend(MPIOptions)
+
+ def setup_environment(self, spack_env, run_env):
+ """Set up the compile and runtime environments for a package."""
+
+ # Find Dyninst library path, this is needed to
+ # set the DYNINSTAPI_RT_LIB library which is
+ # required for OpenSpeedShop to find loop level
+ # performance information
+ dyninst_libdir = find_libraries('libdyninstAPI_RT',
+ root=self.spec['dyninst'].prefix,
+ shared=True, recursive=True)
+
+ # Set Dyninst RT library path to support OSS loop resolution code
+ run_env.set('DYNINSTAPI_RT_LIB', dyninst_libdir)
+
+ # Find openspeedshop library path
+ oss_libdir = find_libraries(
+ 'libopenss-framework',
+ root=self.spec['openspeedshop-utils'].prefix,
+ shared=True, recursive=True)
+ run_env.prepend_path('LD_LIBRARY_PATH',
+ os.path.dirname(oss_libdir.joined()))
+
+ run_env.set('OPENSS_RAWDATA_DIR', '.')
+
+ cbtf_mc = '/sbin/cbtf_mrnet_commnode'
+ cbtf_lmb = '/sbin/cbtf_libcbtf_mrnet_backend'
+ run_env.set('XPLAT_RSH', 'ssh')
+ run_env.set('MRNET_COMM_PATH',
+ join_path(self.spec['cbtf-krell'].prefix + cbtf_mc))
+ run_env.set('CBTF_MRNET_BACKEND_PATH',
+ join_path(self.spec['cbtf-krell'].prefix + cbtf_lmb))
+ 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.sbin)
+ run_env.prepend_path('PATH', self.spec['python'].prefix.bin)
diff --git a/var/spack/repos/builtin/packages/openspeedshop/package.py b/var/spack/repos/builtin/packages/openspeedshop/package.py
index d848df1073..7347280159 100644
--- a/var/spack/repos/builtin/packages/openspeedshop/package.py
+++ b/var/spack/repos/builtin/packages/openspeedshop/package.py
@@ -64,16 +64,14 @@ class Openspeedshop(CMakePackage):
"""
homepage = "http://www.openspeedshop.org"
- url = "https://github.com/OpenSpeedShop"
+ url = "https://github.com/OpenSpeedShop/openspeedshop.git"
# Use when the git repository is available
- version('2.3.1', branch='master',
+ version('2.3.1.3', git='https://github.com/OpenSpeedShop/openspeedshop.git', tag='2.3.1.3')
+
+ version('develop', branch='master',
git='https://github.com/OpenSpeedShop/openspeedshop.git')
- variant('offline', default=False,
- description="build with offline instrumentor enabled.")
- variant('cbtf', default=True,
- description="build with cbtf instrumentor enabled.")
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
variant('cti', default=False,
@@ -112,48 +110,77 @@ class Openspeedshop(CMakePackage):
MPI when variant is enabled.")
depends_on("cmake@3.0.2:", type='build')
+
# Dependencies for openspeedshop that are common to all
# the variants of the OpenSpeedShop build
depends_on("libtool", type='build')
depends_on("bison", type='build')
depends_on("flex", type='build')
- depends_on("binutils", type='build')
+
+ # For binutils
+ depends_on("binutils", when='@develop', type='build')
+ depends_on("binutils@2.29.1", when='@2.3.1.3', type='build')
+
depends_on("elf", type="link")
depends_on("libdwarf")
+
depends_on("sqlite")
- depends_on("boost@1.50.0:")
- depends_on("dyninst@9.3.2:")
- depends_on("python")
- depends_on("libxml2+python")
+
+ # For boost
+ depends_on("boost@1.50.0:", when='@develop')
+ depends_on("boost@1.66.0", when='@2.3.1.3')
+
+ depends_on("dyninst@9.3.2:", when='@develop')
+ depends_on("dyninst@9.3.2", when='@2.3.1.3')
+
+ depends_on("python", when='@develop')
+ depends_on("python@2.7.14", when='@2.3.1.3')
+
+ depends_on("libxml2", when='@develop')
+ depends_on("libxml2@2.9.4", when='@2.3.1.3')
+
depends_on("qt@3.3.8b+krellpatch", when='gui=qt3')
- # Actively working on adding this gui package
- # depends_on("cbtf-argonavis-gui", when='gui=qt4')
-
- # Dependencies only for the openspeedshop offline package.
- depends_on("libunwind", when='+offline')
- depends_on("papi", when='+offline')
- depends_on("libmonitor+krellpatch", when='+offline')
- depends_on("openmpi", when='+offline+openmpi')
- depends_on("mpich", when='+offline+mpich')
- depends_on("mpich2", when='+offline+mpich2')
- depends_on("mvapich2", when='+offline+mvapich2')
- depends_on("mvapich", when='+offline+mvapich')
- depends_on("mpt", when='+offline+mpt')
-
- # Dependencies only for the openspeedshop cbtf package.
- depends_on("cbtf", when='+cbtf')
- depends_on('cbtf-krell', when='+cbtf')
- depends_on('cbtf-krell+crayfe', when='+crayfe')
- depends_on('cbtf-krell+cti', when='+cti')
- depends_on('cbtf-krell+mpich', when='+cbtf+mpich')
- depends_on('cbtf-krell+mpich2', when='+cbtf+mpich2')
- depends_on('cbtf-krell+mpt', when='+cbtf+mpt')
- depends_on('cbtf-krell+mvapich', when='+cbtf+mvapich')
- depends_on('cbtf-krell+mvapich2', when='+cbtf+mvapich2')
- depends_on('cbtf-krell+openmpi', when='+cbtf+openmpi')
- depends_on("cbtf-argonavis", when='+cbtf+cuda')
- depends_on("mrnet@5.0.1:+lwthreads", when='+cbtf')
- depends_on("mrnet@5.0.1:+cti", when='+cti+cbtf')
+
+ # Dependencies for the openspeedshop cbtf packages.
+ depends_on("cbtf@develop", when='@develop')
+ depends_on("cbtf@1.9.1.0", when='@2.3.1.3')
+
+ depends_on("cbtf-krell@develop", when='@develop')
+ depends_on("cbtf-krell@1.9.1.0", when='@2.3.1.3')
+
+ depends_on('cbtf-krell@develop+crayfe', when='@develop+crayfe')
+ depends_on('cbtf-krell@1.9.1.0+crayfe', when='@2.3.1.3+crayfe')
+
+ depends_on('cbtf-krell@develop+cti', when='@develop+cti')
+ depends_on('cbtf-krell@1.9.1.0+cti', when='@2.3.1.3+cti')
+
+ depends_on('cbtf-krell@develop+mpich', when='@develop+mpich')
+ depends_on('cbtf-krell@1.9.1.0+mpich', when='@2.3.1.3+mpich')
+
+ depends_on('cbtf-krell@develop+mpich2', when='@develop+mpich2')
+ depends_on('cbtf-krell@1.9.1.0+mpich2', when='@2.3.1.3+mpich2')
+
+ depends_on('cbtf-krell@develop+mpt', when='@develop+mpt')
+ depends_on('cbtf-krell@1.9.1.0+mpt', when='@2.3.1.3+mpt')
+
+ depends_on('cbtf-krell@develop+mvapich', when='@develop+mvapich')
+ depends_on('cbtf-krell@1.9.1.0+mvapich', when='@2.3.1.3+mvapich')
+
+ depends_on('cbtf-krell@develop+mvapich2', when='@develop+mvapich2')
+ depends_on('cbtf-krell@1.9.1.0+mvapich2', when='@2.3.1.3+mvapich2')
+
+ depends_on('cbtf-krell@develop+openmpi', when='@develop+openmpi')
+ depends_on('cbtf-krell@1.9.1.0+openmpi', when='@2.3.1.3+openmpi')
+
+ depends_on("cbtf-argonavis@develop", when='@develop+cuda')
+ depends_on("cbtf-argonavis@1.9.1.0", when='@2.3.1.3+cuda')
+
+ # 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='@2.3.1.3+cti')
+ depends_on("mrnet@5.0.1-3:+lwthreads", when='@2.3.1.3')
parallel = False
@@ -165,6 +192,7 @@ class Openspeedshop(CMakePackage):
CrayLoginNodeOptions = []
rt_platform = "cray"
+
# How do we get the compute node (CNL) cbtf package install
# directory path?
# spec['cbtf'].prefix is the login node value for this build, as
@@ -188,89 +216,54 @@ class Openspeedshop(CMakePackage):
compile_flags = "-O2 -g"
- if spec.satisfies('+offline'):
- # Indicate building offline vers (writes rawdata files)
- instrumentor_setting = "offline"
- if spec.satisfies('+runtime'):
- cmake_args = [
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
- '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
- '-DPAPI_DIR=%s' % spec['papi'].prefix]
-
- # Add any MPI implementations coming from variant settings
- self.set_mpi_cmakeOptions(spec, cmake_args)
-
- else:
- cmake_args = []
-
- # Appends base options to cmake_args
- self.set_defaultbase_cmakeOptions(spec, cmake_args)
- cmake_args.extend(
- ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
- '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
- '-DPAPI_DIR=%s' % spec['papi'].prefix,
- '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
- '-DQTLIB_DIR=%s' % spec['qt'].prefix])
-
- # Add any MPI implementations coming from variant settings
- self.set_mpi_cmakeOptions(spec, cmake_args)
+ cmake_args = []
- elif spec.satisfies('+cbtf'):
+ # Indicate building cbtf vers (transfer rawdata files)
+ instrumentor_setting = "cbtf"
- cmake_args = []
+ if spec.satisfies('+runtime'):
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
- # Indicate building cbtf vers (transfer rawdata files)
- instrumentor_setting = "cbtf"
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
- if spec.satisfies('+runtime'):
- # Appends base options to cmake_args
- self.set_defaultbase_cmakeOptions(spec, cmake_args)
+ else:
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+ guitype = self.spec.variants['gui'].value
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ if guitype == 'none':
+ cmake_args.extend(
+ ['-DBUILD_QT3_GUI=FALSE'])
+ elif guitype == 'qt4':
cmake_args.extend(
- ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
-
- else:
-
- # Appends base options to cmake_args
- self.set_defaultbase_cmakeOptions(spec, cmake_args)
- guitype = self.spec.variants['gui'].value
+ ['-DBUILD_QT3_GUI=FALSE'])
+ elif guitype == 'qt3':
cmake_args.extend(
- ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
-
- if guitype == 'none':
- cmake_args.extend(
- ['-DBUILD_QT3_GUI=FALSE'])
- elif guitype == 'qt4':
- cmake_args.extend(
- ['-DBUILD_QT3_GUI=FALSE'])
- elif guitype == 'qt3':
- cmake_args.extend(
- ['-DQTLIB_DIR=%s'
- % spec['qt'].prefix])
-
- if spec.satisfies('+crayfe'):
- # We need to build target/compute node
- # components/libraries first then pass
- # those libraries to the openspeedshop
- # login node build
- self.set_CrayLoginNode_cmakeOptions(spec, cmake_args)
+ ['-DQTLIB_DIR=%s'
+ % spec['qt'].prefix])
+
+ if spec.satisfies('+crayfe'):
+ # We need to build target/compute node
+ # components/libraries first then pass
+ # those libraries to the openspeedshop
+ # login node build
+ self.set_CrayLoginNode_cmakeOptions(spec, cmake_args)
return cmake_args
@@ -352,35 +345,15 @@ class Openspeedshop(CMakePackage):
os.path.dirname(oss_libdir.joined()))
run_env.set('OPENSS_RAWDATA_DIR', '.')
- # Settings specific to the version, checking here
- # for the offline instrumentor, otherwise use cbtf instrumentor
- # settings. MPI for the cbtf instrumentor is setup in cbtf-krell
- if '+offline' in self.spec:
- # Had to use this form of syntax self.prefix.lib and
- # self.prefix.lib64 returned None all the time
- run_env.set('OPENSS_PLUGIN_PATH',
- join_path(oss_libdir + '/openspeedshop'))
- run_env.prepend_path('PATH', self.spec['papi'].prefix.bin)
- run_env.prepend_path('PATH', self.spec['libdwarf'].prefix.bin)
- run_env.prepend_path('PATH', self.spec['python'].prefix.bin)
-
- if '+mpich' in self.spec:
- run_env.set('OPENSS_MPI_IMPLEMENTATION', 'mpich')
- if '+mpich2' in self.spec:
- run_env.set('OPENSS_MPI_IMPLEMENTATION', 'mpich2')
- if '+mvapich2' in self.spec:
- run_env.set('OPENSS_MPI_IMPLEMENTATION', 'mvapich2')
- if '+openmpi' in self.spec:
- run_env.set('OPENSS_MPI_IMPLEMENTATION', 'openmpi')
- else:
- cbtf_mc = '/sbin/cbtf_mrnet_commnode'
- cbtf_lmb = '/sbin/cbtf_libcbtf_mrnet_backend'
- run_env.set('XPLAT_RSH', 'ssh')
- run_env.set('MRNET_COMM_PATH',
- join_path(self.spec['cbtf-krell'].prefix + cbtf_mc))
- run_env.set('CBTF_MRNET_BACKEND_PATH',
- join_path(self.spec['cbtf-krell'].prefix + cbtf_lmb))
- 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.sbin)
- run_env.prepend_path('PATH', self.spec['python'].prefix.bin)
+
+ cbtf_mc = '/sbin/cbtf_mrnet_commnode'
+ cbtf_lmb = '/sbin/cbtf_libcbtf_mrnet_backend'
+ run_env.set('XPLAT_RSH', 'ssh')
+ run_env.set('MRNET_COMM_PATH',
+ join_path(self.spec['cbtf-krell'].prefix + cbtf_mc))
+ run_env.set('CBTF_MRNET_BACKEND_PATH',
+ join_path(self.spec['cbtf-krell'].prefix + cbtf_lmb))
+ 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.sbin)
+ run_env.prepend_path('PATH', self.spec['python'].prefix.bin)
diff --git a/var/spack/repos/builtin/packages/qtgraph/package.py b/var/spack/repos/builtin/packages/qtgraph/package.py
index 30e0e40829..f4ffbaefcf 100644
--- a/var/spack/repos/builtin/packages/qtgraph/package.py
+++ b/var/spack/repos/builtin/packages/qtgraph/package.py
@@ -51,12 +51,22 @@ class Qtgraph(QMakePackage):
homepage = "https://github.com/OpenSpeedShop/QtGraph"
url = "https://github.com/OpenSpeedShop/QtGraph.git"
+
+ version('1.0.0.0', branch='1.0.0.0',
+ git='https://github.com/OpenSpeedShop/QtGraph.git')
+
version('1.0.0', branch='master',
git='https://github.com/OpenSpeedShop/QtGraph.git')
+ version('develop', branch='master',
+ git='https://github.com/OpenSpeedShop/QtGraph.git')
+
# qtgraph depends on these packages
- depends_on('qt@4.8.6:')
- depends_on('graphviz')
+ depends_on('qt@4.8.6:', when='@develop')
+ depends_on('qt@5.10.0', when='@1.0.0.0')
+
+ depends_on("graphviz@2.40.1:", when='@develop')
+ depends_on("graphviz@2.40.1", when='@1.0.0.0')
def setup_environment(self, spack_env, run_env):
"""Set up the compile and runtime environments for a package."""