diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py index 9a0b4dd2c56..69053ef1181 100644 --- a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py +++ b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py @@ -59,12 +59,11 @@ class CbtfArgonavis(Package): depends_on("cmake@3.0.2:", type='build') depends_on("boost@1.50.0:") - #depends_on("boost@1.53.0") + # depends_on("boost@1.53.0") depends_on("papi") depends_on("mrnet@5.0.1:+lwthreads") depends_on("cbtf") depends_on("cbtf-krell") - #depends_on("cuda@6.0.37:") depends_on("cuda") parallel = False diff --git a/var/spack/repos/builtin/packages/cbtf-krell/package.py b/var/spack/repos/builtin/packages/cbtf-krell/package.py index f1dce98b75c..88c2b6d7860 100644 --- a/var/spack/repos/builtin/packages/cbtf-krell/package.py +++ b/var/spack/repos/builtin/packages/cbtf-krell/package.py @@ -81,7 +81,7 @@ class CbtfKrell(Package): # collectionTool depends_on("boost@1.50.0:") - #depends_on("boost@1.53.0") + # depends_on("boost@1.53.0") depends_on("dyninst@8.2.1:") depends_on("mrnet@5.0.1:+lwthreads") diff --git a/var/spack/repos/builtin/packages/cbtf/package.py b/var/spack/repos/builtin/packages/cbtf/package.py index c4ce86b6dba..0a7999d2847 100644 --- a/var/spack/repos/builtin/packages/cbtf/package.py +++ b/var/spack/repos/builtin/packages/cbtf/package.py @@ -65,7 +65,7 @@ class Cbtf(Package): depends_on("cmake@3.0.2:", type='build') depends_on("boost@1.50.0:") - #depends_on("boost@1.53.0") + # depends_on("boost@1.53.0") depends_on("mrnet@5.0.1:+lwthreads") depends_on("xerces-c@3.1.1:") # Work around for spack libxml2 package bug, take off python when fixed diff --git a/var/spack/repos/builtin/packages/mrnet/package.py b/var/spack/repos/builtin/packages/mrnet/package.py index 5d7eacce807..8f860556d49 100644 --- a/var/spack/repos/builtin/packages/mrnet/package.py +++ b/var/spack/repos/builtin/packages/mrnet/package.py @@ -44,7 +44,8 @@ class Mrnet(Package): depends_on("boost") def install(self, spec, prefix): - # Build the MRNet LW thread safe libraries when the lwthreads variant is present + # Build the MRNet LW thread safe libraries when the + # lwthreads variant is present if '+lwthreads' in spec: configure("--prefix=%s" % prefix, "--enable-shared", "--enable-ltwt-threadsafe") diff --git a/var/spack/repos/builtin/packages/openspeedshop/package.py b/var/spack/repos/builtin/packages/openspeedshop/package.py index bf53ec8da88..166304ef7bd 100644 --- a/var/spack/repos/builtin/packages/openspeedshop/package.py +++ b/var/spack/repos/builtin/packages/openspeedshop/package.py @@ -22,68 +22,88 @@ # 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-2016 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 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. +# 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 os import os.path + class Openspeedshop(Package): - """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, 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 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. """ homepage = "http://www.openspeedshop.org" url = "https://github.com/OpenSpeedShop" version('2.2', '16cb051179c2038de4e8a845edf1d573') # Use when the git repository is available - version('2.2', branch='master', git='https://github.com/OpenSpeedShop/openspeedshop.git') + version('2.2', branch='master', + git='https://github.com/OpenSpeedShop/openspeedshop.git') # Optional mirror template - #url = "file:/home/jeg/OpenSpeedShop_ROOT/SOURCES/openspeedshop-2.2.tar.gz" - #version('2.2', '517a7798507241ad8abd8b0626a4d2cf') + # url = "file:/home/jeg/OpenSpeedShop_ROOT/SOURCES/openspeedshop-2.2.tar.gz" + # version('2.2', '517a7798507241ad8abd8b0626a4d2cf') parallel = False - 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('frontend', default=False, description="build only the front-end tool using the runtime_dir to point to the target build.") - variant('cuda', default=False, description="build with cuda packages included.") - variant('ptgf', default=False, description="build with the PTGF based gui package enabled.") - variant('rtfe', default=False, description="build for generic cluster platforms that have different processors on the fe and be nodes.") + 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('frontend', 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('ptgf', default=False, + description="build with the PTGF based gui package enabled.") + variant('rtfe', default=False, + description="build for clusters heterogeneous processors on fe/be nodes.") # MPI variants - variant('openmpi', default=False, description="Build mpi experiment collector for openmpi MPI when this variant is enabled.") - variant('mpt', default=False, description="Build mpi experiment collector for SGI MPT MPI when this variant is enabled.") - variant('mvapich2', default=False, description="Build mpi experiment collector for mvapich2 MPI when this variant is enabled.") - variant('mvapich', default=False, description="Build mpi experiment collector for mvapich MPI when this variant is enabled.") - variant('mpich2', default=False, description="Build mpi experiment collector for mpich2 MPI when this variant is enabled.") - variant('mpich', default=False, description="Build mpi experiment collector for mpich MPI when this variant is enabled.") + 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 + # Dependencies for openspeedshop that are common to all + # the variants of the OpenSpeedShop build depends_on("bison", type='build') depends_on("flex", type='build') depends_on("binutils@2.24+krellpatch", type='build') @@ -91,7 +111,7 @@ class Openspeedshop(Package): depends_on("libdwarf") depends_on("sqlite") depends_on("boost@1.50.0:") - #depends_on("boost@1.53.0") + # depends_on("boost@1.53.0") depends_on("dyninst@9.1.0:") depends_on("python") depends_on("qt@3.3.8b+krellpatch") @@ -112,16 +132,22 @@ class Openspeedshop(Package): depends_on("cbtf-krell", when='+cbtf') depends_on("cbtf-argonavis", when='+cbtf+cuda') depends_on("mrnet@5.0.1:+lwthreads", when='+cbtf') - # We don't need this for building, but to complete the runtime module file - # It is required in cbtf, so it will be available and not cause another rebuild + + # We don't need this for building, but to complete the + # runtime module file + # It is required in cbtf, so it will be available and not + # cause another rebuild + depends_on("xerces-c@3.1.1:", when='+cbtf') def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions): - # Sets build type parameters into cmakeOptions the options that will enable the cbtf-krell built type settings + # Sets build type parameters into cmakeOptions the + # options that will enable the cbtf-krell built type settings compile_flags="-O2 -g" BuildTypeOptions = [] - # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it to be, not the stdcmakeargs + # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it + # to be, not the stdcmakeargs for word in cmakeOptions[:]: if word.startswith('-DCMAKE_BUILD_TYPE'): cmakeOptions.remove(word) @@ -138,7 +164,8 @@ def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions): cmakeOptions.extend(BuildTypeOptions) def set_mpi_cmakeOptions(self, spec, cmakeOptions): - # Appends to cmakeOptions the options that will enable the appropriate MPI implementations + # Appends to cmakeOptions the options that will enable + # the appropriate MPI implementations MPIOptions = [] @@ -178,7 +205,8 @@ def set_mpi_cmakeOptions(self, spec, cmakeOptions): def setup_environment(self, spack_env, run_env): """Set up the compile and runtime environments for a package.""" - # Common settings to both offline and cbtf versions of OpenSpeedShop + # Common settings to both offline and cbtf versions + # of OpenSpeedShop run_env.prepend_path('PATH', self.prefix.bin) # sqlite3 path @@ -188,14 +216,19 @@ def setup_environment(self, spack_env, run_env): run_env.prepend_path('PATH', self.spec['python'].prefix.bin) # Find Dyninst library path - dyninst_libdir = find_libraries(['libdyninstAPI_RT'], root=self.spec['dyninst'].prefix, shared=True, recurse=True) + dyninst_libdir = find_libraries(['libdyninstAPI_RT'], + root=self.spec['dyninst'].prefix, + shared=True, recurse=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'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(oss_libdir.joined())) + oss_libdir = find_libraries(['libopenss-framework'], + root=self.spec['openspeedshop'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(oss_libdir.joined())) # This is always python lib everywhere we have seen to date. run_env.prepend_path('LD_LIBRARY_PATH', self.spec['python'].prefix.lib) @@ -204,70 +237,114 @@ def setup_environment(self, spack_env, run_env): run_env.prepend_path('LD_LIBRARY_PATH', self.spec['boost'].prefix.lib) # Find sqlite library path - sqlite_libdir = find_libraries(['libsqlite3'], root=self.spec['sqlite'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(sqlite_libdir.joined())) + sqlite_libdir = find_libraries(['libsqlite3'], + root=self.spec['sqlite'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(sqlite_libdir.joined())) # see above for dyninst_libdir detection code - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(dyninst_libdir.joined())) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(dyninst_libdir.joined())) # Find libelf library path - libelf_libdir = find_libraries(['libelf'], root=self.spec['libelf'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(libelf_libdir.joined())) + libelf_libdir = find_libraries(['libelf'], + root=self.spec['libelf'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(libelf_libdir.joined())) # Find libdwarf library path - libdwarf_libdir = find_libraries(['libdwarf'], root=self.spec['libdwarf'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(libdwarf_libdir.joined())) + libdwarf_libdir = find_libraries(['libdwarf'], + root=self.spec['libdwarf'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(libdwarf_libdir.joined())) - # Settings specific to the version, checking here for the cbtf instrumentor + # Settings specific to the version, checking here + # for the cbtf instrumentor if '+cbtf' in self.spec: run_env.set('XPLAT_RSH', 'ssh') - run_env.set('MRNET_COMM_PATH', join_path(self.spec['cbtf-krell'].prefix + '/sbin/cbtf_mrnet_commnode')) - run_env.set('CBTF_MRNET_BACKEND_PATH', join_path(self.spec['cbtf-krell'].prefix + '/sbin/cbtf_libcbtf_mrnet_backend')) + run_env.set('MRNET_COMM_PATH', + join_path(self.spec['cbtf-krell'].prefix \ + + '/sbin/cbtf_mrnet_commnode')) + + run_env.set('CBTF_MRNET_BACKEND_PATH', + join_path(self.spec['cbtf-krell'].prefix \ + + '/sbin/cbtf_libcbtf_mrnet_backend')) + 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) # Find cbtf-krell component library path - cbtfkrell_libdir = find_libraries(['libcbtf-core'], root=self.spec['cbtf-krell'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(cbtfkrell_libdir.joined())) + cbtfkrell_libdir = find_libraries(['libcbtf-core'], + root=self.spec['cbtf-krell'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(cbtfkrell_libdir.joined())) # Find cbtf component library path - cbtf_libdir = find_libraries(['libcbtf'], root=self.spec['cbtf'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(cbtf_libdir.joined())) + cbtf_libdir = find_libraries(['libcbtf'], + root=self.spec['cbtf'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(cbtf_libdir.joined())) # see above for dyninst_libdir detection code - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(dyninst_libdir.joined())) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(dyninst_libdir.joined())) # Find xercesc component library path - xercesc_libdir = find_libraries(['libxerces-c'], root=self.spec['xerces-c'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(xercesc_libdir.joined())) + xercesc_libdir = find_libraries(['libxerces-c'], + root=self.spec['xerces-c'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(xercesc_libdir.joined())) # Find mrnet component library path - mrnet_libdir = find_libraries(['libmrnet'], root=self.spec['mrnet'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(mrnet_libdir.joined())) + mrnet_libdir = find_libraries(['libmrnet'], + root=self.spec['mrnet'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(mrnet_libdir.joined())) elif '+offline' in self.spec: - # Had to use this form of syntax self.prefix.lib and self.prefix.lib64 returned None all the time + # Had to use this form of syntax self.prefix.lib and + # self.prefix.lib64 returned None all the time run_env.set('OPENSS_RAWDATA_DIR', '.') - run_env.set('OPENSS_PLUGIN_PATH', join_path(oss_libdir + '/openspeedshop')) + 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) # Find papi library path - papi_libdir = find_libraries(['libpapi'], root=self.spec['papi'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(papi_libdir.joined())) + papi_libdir = find_libraries(['libpapi'], + root=self.spec['papi'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(papi_libdir.joined())) # Find binutils library path - binutils_libdir = find_libraries(['libbfd'], root=self.spec['binutils'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(binutils_libdir.joined())) + binutils_libdir = find_libraries(['libbfd'], + root=self.spec['binutils'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(binutils_libdir.joined())) # Find libmonitor library path - libmonitor_libdir = find_libraries(['libmonitor'], root=self.spec['monitor'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(libmonitor_libdir.joined())) + libmonitor_libdir = find_libraries(['libmonitor'], + root=self.spec['monitor'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(libmonitor_libdir.joined())) # Find libunwind library path - libunwind_libdir = find_libraries(['libunwind'], root=self.spec['libunwind'].prefix, shared=True, recurse=True) - run_env.prepend_path('LD_LIBRARY_PATH', os.path.dirname(libunwind_libdir.joined())) + libunwind_libdir = find_libraries(['libunwind'], + root=self.spec['libunwind'].prefix, + shared=True, recurse=True) + run_env.prepend_path('LD_LIBRARY_PATH', + os.path.dirname(libunwind_libdir.joined())) if '+mpich' in self.spec: run_env.set('OPENSS_MPI_IMPLEMENTATION', 'mpich') @@ -286,12 +363,13 @@ def install(self, spec, prefix): with working_dir('build_runtime', create=True): cmakeOptions = [] - cmakeOptions.extend(['-DCMAKE_INSTALL_PREFIX=%s' % prefix, - '-DINSTRUMENTOR=%s' % instrumentor_setting, - '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix, - '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix, - '-DPAPI_DIR=%s' % spec['papi'].prefix - ]) + cmakeOptions.extend( + ['-DCMAKE_INSTALL_PREFIX=%s' % prefix, + '-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, cmakeOptions) @@ -312,27 +390,31 @@ def install(self, spec, prefix): python_vers=format(spec['python'].version.up_to(2)) cmakeOptions = [] - cmakeOptions.extend(['-DCMAKE_INSTALL_PREFIX=%s' % prefix, - '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, - '-DINSTRUMENTOR=%s' % instrumentor_setting, - '-DBINUTILS_DIR=%s' % spec['binutils'].prefix, - '-DLIBELF_DIR=%s' % spec['libelf'].prefix, - '-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, - '-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, - '-DPYTHON_EXECUTABLE=%s' % join_path(spec['python'].prefix + '/bin/python'), - '-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) + '/python' + python_vers, - '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) + '/libpython' + python_vers + '.so', - '-DBoost_NO_SYSTEM_PATHS=TRUE', - '-DBoost_NO_BOOST_CMAKE=TRUE', - '-DBOOST_ROOT=%s' % spec['boost'].prefix, - '-DBoost_DIR=%s' % spec['boost'].prefix, - '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib, - '-DDYNINST_DIR=%s' % spec['dyninst'].prefix - ]) + cmakeOptions.extend( + ['-DCMAKE_INSTALL_PREFIX=%s' % prefix, + '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, + '-DINSTRUMENTOR=%s' % instrumentor_setting, + '-DBINUTILS_DIR=%s' % spec['binutils'].prefix, + '-DLIBELF_DIR=%s' % spec['libelf'].prefix, + '-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, + '-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, + '-DPYTHON_EXECUTABLE=%s' % join_path(spec['python'].prefix \ + + '/bin/python'), + '-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ + + '/python' + python_vers, + '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ + + '/libpython' + python_vers + '.so', + '-DBoost_NO_SYSTEM_PATHS=TRUE', + '-DBoost_NO_BOOST_CMAKE=TRUE', + '-DBOOST_ROOT=%s' % spec['boost'].prefix, + '-DBoost_DIR=%s' % spec['boost'].prefix, + '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib, + '-DDYNINST_DIR=%s' % spec['dyninst'].prefix + ]) # Add any MPI implementations coming from variant settings self.set_mpi_cmakeOptions(spec, cmakeOptions) @@ -350,42 +432,9 @@ def install(self, spec, prefix): elif '+cbtf' in spec: instrumentor_setting = "cbtf" resolve_symbols = "symtabapi" - cmake_prefix_path = join_path(spec['cbtf'].prefix) + ':' + join_path(spec['cbtf-krell'].prefix) + ':' + join_path(spec['dyninst'].prefix) - #runtime_platform_cray = "cray" - #if '+cray' in spec: - # if '+runtime' in spec: - # #-DCBTF_KRELL_CN_RUNTIME_DIR=${CBTF_KRELL_CN_INSTALL_DIR} \ - # with working_dir('build_cbtf_cray_runtime', create=True): - # python_vers='%d.%d' % spec['python'].version[:2] - # cmake('..', - # '-DCMAKE_INSTALL_PREFIX=%s' % prefix, - # '-DRUNTIME_PLATFORM=%s' % runtime_platform_cray, - # '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path, - # '-DRESOLVE_SYMBOLS=%s' % resolve_symbols, - # '-DINSTRUMENTOR=%s' % instrumentor_setting, - # '-DCBTF_DIR=%s' % spec['cbtf'].prefix, - # '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix, - # '-DCBTF_KRELL_CN_RUNTIME_DIR=%s' % spec['cbtf-krell'].prefix, - # '-DBINUTILS_DIR=%s' % spec['binutils'].prefix, - # '-DLIBELF_DIR=%s' % spec['libelf'].prefix, - # '-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix, - # '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix, - # '-DPAPI_DIR=%s' % spec['papi'].prefix, - # '-DDYNINST_DIR=%s' % spec['dyninst'].prefix, - # '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix, - # '-DMRNET_DIR=%s' % spec['mrnet'].prefix, - # '-DBoost_NO_SYSTEM_PATHS=TRUE', - # '-DBOOST_ROOT=%s' % spec['boost'].prefix, - # *std_cmake_args) - - # make("clean") - # make() - # make("install") - - - #elif '+mic' in spec: - # comment out else and shift over the default case below until arch detection is in - #else: + cmake_prefix_path = join_path(spec['cbtf'].prefix) \ + + ':' + join_path(spec['cbtf-krell'].prefix) \ + + ':' + join_path(spec['dyninst'].prefix) if '+runtime' in spec: with working_dir('build_cbtf_runtime', create=True): @@ -400,8 +449,10 @@ def install(self, spec, 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' + python_vers, - '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) + '/libpython' + python_vers + '.so', + '-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ + + '/python' + python_vers, + '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ + + '/libpython' + python_vers + '.so', '-DBoost_NO_SYSTEM_PATHS=TRUE', '-DBoost_NO_BOOST_CMAKE=TRUE', '-DBOOST_ROOT=%s' % spec['boost'].prefix, @@ -413,10 +464,6 @@ def install(self, spec, prefix): '-DMRNET_DIR=%s' % spec['mrnet'].prefix ]) - # Add any MPI implementations coming from variant settings - #self.set_mpi_cmakeOptions(spec, cmakeOptions) - #cmakeOptions.extend(std_cmake_args) - # Adjust the build options to the favored ones for this build self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) @@ -441,8 +488,10 @@ def install(self, spec, 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' + python_vers, - '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) + '/libpython' + python_vers + '.so', + '-DPYTHON_INCLUDE_DIR=%s' % join_path(spec['python'].prefix.include) \ + + '/python' + python_vers, + '-DPYTHON_LIBRARY=%s' % join_path(spec['python'].prefix.lib) \ + + '/libpython' + python_vers + '.so', '-DBoost_NO_SYSTEM_PATHS=TRUE', '-DBoost_NO_BOOST_CMAKE=TRUE', '-DBOOST_ROOT=%s' % spec['boost'].prefix, @@ -454,9 +503,6 @@ def install(self, spec, prefix): '-DMRNET_DIR=%s' % spec['mrnet'].prefix ]) - # Add any MPI implementations coming from variant settings - #self.set_mpi_cmakeOptions(spec, cmakeOptions) - #cmakeOptions.extend(std_cmake_args) # Adjust the build options to the favored ones for this build self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions) @@ -467,67 +513,3 @@ def install(self, spec, prefix): make() make("install") - #if '+frontend' in spec: - # with working_dir('build_frontend', create=True): - # tbd - - - - #if '+cbtf' in spec: - # if cray build type detected: - # if '+runtime' in spec: - # with working_dir('build_cray_cbtf_compute', create=True): - # tbd - # else: - # with working_dir('build_cray_cbtf_frontend', create=True): - # tbd - # with working_dir('build_cray_osscbtf_frontend', create=True): - # tbd - # fi - # elif '+intelmic' in spec: - # if '+runtime' in spec: - # with working_dir('build_intelmic_cbtf_compute', create=True): - # tbd - # else: - # with working_dir('build_intelmic_cbtf_frontend', create=True): - # tbd - # with working_dir('build_intelmic_osscbtf_frontend', create=True): - # fi - # else - # with working_dir('build_cluster_cbtf', create=True): - # tbd - # with working_dir('build_cluster osscbtf', create=True): - # tbd - # fi - #elif '+offline' in spec: - # if cray build type detected: - # if '+runtime' in spec: - # with working_dir('build_cray_ossoff_compute', create=True): - # tbd - # else: - # with working_dir('build_cray_ossoff_frontend', create=True): - # tbd - # fi - # elif '+intelmic' in spec: - # if '+runtime' in spec: - # with working_dir('build_intelmic_ossoff_compute', create=True): - # tbd - # else: - # with working_dir('build_intelmic_ossoff_frontend', create=True): - # tbd - # fi - # elif bgq build type detected: - # if '+runtime' in spec: - # with working_dir('build_bgq_ossoff_compute', create=True): - # tbd - # else: - # with working_dir('build_bgq_ossoff_frontend', create=True): - # tbd - # fi - # else - # with working_dir('build_cluster ossoff', create=True): - # tbd - # fi - #fi - -