Fix build of krell tools to use spack with minimal impact on rest of spack packages.
This commit is contained in:
parent
0fc83ba999
commit
8df4fd9e94
7 changed files with 51 additions and 65 deletions
|
@ -15,12 +15,6 @@ class Binutils(Package):
|
|||
|
||||
variant('libiberty', default=False, description='Also install libiberty.')
|
||||
|
||||
variant('libiberty', default=False, description='Also install libiberty.')
|
||||
|
||||
variant('libiberty', default=False, description='Also install libiberty.')
|
||||
|
||||
variant('libiberty', default=False, description='Also install libiberty.')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure_args = [
|
||||
'--prefix=%s' % prefix,
|
||||
|
|
|
@ -58,7 +58,8 @@ def url_for_version(self, version):
|
|||
parts = [str(p) for p in Version(version)]
|
||||
dots = ".".join(parts)
|
||||
underscores = "_".join(parts)
|
||||
return "http://downloads.sourceforge.net/project/boost/boost/%s/boost_%s.tar.bz2" % (
|
||||
#return "http://downloads.sourceforge.net/project/boost/boost/%s/boost_%s.tar.bz2" % (
|
||||
return "http://downloads.sourceforge.net/project/boost/boost/%s.0/boost_%s_0.tar.bz2" % (
|
||||
dots, underscores)
|
||||
|
||||
def determine_toolset(self):
|
||||
|
|
|
@ -38,8 +38,8 @@ class CbtfKrell(Package):
|
|||
depends_on("binutils@2.24+krellpatch")
|
||||
|
||||
# collectionTool
|
||||
depends_on("boost@1.42:")
|
||||
depends_on("dyninst@8.2.1:+krelloptions")
|
||||
depends_on("boost@1.50")
|
||||
depends_on("dyninst@8.2.1")
|
||||
depends_on("mrnet@4.1.0:+krelloptions")
|
||||
depends_on("xerces-c@3.1.1:")
|
||||
depends_on("cbtf")
|
||||
|
@ -64,8 +64,8 @@ def install(self, spec, prefix):
|
|||
|
||||
# FIXME - hard code path until external package support is available
|
||||
# Need to change this path and/or add additional paths for MPI experiment support on different platforms
|
||||
openmpi_prefix_path = "/opt/openmpi-1.8.2"
|
||||
mvapich_prefix_path = "/usr/local/tools/mvapich-gnu"
|
||||
#openmpi_prefix_path = "/opt/openmpi-1.8.2"
|
||||
#mvapich_prefix_path = "/usr/local/tools/mvapich-gnu"
|
||||
|
||||
# Other possibilities, they will need a -DMVAPICH_DIR=, etc clause in the cmake command to be recognized
|
||||
# mvapich_prefix_path = "<mvapich install path>"
|
||||
|
@ -76,18 +76,22 @@ def install(self, spec, prefix):
|
|||
|
||||
# Add in paths for cuda if requested via the cuda variant
|
||||
# FIXME - hard code path until external package support is available
|
||||
if '+cuda' in spec:
|
||||
cuda_prefix_path = "/usr/local/cuda-6.0"
|
||||
cupti_prefix_path = "/usr/local/cuda-6.0/extras/CUPTI"
|
||||
else:
|
||||
cuda_prefix_path = ""
|
||||
cupti_prefix_path = ""
|
||||
#if '+cuda' in spec:
|
||||
# cuda_prefix_path = "/usr/local/cuda-6.0"
|
||||
# cupti_prefix_path = "/usr/local/cuda-6.0/extras/CUPTI"
|
||||
#else:
|
||||
# cuda_prefix_path = ""
|
||||
# cupti_prefix_path = ""
|
||||
|
||||
#'-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix,
|
||||
#'-DOPENMPI_DIR=%s' % spec['openmpi'].prefix,
|
||||
#'-DMPICH_DIR=%s' % spec['mpich'].prefix,
|
||||
#'-DCMAKE_LIBRARY_PATH=%s' % prefix.lib64,
|
||||
#'-DLIB_SUFFIX=64',
|
||||
#'-DMVAPICH2_DIR=%s' % spec['mvapich2'].prefix,
|
||||
#'-DOPENMPI_DIR=%s' % spec['openmpi'].prefix,
|
||||
#'-DMPICH_DIR=%s' % spec['mpich'].prefix,
|
||||
#'-DCMAKE_LIBRARY_PATH=%s' % prefix.lib64,
|
||||
#'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
#'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
#'-DLIB_SUFFIX=64',
|
||||
#'-DCUDA_DIR=%s' % cuda_prefix_path,
|
||||
#'-DCUPTI_DIR=%s' % cupti_prefix_path,
|
||||
|
||||
# Build cbtf-krell with cmake
|
||||
with working_dir('build_cbtf_krell', create=True):
|
||||
|
@ -104,10 +108,6 @@ def install(self, spec, prefix):
|
|||
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
|
||||
'-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
|
||||
'-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
|
||||
'-DCUDA_DIR=%s' % cuda_prefix_path,
|
||||
'-DCUPTI_DIR=%s' % cupti_prefix_path,
|
||||
'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
*std_cmake_args)
|
||||
|
||||
make("clean")
|
||||
|
|
|
@ -31,7 +31,7 @@ class CbtfLanl(Package):
|
|||
|
||||
|
||||
# Dependencies for cbtf-krell
|
||||
depends_on("boost@1.42:")
|
||||
depends_on("boost@1.50")
|
||||
depends_on("mrnet@4.1.0+krelloptions")
|
||||
depends_on("xerces-c@3.1.1:")
|
||||
depends_on("cbtf")
|
||||
|
|
|
@ -38,8 +38,6 @@ class Dyninst(Package):
|
|||
version('8.1.1', 'd1a04e995b7aa70960cd1d1fac8bd6ac',
|
||||
url="http://www.paradyn.org/release8.1/DyninstAPI-8.1.1.tgz")
|
||||
|
||||
variant('krelloptions', default=False, description="build dyninst includes into include/dyninst.")
|
||||
|
||||
depends_on("libelf")
|
||||
depends_on("libdwarf")
|
||||
depends_on("boost@1.42:")
|
||||
|
@ -50,28 +48,15 @@ def install(self, spec, prefix):
|
|||
libdwarf = spec['libdwarf'].prefix
|
||||
|
||||
with working_dir('spack-build', create=True):
|
||||
# cbtf-krell and openspeedshop expect to reference dyninst/include, so adding include specification to that end
|
||||
if '+krelloptions' in spec:
|
||||
cmake('..',
|
||||
'-DINSTALL_INCLUDE_DIR=%s' % join_path(self.prefix.include, 'dyninst'),
|
||||
'-DBoost_INCLUDE_DIR=%s' % spec['boost'].prefix.include,
|
||||
'-DBoost_LIBRARY_DIR=%s' % spec['boost'].prefix.lib,
|
||||
'-DBoost_NO_SYSTEM_PATHS=TRUE',
|
||||
'-DLIBELF_INCLUDE_DIR=%s' % join_path(libelf.include, 'libelf'),
|
||||
'-DLIBELF_LIBRARIES=%s' % join_path(libelf.lib, 'libelf.so'),
|
||||
'-DLIBDWARF_INCLUDE_DIR=%s' % libdwarf.include,
|
||||
'-DLIBDWARF_LIBRARIES=%s' % join_path(libdwarf.lib, 'libdwarf.so'),
|
||||
*std_cmake_args)
|
||||
else:
|
||||
cmake('..',
|
||||
'-DBoost_INCLUDE_DIR=%s' % spec['boost'].prefix.include,
|
||||
'-DBoost_LIBRARY_DIR=%s' % spec['boost'].prefix.lib,
|
||||
'-DBoost_NO_SYSTEM_PATHS=TRUE',
|
||||
'-DLIBELF_INCLUDE_DIR=%s' % join_path(libelf.include, 'libelf'),
|
||||
'-DLIBELF_LIBRARIES=%s' % join_path(libelf.lib, 'libelf.so'),
|
||||
'-DLIBDWARF_INCLUDE_DIR=%s' % libdwarf.include,
|
||||
'-DLIBDWARF_LIBRARIES=%s' % join_path(libdwarf.lib, 'libdwarf.so'),
|
||||
*std_cmake_args)
|
||||
cmake('..',
|
||||
'-DBoost_INCLUDE_DIR=%s' % spec['boost'].prefix.include,
|
||||
'-DBoost_LIBRARY_DIR=%s' % spec['boost'].prefix.lib,
|
||||
'-DBoost_NO_SYSTEM_PATHS=TRUE',
|
||||
'-DLIBELF_INCLUDE_DIR=%s' % join_path(libelf.include, 'libelf'),
|
||||
'-DLIBELF_LIBRARIES=%s' % join_path(libelf.lib, 'libelf.so'),
|
||||
'-DLIBDWARF_INCLUDE_DIR=%s' % libdwarf.include,
|
||||
'-DLIBDWARF_LIBRARIES=%s' % join_path(libdwarf.lib, 'libdwarf.so'),
|
||||
*std_cmake_args)
|
||||
|
||||
make()
|
||||
make("install")
|
||||
|
|
|
@ -28,9 +28,14 @@ class Openspeedshop(Package):
|
|||
as open source code primarily under LGPL.
|
||||
"""
|
||||
|
||||
|
||||
homepage = "http://www.openspeedshop.org"
|
||||
url = "http://sourceforge.net/projects/openss/files/openss/openspeedshop-2.1/openspeedshop-2.1.tar.gz/download"
|
||||
version('2.1', 'bdaa57c1a0db9d0c3e0303fd8496c507')
|
||||
url = "http://sourceforge.net/projects/openss/files/openss/openspeedshop-2.2/openspeedshop-2.2.tar.gz/download"
|
||||
version('2.2', '16cb051179c2038de4e8a845edf1d573')
|
||||
|
||||
#homepage = "http://www.openspeedshop.org"
|
||||
#url = "http://sourceforge.net/projects/openss/files/openss/openspeedshop-2.1/openspeedshop-2.1.tar.gz/download"
|
||||
#version('2.1', 'bdaa57c1a0db9d0c3e0303fd8496c507')
|
||||
|
||||
# optional mirror template
|
||||
#url = "file:/g/g24/jeg/openspeedshop-2.1.tar.gz"
|
||||
|
@ -40,7 +45,7 @@ class Openspeedshop(Package):
|
|||
|
||||
parallel = False
|
||||
|
||||
variant('offline', default=False, description="build with offline instrumentor enabled.")
|
||||
variant('offline', default=True, description="build with offline instrumentor enabled.")
|
||||
variant('cbtf', default=False, 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.")
|
||||
|
@ -58,8 +63,8 @@ class Openspeedshop(Package):
|
|||
depends_on("libelf")
|
||||
depends_on("libdwarf")
|
||||
depends_on("sqlite")
|
||||
depends_on("boost@1.42:")
|
||||
depends_on("dyninst@8.2.1:+krelloptions")
|
||||
depends_on("boost@1.50")
|
||||
depends_on("dyninst@8.2.1")
|
||||
depends_on("python")
|
||||
depends_on("qt@3.3.8b+krellpatch")
|
||||
|
||||
|
@ -79,15 +84,17 @@ class Openspeedshop(Package):
|
|||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
openmpi_prefix_path = "/opt/openmpi-1.8.2"
|
||||
mvapich_prefix_path = "/usr/local/tools/mvapich-gnu"
|
||||
#openmpi_prefix_path = "/opt/openmpi-1.8.2"
|
||||
#mvapich_prefix_path = "/usr/local/tools/mvapich-gnu"
|
||||
#'-DOPENMPI_DIR=%s' % spec['openmpi'].prefix,
|
||||
#'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
#'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
|
||||
# FIXME: How do we make this dynamic in spack? That is, can we specify the paths to cuda dynamically?
|
||||
# WAITING for external package support.
|
||||
if '+cuda' in spec:
|
||||
cuda_prefix_path = "/usr/local/cuda-6.0"
|
||||
cupti_prefix_path = "/usr/local/cuda-6.0/extras/CUPTI"
|
||||
#if '+cuda' in spec:
|
||||
# cuda_prefix_path = "/usr/local/cuda-6.0"
|
||||
# cupti_prefix_path = "/usr/local/cuda-6.0/extras/CUPTI"
|
||||
|
||||
if '+offline' in spec:
|
||||
instrumentor_setting = "offline"
|
||||
|
@ -100,8 +107,6 @@ def install(self, spec, prefix):
|
|||
'-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
|
||||
'-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
|
||||
'-DPAPI_DIR=%s' % spec['papi'].prefix,
|
||||
'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
*std_cmake_args)
|
||||
make("clean")
|
||||
make()
|
||||
|
@ -110,6 +115,8 @@ def install(self, spec, prefix):
|
|||
cmake_prefix_path = join_path(spec['dyninst'].prefix)
|
||||
with working_dir('build', create=True):
|
||||
#python_vers=join_path(spec['python'].version[:2])
|
||||
#'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
#'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
python_vers='%d.%d' % spec['python'].version[:2]
|
||||
cmake('..',
|
||||
'-DCMAKE_INSTALL_PREFIX=%s' % prefix,
|
||||
|
@ -130,8 +137,6 @@ def install(self, spec, prefix):
|
|||
'-DBoost_NO_SYSTEM_PATHS=TRUE',
|
||||
'-DBOOST_ROOT=%s' % spec['boost'].prefix,
|
||||
'-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
|
||||
'-DOPENMPI_DIR=%s' % openmpi_prefix_path,
|
||||
'-DMVAPICH_DIR=%s' % mvapich_prefix_path,
|
||||
*std_cmake_args)
|
||||
make("clean")
|
||||
make()
|
||||
|
|
|
@ -12,6 +12,7 @@ class Papi(Package):
|
|||
across the hardware and software stack."""
|
||||
homepage = "http://icl.cs.utk.edu/papi/index.html"
|
||||
|
||||
url = "http://icl.cs.utk.edu/projects/papi/downloads/papi-5.4.1.tar.gz"
|
||||
version('5.4.1', '9134a99219c79767a11463a76b0b01a2')
|
||||
version('5.3.0', '367961dd0ab426e5ae367c2713924ffb')
|
||||
|
||||
|
|
Loading…
Reference in a new issue