summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/packages/SAMRAI/package.py3
-rw-r--r--var/spack/packages/apex/package.py7
-rw-r--r--var/spack/packages/cleverleaf/package.py21
-rw-r--r--var/spack/packages/dbus/package.py3
-rw-r--r--var/spack/packages/hypre/package.py4
-rw-r--r--var/spack/packages/libxml2/package.py13
-rw-r--r--var/spack/packages/mvapich2/package.py224
-rw-r--r--var/spack/packages/ompt-openmp/package.py4
-rw-r--r--var/spack/packages/papi/package.py12
-rw-r--r--var/spack/packages/paraview/package.py16
-rw-r--r--var/spack/packages/py-matplotlib/package.py13
-rw-r--r--var/spack/packages/py-pyside/package.py2
-rw-r--r--var/spack/packages/py-twisted/package.py16
-rw-r--r--var/spack/packages/python/package.py1
14 files changed, 218 insertions, 121 deletions
diff --git a/var/spack/packages/SAMRAI/package.py b/var/spack/packages/SAMRAI/package.py
index eef041f0d5..5ee90cf400 100644
--- a/var/spack/packages/SAMRAI/package.py
+++ b/var/spack/packages/SAMRAI/package.py
@@ -12,6 +12,7 @@ class Samrai(Package):
list_url = homepage
version('3.9.1', '232d04d0c995f5abf20d94350befd0b2')
+ version('3.8.0', 'c18fcffa706346bfa5828b36787ce5fe')
version('3.7.3', '12d574eacadf8c9a70f1bb4cd1a69df6')
version('3.7.2', 'f6a716f171c9fdbf3cb12f71fa6e2737')
version('3.6.3-beta', 'ef0510bf2893042daedaca434e5ec6ce')
@@ -37,8 +38,6 @@ class Samrai(Package):
configure(
"--prefix=%s" % prefix,
- "--with-CXX=%s" % spec[mpi].prefix.bin + "/mpic++",
- "--with-CC=%s" % spec[mpi].prefix.bin + "/mpicc",
"--with-hdf5=%s" % spec['hdf5'].prefix,
"--with-boost=%s" % spec['boost'].prefix,
"--with-zlib=%s" % spec['zlib'].prefix,
diff --git a/var/spack/packages/apex/package.py b/var/spack/packages/apex/package.py
index 6404d5208a..8769d97056 100644
--- a/var/spack/packages/apex/package.py
+++ b/var/spack/packages/apex/package.py
@@ -3,12 +3,9 @@ from spack.util.environment import *
class Apex(Package):
homepage = "http://github.com/khuck/xpress-apex"
- #url = "http://github.com/khuck/xpress-apex/archive/v0.1-release-candidate.tar.gz"
- url = "http://github.com/khuck/xpress-apex"
+ url = "http://github.com/khuck/xpress-apex/archive/v0.1.tar.gz"
- #version('0.1', '6e039c224387348296739f6bf360d081')
- #version('master', branch='master', git='https://github.com/khuck/xpress-apex.git')
- version('2015-10-21', git='https://github.com/khuck/xpress-apex.git', commit='d2e66ddde689120472fc57fc546d8cd80aab745c')
+ version('0.1', '8b95f0c0313da1575960d3ad69f18e75')
depends_on("binutils+libiberty")
depends_on("boost@1.54:")
diff --git a/var/spack/packages/cleverleaf/package.py b/var/spack/packages/cleverleaf/package.py
new file mode 100644
index 0000000000..ddbe57f019
--- /dev/null
+++ b/var/spack/packages/cleverleaf/package.py
@@ -0,0 +1,21 @@
+from spack import *
+
+class Cleverleaf(Package):
+ """
+ CleverLeaf is a hydrodynamics mini-app that extends CloverLeaf with Adaptive
+ Mesh Refinement using the SAMRAI toolkit from Lawrence Livermore National
+ Laboratory. The primary goal of CleverLeaf is to evaluate the application of
+ AMR to the Lagrangian-Eulerian hydrodynamics scheme used by CloverLeaf.
+ """
+
+ homepage = "http://uk-mac.github.io/CleverLeaf/"
+ url = "https://github.com/UK-MAC/CleverLeaf/tarball/master"
+
+ version('develop', git='https://github.com/UK-MAC/CleverLeaf_ref.git', branch='develop')
+
+ depends_on("SAMRAI@3.8.0")
+
+ def install(self, spec, prefix):
+ cmake(*std_cmake_args)
+ make()
+ make("install")
diff --git a/var/spack/packages/dbus/package.py b/var/spack/packages/dbus/package.py
index f7c302d611..294b0de54e 100644
--- a/var/spack/packages/dbus/package.py
+++ b/var/spack/packages/dbus/package.py
@@ -22,7 +22,8 @@ class Dbus(Package):
def install(self, spec, prefix):
configure(
"--prefix=%s" % prefix,
- "--disable-systemd")
+ "--disable-systemd",
+ "--disable-launchd")
make()
make("install")
diff --git a/var/spack/packages/hypre/package.py b/var/spack/packages/hypre/package.py
index 198b3f00dc..0f7f14dd89 100644
--- a/var/spack/packages/hypre/package.py
+++ b/var/spack/packages/hypre/package.py
@@ -5,8 +5,8 @@ class Hypre(Package):
features parallel multigrid methods for both structured and
unstructured grid problems."""
- homepage = "https://computation.llnl.gov/project/linear_solvers/software.php"
- url = "https://computation.llnl.gov/project/linear_solvers/download/hypre-2.10.0b.tar.gz"
+ homepage = "http://computation.llnl.gov/project/linear_solvers/software.php"
+ url = "http://computation.llnl.gov/project/linear_solvers/download/hypre-2.10.0b.tar.gz"
version('2.10.0b', '768be38793a35bb5d055905b271f5b8e')
diff --git a/var/spack/packages/libxml2/package.py b/var/spack/packages/libxml2/package.py
index df311bfaba..5d84fad22d 100644
--- a/var/spack/packages/libxml2/package.py
+++ b/var/spack/packages/libxml2/package.py
@@ -9,13 +9,20 @@ class Libxml2(Package):
version('2.9.2', '9e6a9aca9d155737868b3dc5fd82f788')
- extends('python')
+ variant('python', default=False, description='Enable Python support')
+
+ extends('python', when='+python')
depends_on('zlib')
depends_on('xz')
def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--with-python=%s" % spec['python'].prefix)
+ if '+python' in spec:
+ python_arg = "--with-python=%s" % spec['python'].prefix
+ else:
+ python_arg = "--without-python"
+
+ configure("--prefix=%s" % prefix,
+ python_arg)
make()
make("install")
diff --git a/var/spack/packages/mvapich2/package.py b/var/spack/packages/mvapich2/package.py
index ca0b1287c1..dc2b2cb23f 100644
--- a/var/spack/packages/mvapich2/package.py
+++ b/var/spack/packages/mvapich2/package.py
@@ -1,104 +1,156 @@
-import os
from spack import *
+
class Mvapich2(Package):
- """mvapich2 is an MPI implmenetation for infiniband networks."""
+ """MVAPICH2 is an MPI implementation for Infiniband networks."""
homepage = "http://mvapich.cse.ohio-state.edu/"
- version('1.9', '5dc58ed08fd3142c260b70fe297e127c',
- url="http://mvapich.cse.ohio-state.edu/download/mvapich2/mv2/mvapich2-1.9.tgz")
- patch('ad_lustre_rwcontig_open_source.patch', when='@1.9')
+ version('2.2a', 'b8ceb4fc5f5a97add9b3ff1b9cbe39d2',
+ url='http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.2a.tar.gz')
version('2.0', '9fbb68a4111a8b6338e476dc657388b4',
url='http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.0.tar.gz')
- provides('mpi@:2.2', when='@1.9') # MVAPICH2-1.9 supports MPI 2.2
- provides('mpi@:3.0', when='@2.0') # MVAPICH2-2.0 supports MPI 3.0
-
-
- def install(self, spec, prefix):
- # we'll set different configure flags depending on our environment
- configure_args = []
-
- # TODO: The MPICH*_FLAGS have a different name for 1.9
+ version('1.9', '5dc58ed08fd3142c260b70fe297e127c',
+ url="http://mvapich.cse.ohio-state.edu/download/mvapich2/mv2/mvapich2-1.9.tgz")
+ patch('ad_lustre_rwcontig_open_source.patch', when='@1.9')
+ provides('mpi@:2.2', when='@1.9') # MVAPICH2-1.9 supports MPI 2.2
+ provides('mpi@:3.0', when='@2.0:') # MVAPICH2-2.0 supports MPI 3.0
+
+ variant('debug', default=False, description='Enables debug information and error messages at run-time')
+
+ ##########
+ # TODO : Process managers should be grouped into the same variant, as soon as variant capabilities will be extended
+ # See https://groups.google.com/forum/#!topic/spack/F8-f8B4_0so
+ SLURM = 'slurm'
+ HYDRA = 'hydra'
+ GFORKER = 'gforker'
+ REMSHELL = 'remshell'
+ SLURM_INCOMPATIBLE_PMS = (HYDRA, GFORKER, REMSHELL)
+ variant(SLURM, default=False, description='Sets slurm as the only process manager')
+ variant(HYDRA, default=False, description='Sets hydra as one of the process managers')
+ variant(GFORKER, default=False, description='Sets gforker as one of the process managers')
+ variant(REMSHELL, default=False, description='Sets remshell as one of the process managers')
+ ##########
+
+ ##########
+ # TODO : Network types should be grouped into the same variant, as soon as variant capabilities will be extended
+ PSM = 'psm'
+ SOCK = 'sock'
+ NEMESISIBTCP = 'nemesisibtcp'
+ NEMESISIB = 'nemesisib'
+ NEMESIS = 'nemesis'
+ SUPPORTED_NETWORKS = (PSM, SOCK, NEMESIS, NEMESISIB, NEMESISIBTCP)
+ variant(PSM, default=False, description='Configures a build for QLogic PSM-CH3')
+ variant(SOCK, default=False, description='Configures a build for TCP/IP-CH3')
+ variant(NEMESISIBTCP, default=False, description='Configures a build for both OFA-IB-Nemesis and TCP/IP-Nemesis')
+ variant(NEMESISIB, default=False, description='Configures a build for OFA-IB-Nemesis')
+ variant(NEMESIS, default=False, description='Configures a build for TCP/IP-Nemesis')
+ ##########
+
+ # FIXME : CUDA support is missing
+
+ @staticmethod
+ def enabled(x):
+ """
+ Given a variant name returns the string that means the variant is enabled
+
+ :param x: variant name
+ :return:
+ """
+ return '+' + x
+
+ def set_build_type(self, spec, configure_args):
+ """
+ Appends to configure_args the flags that depends only on the build type (i.e. release or debug)
+
+ :param spec: spec
+ :param configure_args: list of current configure arguments
+ """
if '+debug' in spec:
- # set configure flags for debug build
- configure_args.append("--disable-fast")
- configure_args.append("--enable-g=dbg")
- configure_args.append("--enable-error-checking=runtime")
- configure_args.append("--enable-error-messages=all")
- configure_args.append("--enable-nmpi-as-mpi")
-
- if "%gnu" in spec:
- # set variables for GNU compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O0"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O0"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O0 -fno-second-underscore"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O0 -fno-second-underscore"
- elif "%intel" in spec:
- # set variables for Inel compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O0"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O0"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O0"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O0"
- elif "%pgi" in spec:
- # set variables for PGI compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O0 -fPIC"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O0 -fPIC"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O0 -fPIC"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O0 -fPIC"
-
+ build_type_options = [
+ "--disable-fast",
+ "--enable-error-checking=runtime",
+ "--enable-error-messages=all",
+ "--enable-g=dbg", "--enable-debuginfo" # Permits debugging with TotalView
+ ]
else:
- # set configure flags for normal optimizations
- configure_args.append("--enable-fast=all")
- configure_args.append("--enable-g=dbg")
- configure_args.append("--enable-nmpi-as-mpi")
-
- if "%gnu" in spec:
- # set variables for what compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O2"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O2"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O2 -fno-second-underscore"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O2 -fno-second-underscore"
- elif "%intel" in spec:
- # set variables for Inel compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O2"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O2"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O2"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O2"
- elif "%pgi" in spec:
- # set variables for PGI compilers
- os.environ['MPICHLIB_CFLAGS'] = "-g -O2 -fPIC"
- os.environ['MPICHLIB_CXXFLAGS'] = "-g -O2 -fPIC"
- os.environ['MPICHLIB_FFLAGS'] = "-g -O2 -fPIC"
- os.environ['MPICHLIB_F90FLAGS'] = "-g -O2 -fPIC"
-
- # determine network type by variant
- if "+psm" in spec:
- # throw this flag on QLogic systems to use PSM
- configure_args.append("--with-device=ch3:psm")
+ build_type_options = ["--enable-fast=all"]
+
+ configure_args.extend(build_type_options)
+
+ def set_process_manager(self, spec, configure_args):
+ """
+ Appends to configure_args the flags that will enable the appropriate process managers
+
+ :param spec: spec
+ :param configure_args: list of current configure arguments
+ """
+ # Check that slurm variant is not activated together with other pm variants
+ has_slurm_incompatible_variants = any(self.enabled(x) in spec for x in Mvapich2.SLURM_INCOMPATIBLE_PMS)
+ if self.enabled(Mvapich2.SLURM) in spec and has_slurm_incompatible_variants:
+ raise RuntimeError(" %s : 'slurm' cannot be activated together with other process managers" % self.name)
+
+ process_manager_options = []
+ if self.enabled(Mvapich2.SLURM) in spec:
+ process_manager_options = [
+ "--with-pm=slurm"
+ ]
+ elif has_slurm_incompatible_variants:
+ pms = []
+ # The variant name is equal to the process manager name in the configuration options
+ for x in Mvapich2.SLURM_INCOMPATIBLE_PMS:
+ if self.enabled(x) in spec:
+ pms.append(x)
+ process_manager_options = [
+ "--with-pm=%s" % ':'.join(pms)
+ ]
+ configure_args.extend(process_manager_options)
+
+ def set_network_type(self, spec, configure_args):
+ # Check that at most one variant has been activated
+ count = 0
+ for x in Mvapich2.SUPPORTED_NETWORKS:
+ if self.enabled(x) in spec:
+ count += 1
+ if count > 1:
+ raise RuntimeError('network variants are mutually exclusive (only one can be selected at a time)')
+
+ # From here on I can suppose that ony one variant has been selected
+ if self.enabled(Mvapich2.PSM) in spec:
+ network_options = ["--with-device=ch3:psm"]
+ elif self.enabled(Mvapich2.SOCK) in spec:
+ network_options = ["--with-device=ch3:sock"]
+ elif self.enabled(Mvapich2.NEMESISIBTCP) in spec:
+ network_options = ["--with-device=ch3:nemesis:ib,tcp"]
+ elif self.enabled(Mvapich2.NEMESISIB) in spec:
+ network_options = ["--with-device=ch3:nemesis:ib"]
+ elif self.enabled(Mvapich2.NEMESIS) in spec:
+ network_options = ["--with-device=ch3:nemesis"]
else:
- # throw this flag on IB systems
- configure_args.append("--with-device=ch3:mrail", "--with-rdma=gen2")
-
- # TODO: shared-memory build
-
- # TODO: CUDA
+ network_options = ["--with-device=ch3:mrail", "--with-rdma=gen2"]
- # TODO: other file systems like panasis
+ configure_args.extend(network_options)
- configure(
- "--prefix=" + prefix,
- "--enable-f77", "--enable-fc", "--enable-cxx",
- "--enable-shared", "--enable-sharedlibs=gcc",
- "--enable-debuginfo",
- "--with-pm=no", "--with-pmi=slurm",
- "--enable-romio", "--with-file-system=lustre+nfs+ufs",
- "--disable-mpe", "--without-mpe",
+ def install(self, spec, prefix):
+ # we'll set different configure flags depending on our environment
+ configure_args = [
+ "--prefix=%s" % prefix,
+ "--enable-shared",
+ "--enable-romio",
"--disable-silent-rules",
- *configure_args)
-
+ ]
+ if not self.compiler.f77 and not self.compiler.fc:
+ configure_args.append("--enable-fortran=none")
+
+ # Set the type of the build (debug, release)
+ self.set_build_type(spec, configure_args)
+ # Set the process manager
+ self.set_process_manager(spec, configure_args)
+ # Determine network type by variant
+ self.set_network_type(spec, configure_args)
+
+ configure(*configure_args)
make()
-
make("install")
diff --git a/var/spack/packages/ompt-openmp/package.py b/var/spack/packages/ompt-openmp/package.py
index 5d380ebd77..9c1b4b9570 100644
--- a/var/spack/packages/ompt-openmp/package.py
+++ b/var/spack/packages/ompt-openmp/package.py
@@ -3,9 +3,9 @@ from spack import *
class OmptOpenmp(Package):
"""LLVM/Clang OpenMP runtime with OMPT support. This is a fork of the OpenMPToolsInterface/LLVM-openmp fork of the official LLVM OpenMP mirror. This library provides a drop-in replacement of the OpenMP runtimes for GCC, Intel and LLVM/Clang."""
homepage = "https://github.com/OpenMPToolsInterface/LLVM-openmp"
- url = "http://github.com/khuck/LLVM-openmp/archive/v0.1-spack.tar.gz"
+ url = "http://github.com/khuck/LLVM-openmp/archive/v0.1.tar.gz"
- version('spack', '35227b2726e377faa433fc841226e036')
+ version('0.1', '3375b5ce67a48cae107371fcd811f639')
# depends_on("foo")
diff --git a/var/spack/packages/papi/package.py b/var/spack/packages/papi/package.py
index 596f7114d6..097b8c41ec 100644
--- a/var/spack/packages/papi/package.py
+++ b/var/spack/packages/papi/package.py
@@ -13,6 +13,7 @@ class Papi(Package):
homepage = "http://icl.cs.utk.edu/papi/index.html"
url = "http://icl.cs.utk.edu/projects/papi/downloads/papi-5.3.0.tar.gz"
+ version('5.4.1', '9134a99219c79767a11463a76b0b01a2')
version('5.3.0', '367961dd0ab426e5ae367c2713924ffb')
def install(self, spec, prefix):
@@ -20,13 +21,10 @@ class Papi(Package):
configure_args=["--prefix=%s" % prefix]
- # need to force consistency in the use of compilers
- if spec.satisfies('%gcc'):
- configure_args.append('CC=gcc')
- configure_args.append('MPICH_CC=gcc')
- if spec.satisfies('%intel'):
- configure_args.append('CC=icc')
- configure_args.append('MPICH_CC=icc')
+ # PAPI uses MPI if MPI is present; since we don't require an
+ # MPI package, we ensure that all attempts to use MPI fail, so
+ # that PAPI does not get confused
+ configure_args.append('MPICC=:')
configure(*configure_args)
diff --git a/var/spack/packages/paraview/package.py b/var/spack/packages/paraview/package.py
index a0ff812ca2..b0893237e9 100644
--- a/var/spack/packages/paraview/package.py
+++ b/var/spack/packages/paraview/package.py
@@ -7,8 +7,6 @@ class Paraview(Package):
version('4.4.0', 'fa1569857dd680ebb4d7ff89c2227378', url='http://www.paraview.org/files/v4.4/ParaView-v4.4.0-source.tar.gz')
variant('python', default=False, description='Enable Python support')
- variant('matplotlib', default=False, description='Enable Matplotlib support')
- variant('numpy', default=False, description='Enable NumPy support')
variant('tcl', default=False, description='Enable TCL support')
@@ -18,11 +16,11 @@ class Paraview(Package):
variant('qt', default=False, description='Enable Qt support')
depends_on('python', when='+python')
- depends_on('py-numpy', when='+python+numpy')
- depends_on('py-matplotlib', when='+python+matplotlib')
+ depends_on('py-numpy', when='+python')
+ depends_on('py-matplotlib', when='+python')
depends_on('tcl', when='+tcl')
depends_on('mpi', when='+mpi')
- depends_on('qt', when='+qt')
+ depends_on('qt@:4', when='+qt')
depends_on('bzip2')
depends_on('freetype')
@@ -30,7 +28,7 @@ class Paraview(Package):
depends_on('jpeg')
depends_on('libpng')
depends_on('libtiff')
- #depends_on('libxml2') # drags in python
+ depends_on('libxml2')
depends_on('netcdf')
#depends_on('protobuf') # version mismatches?
#depends_on('sqlite') # external version not supported
@@ -49,7 +47,11 @@ class Paraview(Package):
feature_args = std_cmake_args[:]
feature_args.append('-DPARAVIEW_BUILD_QT_GUI:BOOL=%s' % feature_to_bool('+qt'))
feature_args.append('-DPARAVIEW_ENABLE_PYTHON:BOOL=%s' % feature_to_bool('+python'))
+ if '+python' in spec:
+ feature_args.append('-DPYTHON_EXECUTABLE:FILEPATH=%s/bin/python' % spec['python'].prefix)
feature_args.append('-DPARAVIEW_USE_MPI:BOOL=%s' % feature_to_bool('+mpi'))
+ if '+mpi' in spec:
+ feature_args.append('-DMPIEXEC:FILEPATH=%s/bin/mpiexec' % spec['mpi'].prefix)
feature_args.append('-DVTK_ENABLE_TCL_WRAPPING:BOOL=%s' % feature_to_bool('+tcl'))
feature_args.append('-DVTK_OPENGL_HAS_OSMESA:BOOL=%s' % feature_to_bool('+osmesa'))
feature_args.append('-DVTK_USE_X:BOOL=%s' % nfeature_to_bool('+osmesa'))
@@ -63,7 +65,7 @@ class Paraview(Package):
'-DVTK_USER_SYSTEM_FREETYPE:BOOL=ON',
'-DVTK_USER_SYSTEM_HDF5:BOOL=ON',
'-DVTK_USER_SYSTEM_JPEG:BOOL=ON',
- #'-DVTK_USER_SYSTEM_LIBXML2:BOOL=ON',
+ '-DVTK_USER_SYSTEM_LIBXML2:BOOL=ON',
'-DVTK_USER_SYSTEM_NETCDF:BOOL=ON',
'-DVTK_USER_SYSTEM_TIFF:BOOL=ON',
'-DVTK_USER_SYSTEM_ZLIB:BOOL=ON',
diff --git a/var/spack/packages/py-matplotlib/package.py b/var/spack/packages/py-matplotlib/package.py
index e7ce3dfd24..a5fee39d42 100644
--- a/var/spack/packages/py-matplotlib/package.py
+++ b/var/spack/packages/py-matplotlib/package.py
@@ -9,10 +9,13 @@ class PyMatplotlib(Package):
version('1.4.2', '7d22efb6cce475025733c50487bd8898')
version('1.4.3', '86af2e3e3c61849ac7576a6f5ca44267')
+ variant('gui', default=False, description='Enable GUI')
+ variant('ipython', default=False, description='Enable ipython support')
+
extends('python', ignore=r'bin/nosetests.*$')
- depends_on('py-pyside')
- depends_on('py-ipython')
+ depends_on('py-pyside', when='+gui')
+ depends_on('py-ipython', when='+ipython')
depends_on('py-pyparsing')
depends_on('py-six')
depends_on('py-dateutil')
@@ -20,10 +23,10 @@ class PyMatplotlib(Package):
depends_on('py-nose')
depends_on('py-numpy')
- depends_on('qt')
+ depends_on('qt', when='+gui')
depends_on('bzip2')
- depends_on('tcl')
- depends_on('tk')
+ depends_on('tcl', when='+gui')
+ depends_on('tk', when='+gui')
depends_on('qhull')
def install(self, spec, prefix):
diff --git a/var/spack/packages/py-pyside/package.py b/var/spack/packages/py-pyside/package.py
index bb5da44d02..ffa433e18e 100644
--- a/var/spack/packages/py-pyside/package.py
+++ b/var/spack/packages/py-pyside/package.py
@@ -2,7 +2,7 @@ from spack import *
import os
class PyPyside(Package):
- """array processing for numbers, strings, records, and objects."""
+ """Python bindings for Qt."""
homepage = "https://pypi.python.org/pypi/pyside"
url = "https://pypi.python.org/packages/source/P/PySide/PySide-1.2.2.tar.gz"
diff --git a/var/spack/packages/py-twisted/package.py b/var/spack/packages/py-twisted/package.py
new file mode 100644
index 0000000000..2fdebb6cb9
--- /dev/null
+++ b/var/spack/packages/py-twisted/package.py
@@ -0,0 +1,16 @@
+from spack import *
+
+class PyTwisted(Package):
+ """An asynchronous networking framework written in Python"""
+ homepage = "https://twistedmatrix.com/"
+ url = "https://pypi.python.org/packages/source/T/Twisted/Twisted-15.3.0.tar.bz2"
+
+ version('15.4.0', '5337ffb6aeeff3790981a2cd56db9655')
+ version('15.3.0', 'b58e83da2f00b3352afad74d0c5c4599')
+
+ depends_on('py-setuptools')
+
+ extends('python')
+
+ def install(self, spec, prefix):
+ python('setup.py', 'install', '--prefix=%s' % prefix)
diff --git a/var/spack/packages/python/package.py b/var/spack/packages/python/package.py
index 000881a846..31fb8b3d5a 100644
--- a/var/spack/packages/python/package.py
+++ b/var/spack/packages/python/package.py
@@ -26,6 +26,7 @@ class Python(Package):
def install(self, spec, prefix):
# Need this to allow python build to find the Python installation.
env['PYTHONHOME'] = prefix
+ env['MACOSX_DEPLOYMENT_TARGET'] = '10.6'
# Rest of install is pretty standard.
configure("--prefix=%s" % prefix,