summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/mock_configs/site_spackconfig12
-rw-r--r--var/spack/mock_configs/site_spackconfig/compilers.yaml12
-rw-r--r--var/spack/mock_configs/user_spackconfig0
-rw-r--r--var/spack/mock_packages/a/package.py12
-rw-r--r--var/spack/mock_packages/b/package.py12
-rw-r--r--var/spack/mock_packages/c/package.py12
-rw-r--r--var/spack/mock_packages/e/package.py12
-rw-r--r--var/spack/mock_packages/mpich/package.py3
-rw-r--r--var/spack/mock_packages/mpileaks/package.py3
-rw-r--r--var/spack/mock_packages/optional-dep-test-2/package.py18
-rw-r--r--var/spack/mock_packages/optional-dep-test/package.py29
-rw-r--r--var/spack/packages/Mitos/package.py5
-rw-r--r--var/spack/packages/adept-utils/package.py3
-rw-r--r--var/spack/packages/arpack/package.py41
-rw-r--r--var/spack/packages/atlas/package.py60
-rw-r--r--var/spack/packages/binutils/package.py17
-rw-r--r--var/spack/packages/boxlib/package.py25
-rw-r--r--var/spack/packages/cblas/package.py32
-rw-r--r--var/spack/packages/cgm/package.py30
-rw-r--r--var/spack/packages/cppcheck/package.py15
-rw-r--r--var/spack/packages/dyninst/package.py8
-rw-r--r--var/spack/packages/gcc/package.py5
-rw-r--r--var/spack/packages/hypre/package.py32
-rw-r--r--var/spack/packages/lapack/package.py45
-rw-r--r--var/spack/packages/libuuid/package.py16
-rw-r--r--var/spack/packages/memaxes/package.py3
-rw-r--r--var/spack/packages/metis/package.py29
-rw-r--r--var/spack/packages/netlib-blas/package.py40
-rw-r--r--var/spack/packages/nettle/package.py2
-rw-r--r--var/spack/packages/parpack/package.py43
-rw-r--r--var/spack/packages/petsc/package.py40
-rw-r--r--var/spack/packages/py-cffi/package.py17
-rw-r--r--var/spack/packages/py-cython/package.py3
-rw-r--r--var/spack/packages/py-dateutil/package.py1
-rw-r--r--var/spack/packages/py-genders/package.py15
-rw-r--r--var/spack/packages/py-h5py/package.py3
-rw-r--r--var/spack/packages/py-ipython/package.py1
-rw-r--r--var/spack/packages/py-matplotlib/package.py3
-rw-r--r--var/spack/packages/py-nose/package.py1
-rw-r--r--var/spack/packages/py-numpy/package.py1
-rw-r--r--var/spack/packages/py-pandas/package.py21
-rw-r--r--var/spack/packages/py-pycparser/package.py15
-rw-r--r--var/spack/packages/py-pygments/package.py1
-rw-r--r--var/spack/packages/py-pylint/package.py1
-rw-r--r--var/spack/packages/py-pypar/package.py14
-rw-r--r--var/spack/packages/py-pytz/package.py1
-rw-r--r--var/spack/packages/py-rpy2/package.py1
-rw-r--r--var/spack/packages/py-scientificpython/package.py3
-rw-r--r--var/spack/packages/py-scikit-learn/package.py1
-rw-r--r--var/spack/packages/py-scipy/package.py1
-rw-r--r--var/spack/packages/py-setuptools/package.py1
-rw-r--r--var/spack/packages/py-sip/package.py1
-rw-r--r--var/spack/packages/py-virtualenv/package.py1
-rw-r--r--var/spack/packages/python/package.py5
-rw-r--r--var/spack/packages/qt/package.py8
-rw-r--r--var/spack/packages/stat/package.py4
-rw-r--r--var/spack/packages/task/package.py20
-rw-r--r--var/spack/packages/taskd/package.py20
-rw-r--r--var/spack/packages/uncrustify/package.py14
59 files changed, 747 insertions, 47 deletions
diff --git a/var/spack/mock_configs/site_spackconfig b/var/spack/mock_configs/site_spackconfig
deleted file mode 100644
index 1358720362..0000000000
--- a/var/spack/mock_configs/site_spackconfig
+++ /dev/null
@@ -1,12 +0,0 @@
-[compiler "gcc@4.5.0"]
- cc = /path/to/gcc
- cxx = /path/to/g++
- f77 = /path/to/gfortran
- fc = /path/to/gfortran
-
-[compiler "clang@3.3"]
- cc = /path/to/clang
- cxx = /path/to/clang++
- f77 = None
- fc = None
-
diff --git a/var/spack/mock_configs/site_spackconfig/compilers.yaml b/var/spack/mock_configs/site_spackconfig/compilers.yaml
new file mode 100644
index 0000000000..0a2dc893e2
--- /dev/null
+++ b/var/spack/mock_configs/site_spackconfig/compilers.yaml
@@ -0,0 +1,12 @@
+compilers:
+ all:
+ clang@3.3:
+ cc: /path/to/clang
+ cxx: /path/to/clang++
+ f77: None
+ fc: None
+ gcc@4.5.0:
+ cc: /path/to/gcc
+ cxx: /path/to/g++
+ f77: /path/to/gfortran
+ fc: /path/to/gfortran
diff --git a/var/spack/mock_configs/user_spackconfig b/var/spack/mock_configs/user_spackconfig
deleted file mode 100644
index e69de29bb2..0000000000
--- a/var/spack/mock_configs/user_spackconfig
+++ /dev/null
diff --git a/var/spack/mock_packages/a/package.py b/var/spack/mock_packages/a/package.py
new file mode 100644
index 0000000000..fa63c08df0
--- /dev/null
+++ b/var/spack/mock_packages/a/package.py
@@ -0,0 +1,12 @@
+from spack import *
+
+class A(Package):
+ """Simple package with no dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/mock_packages/b/package.py b/var/spack/mock_packages/b/package.py
new file mode 100644
index 0000000000..cb88aa2157
--- /dev/null
+++ b/var/spack/mock_packages/b/package.py
@@ -0,0 +1,12 @@
+from spack import *
+
+class B(Package):
+ """Simple package with no dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/b-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/mock_packages/c/package.py b/var/spack/mock_packages/c/package.py
new file mode 100644
index 0000000000..f51b913fa9
--- /dev/null
+++ b/var/spack/mock_packages/c/package.py
@@ -0,0 +1,12 @@
+from spack import *
+
+class C(Package):
+ """Simple package with no dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/c-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/mock_packages/e/package.py b/var/spack/mock_packages/e/package.py
new file mode 100644
index 0000000000..76c6b64c7f
--- /dev/null
+++ b/var/spack/mock_packages/e/package.py
@@ -0,0 +1,12 @@
+from spack import *
+
+class E(Package):
+ """Simple package with no dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/e-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/mock_packages/mpich/package.py b/var/spack/mock_packages/mpich/package.py
index 75a939a892..f77d3efc5d 100644
--- a/var/spack/mock_packages/mpich/package.py
+++ b/var/spack/mock_packages/mpich/package.py
@@ -30,6 +30,9 @@ class Mpich(Package):
list_url = "http://www.mpich.org/static/downloads/"
list_depth = 2
+ variant('debug', default=False,
+ description="Compile MPICH with debug flags.")
+
version('3.0.4', '9c5d5d4fe1e17dd12153f40bc5b6dbc0')
version('3.0.3', 'foobarbaz')
version('3.0.2', 'foobarbaz')
diff --git a/var/spack/mock_packages/mpileaks/package.py b/var/spack/mock_packages/mpileaks/package.py
index c6be37bc13..3989f1b452 100644
--- a/var/spack/mock_packages/mpileaks/package.py
+++ b/var/spack/mock_packages/mpileaks/package.py
@@ -33,6 +33,9 @@ class Mpileaks(Package):
version(2.2, 'foobarbaz')
version(2.3, 'foobarbaz')
+ variant('debug', default=False, description='Debug variant')
+ variant('opt', default=False, description='Optimized variant')
+
depends_on("mpi")
depends_on("callpath")
diff --git a/var/spack/mock_packages/optional-dep-test-2/package.py b/var/spack/mock_packages/optional-dep-test-2/package.py
new file mode 100644
index 0000000000..ef0587588e
--- /dev/null
+++ b/var/spack/mock_packages/optional-dep-test-2/package.py
@@ -0,0 +1,18 @@
+from spack import *
+
+class OptionalDepTest2(Package):
+ """Depends on the optional-dep-test package"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/optional-dep-test-2-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ variant('odt', default=False)
+ variant('mpi', default=False)
+
+ depends_on('optional-dep-test', when='+odt')
+ depends_on('optional-dep-test+mpi', when='+mpi')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/mock_packages/optional-dep-test/package.py b/var/spack/mock_packages/optional-dep-test/package.py
new file mode 100644
index 0000000000..bb57576ca9
--- /dev/null
+++ b/var/spack/mock_packages/optional-dep-test/package.py
@@ -0,0 +1,29 @@
+from spack import *
+
+class OptionalDepTest(Package):
+ """Description"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/optional_dep_test-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+ version('1.1', '0123456789abcdef0123456789abcdef')
+
+ variant('a', default=False)
+ variant('f', default=False)
+ variant('mpi', default=False)
+
+ depends_on('a', when='+a')
+ depends_on('b', when='@1.1')
+ depends_on('c', when='%intel')
+ depends_on('d', when='%intel@64.1')
+ depends_on('e', when='%clang@34:40')
+
+ depends_on('f', when='+f')
+ depends_on('g', when='^f')
+ depends_on('mpi', when='^g')
+
+ depends_on('mpi', when='+mpi')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/packages/Mitos/package.py b/var/spack/packages/Mitos/package.py
index 272360a55c..e3c9c7a5c3 100644
--- a/var/spack/packages/Mitos/package.py
+++ b/var/spack/packages/Mitos/package.py
@@ -7,9 +7,10 @@ class Mitos(Package):
homepage = "https://github.com/scalability-llnl/Mitos"
url = "https://github.com/scalability-llnl/Mitos"
- version('0.7', git='https://github.com/scalability-llnl/Mitos.git', tag='v0.7')
+ version('0.9', '8a8f05b35e04e9f37fa15436b98d5b25', git='https://github.com/scalability-llnl/Mitos.git', tag='v0.9')
- depends_on('dyninst')
+ depends_on('dyninst@8.2.1:')
+ depends_on('hwloc')
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
diff --git a/var/spack/packages/adept-utils/package.py b/var/spack/packages/adept-utils/package.py
index 2515322ec2..e4a2e1523f 100644
--- a/var/spack/packages/adept-utils/package.py
+++ b/var/spack/packages/adept-utils/package.py
@@ -30,7 +30,8 @@ class AdeptUtils(Package):
homepage = "https://github.com/scalability-llnl/adept-utils"
url = "https://github.com/scalability-llnl/adept-utils/archive/v1.0.tar.gz"
- version('1.0', '5c6cd9badce56c945ac8551e34804397')
+ version('1.0.1', '731a310717adcb004d9d195130efee7d')
+ version('1.0', '5c6cd9badce56c945ac8551e34804397')
depends_on("boost")
depends_on("mpi")
diff --git a/var/spack/packages/arpack/package.py b/var/spack/packages/arpack/package.py
new file mode 100644
index 0000000000..8c67c536f3
--- /dev/null
+++ b/var/spack/packages/arpack/package.py
@@ -0,0 +1,41 @@
+from spack import *
+import os
+import shutil
+
+class Arpack(Package):
+ """A collection of Fortran77 subroutines designed to solve large scale
+ eigenvalue problems.
+ """
+ homepage = "http://www.caam.rice.edu/software/ARPACK/"
+ url = "http://www.caam.rice.edu/software/ARPACK/SRC/arpack96.tar.gz"
+
+ version('96', 'fffaa970198b285676f4156cebc8626e')
+
+ depends_on('blas')
+ depends_on('lapack')
+
+ def patch(self):
+ # Filter the cray makefile to make a spack one.
+ shutil.move('ARMAKES/ARmake.CRAY', 'ARmake.inc')
+ makefile = FileFilter('ARmake.inc')
+
+ # Be sure to use Spack F77 wrapper
+ makefile.filter('^FC.*', 'FC = f77')
+ makefile.filter('^FFLAGS.*', 'FFLAGS = -O2 -g')
+
+ # Set up some variables.
+ makefile.filter('^PLAT.*', 'PLAT = ')
+ makefile.filter('^home.*', 'home = %s' % os.getcwd())
+ makefile.filter('^BLASdir.*', 'BLASdir = %s' % self.spec['blas'].prefix)
+ makefile.filter('^LAPACKdir.*', 'LAPACKdir = %s' % self.spec['lapack'].prefix)
+
+ # build the library in our own prefix.
+ makefile.filter('^ARPACKLIB.*', 'ARPACKLIB = %s/libarpack.a' % os.getcwd())
+
+
+ def install(self, spec, prefix):
+ with working_dir('SRC'):
+ make('all')
+
+ mkdirp(prefix.lib)
+ install('libarpack.a', prefix.lib)
diff --git a/var/spack/packages/atlas/package.py b/var/spack/packages/atlas/package.py
new file mode 100644
index 0000000000..fc683363a7
--- /dev/null
+++ b/var/spack/packages/atlas/package.py
@@ -0,0 +1,60 @@
+from spack import *
+from spack.util.executable import Executable
+import os
+
+class Atlas(Package):
+ """
+ Automatically Tuned Linear Algebra Software, generic shared
+ ATLAS is an approach for the automatic generation and optimization of
+ numerical software. Currently ATLAS supplies optimized versions for the
+ complete set of linear algebra kernels known as the Basic Linear Algebra
+ Subroutines (BLAS), and a subset of the linear algebra routines in the
+ LAPACK library.
+ """
+ homepage = "http://math-atlas.sourceforge.net/"
+
+ version('3.11.34', '0b6c5389c095c4c8785fd0f724ec6825',
+ url='http://sourceforge.net/projects/math-atlas/files/Developer%20%28unstable%29/3.11.34/atlas3.11.34.tar.bz2/download')
+ version('3.10.2', 'a4e21f343dec8f22e7415e339f09f6da',
+ url='http://downloads.sourceforge.net/project/math-atlas/Stable/3.10.2/atlas3.10.2.tar.bz2')
+
+ # TODO: make this provide BLAS once it works better. Create a way
+ # TODO: to mark "beta" packages and require explicit invocation.
+
+ # provides('blas')
+
+
+ def patch(self):
+ # Disable thraed check. LLNL's environment does not allow
+ # disabling of CPU throttling in a way that ATLAS actually
+ # understands.
+ filter_file(r'^\s+if \(thrchk\) exit\(1\);', 'if (0) exit(1);',
+ 'CONFIG/src/config.c')
+ # TODO: investigate a better way to add the check back in
+ # TODO: using, say, MSRs. Or move this to a variant.
+
+ @when('@:3.10')
+ def install(self, spec, prefix):
+ with working_dir('ATLAS-Build', create=True):
+ configure = Executable('../configure')
+ configure('--prefix=%s' % prefix, '-C', 'ic', 'cc', '-C', 'if', 'f77', "--dylibs")
+ make()
+ make('check')
+ make('ptcheck')
+ make('time')
+ make("install")
+
+
+ def install(self, spec, prefix):
+ with working_dir('ATLAS-Build', create=True):
+ configure = Executable('../configure')
+ configure('--incdir=%s' % prefix.include,
+ '--libdir=%s' % prefix.lib,
+ '--cc=cc',
+ "--shared")
+
+ make()
+ make('check')
+ make('ptcheck')
+ make('time')
+ make("install")
diff --git a/var/spack/packages/binutils/package.py b/var/spack/packages/binutils/package.py
new file mode 100644
index 0000000000..5a3059bbcf
--- /dev/null
+++ b/var/spack/packages/binutils/package.py
@@ -0,0 +1,17 @@
+from spack import *
+
+class Binutils(Package):
+ """GNU binutils, which contain the linker, assembler, objdump and others"""
+ homepage = "http://www.gnu.org/software/binutils/"
+ url = "ftp://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.bz2"
+
+ version('2.25', 'd9f3303f802a5b6b0bb73a335ab89d66')
+ version('2.24', 'e0f71a7b2ddab0f8612336ac81d9636b')
+ version('2.23.2', '4f8fa651e35ef262edc01d60fb45702e')
+ version('2.20.1', '2b9dc8f2b7dbd5ec5992c6e29de0b764')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix)
+
+ make()
+ make("install")
diff --git a/var/spack/packages/boxlib/package.py b/var/spack/packages/boxlib/package.py
new file mode 100644
index 0000000000..4f1b71132f
--- /dev/null
+++ b/var/spack/packages/boxlib/package.py
@@ -0,0 +1,25 @@
+from spack import *
+
+class Boxlib(Package):
+ """BoxLib, a software framework for massively parallel
+ block-structured adaptive mesh refinement (AMR) codes."""
+
+ homepage = "https://ccse.lbl.gov/BoxLib/"
+ url = "https://ccse.lbl.gov/pub/Downloads/BoxLib.git";
+
+ # TODO: figure out how best to version this. No tags in the repo!
+ version('master', git='https://ccse.lbl.gov/pub/Downloads/BoxLib.git')
+
+ depends_on('mpi')
+
+ def install(self, spec, prefix):
+ args = std_cmake_args
+ args += ['-DCCSE_ENABLE_MPI=1',
+ '-DCMAKE_C_COMPILER=%s' % which('mpicc'),
+ '-DCMAKE_CXX_COMPILER=%s' % which('mpicxx'),
+ '-DCMAKE_Fortran_COMPILER=%s' % which('mpif90')]
+
+ cmake('.', *args)
+ make()
+ make("install")
+
diff --git a/var/spack/packages/cblas/package.py b/var/spack/packages/cblas/package.py
new file mode 100644
index 0000000000..93cf5fb7b8
--- /dev/null
+++ b/var/spack/packages/cblas/package.py
@@ -0,0 +1,32 @@
+from spack import *
+import os
+
+class Cblas(Package):
+ """The BLAS (Basic Linear Algebra Subprograms) are routines that
+ provide standard building blocks for performing basic vector and
+ matrix operations."""
+
+ homepage = "http://www.netlib.org/blas/_cblas/"
+
+ # tarball has no version, but on the date below, this MD5 was correct.
+ version('2015-06-06', '1e8830f622d2112239a4a8a83b84209a',
+ url='http://www.netlib.org/blas/blast-forum/cblas.tgz')
+
+ depends_on('blas')
+ parallel = False
+
+ def patch(self):
+ mf = FileFilter('Makefile.in')
+
+ mf.filter('^BLLIB =.*', 'BLLIB = %s/libblas.a' % self.spec['blas'].prefix.lib)
+ mf.filter('^CC =.*', 'CC = cc')
+ mf.filter('^FC =.*', 'FC = f90')
+
+
+ def install(self, spec, prefix):
+ make('all')
+ mkdirp(prefix.lib)
+
+ # Rename the generated lib file to libcblas.a
+ install('./lib/cblas_LINUX.a', '%s/libcblas.a' % prefix.lib)
+
diff --git a/var/spack/packages/cgm/package.py b/var/spack/packages/cgm/package.py
new file mode 100644
index 0000000000..05d6395c5a
--- /dev/null
+++ b/var/spack/packages/cgm/package.py
@@ -0,0 +1,30 @@
+from spack import *
+
+class Cgm(Package):
+ """The Common Geometry Module, Argonne (CGMA) is a code library
+ which provides geometry functionality used for mesh generation and
+ other applications."""
+ homepage = "http://trac.mcs.anl.gov/projects/ITAPS/wiki/CGM"
+ url = "http://ftp.mcs.anl.gov/pub/fathom/cgm13.1.1.tar.gz"
+
+ version('13.1.1', '4e8dbc4ba8f65767b29f985f7a23b01f')
+ version('13.1.0', 'a6c7b22660f164ce893fb974f9cb2028')
+ version('13.1' , '95f724bda04919fc76818a5b7bc0b4ed')
+
+ depends_on("mpi")
+
+ def patch(self):
+ filter_file('^(#include "CGMParallelConventions.h")',
+ '//\1',
+ 'geom/parallel/CGMReadParallel.cpp')
+
+
+ def install(self, spec, prefix):
+ configure("--with-mpi",
+ "--prefix=%s" % prefix,
+ "CFLAGS=-static",
+ "CXXFLAGS=-static",
+ "FCFLAGS=-static")
+
+ make()
+ make("install")
diff --git a/var/spack/packages/cppcheck/package.py b/var/spack/packages/cppcheck/package.py
new file mode 100644
index 0000000000..8e98f457ee
--- /dev/null
+++ b/var/spack/packages/cppcheck/package.py
@@ -0,0 +1,15 @@
+from spack import *
+
+class Cppcheck(Package):
+ """A tool for static C/C++ code analysis."""
+ homepage = "http://cppcheck.sourceforge.net/"
+ url = "http://downloads.sourceforge.net/project/cppcheck/cppcheck/1.68/cppcheck-1.68.tar.bz2"
+
+ version('1.68', 'c015195f5d61a542f350269030150708')
+
+ def install(self, spec, prefix):
+ # cppcheck does not have a configure script
+ make()
+ # manually install the final cppcheck binary
+ mkdirp(prefix.bin)
+ install('cppcheck', prefix.bin)
diff --git a/var/spack/packages/dyninst/package.py b/var/spack/packages/dyninst/package.py
index f3d661f9a9..41ec57dd2f 100644
--- a/var/spack/packages/dyninst/package.py
+++ b/var/spack/packages/dyninst/package.py
@@ -31,9 +31,8 @@ class Dyninst(Package):
url = "http://www.dyninst.org/sites/default/files/downloads/dyninst/8.1.2/DyninstAPI-8.1.2.tgz"
list_url = "http://www.dyninst.org/downloads/dyninst-8.x"
-# Doesn't build right with boost@1.55.0
-# version('8.2.1', 'abf60b7faabe7a2e4b54395757be39c7',
-# url="http://www.paradyn.org/release8.2/DyninstAPI-8.2.1.tgz")
+ version('8.2.1', 'abf60b7faabe7a2e4b54395757be39c7',
+ url="http://www.paradyn.org/release8.2/DyninstAPI-8.2.1.tgz")
version('8.1.2', 'bf03b33375afa66fe0efa46ce3f4b17a',
url="http://www.paradyn.org/release8.1.2/DyninstAPI-8.1.2.tgz")
version('8.1.1', 'd1a04e995b7aa70960cd1d1fac8bd6ac',
@@ -50,6 +49,9 @@ class Dyninst(Package):
with working_dir('spack-build', create=True):
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,
diff --git a/var/spack/packages/gcc/package.py b/var/spack/packages/gcc/package.py
index 3da6c25d47..5e3d1a3efa 100644
--- a/var/spack/packages/gcc/package.py
+++ b/var/spack/packages/gcc/package.py
@@ -47,6 +47,7 @@ class Gcc(Package):
depends_on("gmp")
depends_on("mpc") # when @4.5:
depends_on("libelf")
+ depends_on("binutils")
# Save these until we can do optional deps.
#depends_on("isl")
@@ -73,6 +74,10 @@ class Gcc(Package):
"--with-stage1-ldflags=%s" % self.rpath_args,
"--with-boot-ldflags=%s" % self.rpath_args,
"--enable-lto",
+ "--with-gnu-ld",
+ "--with-ld=%s/bin/ld" % spec['binutils'].prefix,
+ "--with-gnu-as",
+ "--with-as=%s/bin/as" % spec['binutils'].prefix,
"--with-quad")
make()
make("install")
diff --git a/var/spack/packages/hypre/package.py b/var/spack/packages/hypre/package.py
new file mode 100644
index 0000000000..198b3f00dc
--- /dev/null
+++ b/var/spack/packages/hypre/package.py
@@ -0,0 +1,32 @@
+from spack import *
+
+class Hypre(Package):
+ """Hypre is a library of high performance preconditioners that
+ 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"
+
+ version('2.10.0b', '768be38793a35bb5d055905b271f5b8e')
+
+ depends_on("mpi")
+ depends_on("blas")
+ depends_on("lapack")
+
+ def install(self, spec, prefix):
+ blas_dir = spec['blas'].prefix
+ lapack_dir = spec['lapack'].prefix
+
+ # Hypre's source is staged under ./src so we'll have to manually
+ # cd into it.
+ with working_dir("src"):
+ configure(
+ "--prefix=%s" % prefix,
+ "--with-blas-libs=blas",
+ "--with-blas-lib-dirs=%s/lib" % blas_dir,
+ "--with-lapack-libs=\"lapack blas\"",
+ "--with-lapack-lib-dirs=%s/lib" % lapack_dir,
+ "--with-MPI")
+ make()
+ make("install")
diff --git a/var/spack/packages/lapack/package.py b/var/spack/packages/lapack/package.py
new file mode 100644
index 0000000000..d9d37e3e4a
--- /dev/null
+++ b/var/spack/packages/lapack/package.py
@@ -0,0 +1,45 @@
+from spack import *
+
+class Lapack(Package):
+ """
+ LAPACK version 3.X is a comprehensive FORTRAN library that does
+ linear algebra operations including matrix inversions, least
+ squared solutions to linear sets of equations, eigenvector
+ analysis, singular value decomposition, etc. It is a very
+ comprehensive and reputable package that has found extensive
+ use in the scientific community.
+ """
+ homepage = "http://www.netlib.org/lapack/"
+ url = "http://www.netlib.org/lapack/lapack-3.5.0.tgz"
+
+ version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf')
+ version('3.4.2', '61bf1a8a4469d4bdb7604f5897179478')
+ version('3.4.1', '44c3869c38c8335c2b9c2a8bb276eb55')
+ version('3.4.0', '02d5706ec03ba885fc246e5fa10d8c70')
+ version('3.3.1', 'd0d533ec9a5b74933c2a1e84eedc58b4')
+
+ # blas is a virtual dependency.
+ depends_on('blas')
+
+ # Doesn't always build correctly in parallel
+ parallel = False
+
+ @when('^netlib-blas')
+ def get_blas_libs(self):
+ blas = self.spec['netlib-blas']
+ return [join_path(blas.prefix.lib, 'blas.a')]
+
+
+ @when('^atlas')
+ def get_blas_libs(self):
+ blas = self.spec['atlas']
+ return [join_path(blas.prefix.lib, l)
+ for l in ('libf77blas.a', 'libatlas.a')]
+
+
+ def install(self, spec, prefix):
+ blas_libs = ";".join(self.get_blas_libs())
+ cmake(".", '-DBLAS_LIBRARIES=' + blas_libs, *std_cmake_args)
+ make()
+ make("install")
+
diff --git a/var/spack/packages/libuuid/package.py b/var/spack/packages/libuuid/package.py
new file mode 100644
index 0000000000..373c5bfcac
--- /dev/null
+++ b/var/spack/packages/libuuid/package.py
@@ -0,0 +1,16 @@
+from spack import *
+
+class Libuuid(Package):
+ """Portable uuid C library"""
+ # FIXME: add a proper url for your package's homepage here.
+ homepage = "http://sourceforge.net/projects/libuuid/"
+ url = "http://downloads.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flibuuid%2F&ts=1433881396&use_mirror=iweb"
+
+ version('1.0.3', 'd44d866d06286c08ba0846aba1086d68')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix)
+
+ # FIXME: Add logic to build and install here
+ make()
+ make("install")
diff --git a/var/spack/packages/memaxes/package.py b/var/spack/packages/memaxes/package.py
index afa62009a6..76d5d3f831 100644
--- a/var/spack/packages/memaxes/package.py
+++ b/var/spack/packages/memaxes/package.py
@@ -5,12 +5,11 @@ class Memaxes(Package):
homepage = "https://github.com/scalability-llnl/MemAxes"
- version('0.5', 'b0f561d48aa7301e028d074bc4b5751b',
+ version('0.5', '5874f3fda9fd2d313c0ff9684f915ab5',
url='https://github.com/scalability-llnl/MemAxes/archive/v0.5.tar.gz')
depends_on("cmake@2.8.9:")
depends_on("qt@5:")
- depends_on("vtk")
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
diff --git a/var/spack/packages/metis/package.py b/var/spack/packages/metis/package.py
index fa13d52127..7ce5ae1925 100644
--- a/var/spack/packages/metis/package.py
+++ b/var/spack/packages/metis/package.py
@@ -5,28 +5,23 @@ class Metis(Package):
partitioning finite element meshes, and producing fill reducing
orderings for sparse matrices. The algorithms implemented in
METIS are based on the multilevel recursive-bisection,
- multilevel k-way, and multi-constraint partitioning schemes
- developed in our lab."""
+ multilevel k-way, and multi-constraint partitioning schemes."""
homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
version('5.1.0', '5465e67079419a69e0116de24fce58fe')
- # FIXME: Add dependencies if this package requires them.
- # depends_on("foo")
-
- def patch(self):
- filter_file(r'#define IDXTYPEWIDTH 32', '#define IDXTYPEWIDTH 64', 'include/metis.h',
- string=True)
-
+ depends_on('mpi')
def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..',
- '-DGKLIB_PATH=../GKlib',
- '-DBUILD_SHARED_LIBS=TRUE',
- *std_cmake_args)
- make()
- make("install")
-
+ cmake(".",
+ '-DGKLIB_PATH=%s/GKlib' % pwd(),
+ '-DSHARED=1',
+ '-DCMAKE_C_COMPILER=mpicc',
+ '-DCMAKE_CXX_COMPILER=mpicxx',
+ '-DSHARED=1',
+ *std_cmake_args)
+
+ make()
+ make("install")
diff --git a/var/spack/packages/netlib-blas/package.py b/var/spack/packages/netlib-blas/package.py
new file mode 100644
index 0000000000..0a6cdb0442
--- /dev/null
+++ b/var/spack/packages/netlib-blas/package.py
@@ -0,0 +1,40 @@
+from spack import *
+import os
+
+
+class NetlibBlas(Package):
+ """Netlib reference BLAS"""
+ homepage = "http://www.netlib.org/lapack/"
+ url = "http://www.netlib.org/lapack/lapack-3.5.0.tgz"
+
+ version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf')
+
+ # virtual dependency
+ provides('blas')
+
+ # Doesn't always build correctly in parallel
+ parallel = False
+
+ def patch(self):
+ os.symlink('make.inc.example', 'make.inc')
+
+ mf = FileFilter('make.inc')
+ mf.filter('^FORTRAN.*', 'FORTRAN = f90')
+ mf.filter('^LOADER.*', 'LOADER = f90')
+ mf.filter('^CC =.*', 'CC = cc')
+
+
+ def install(self, spec, prefix):
+ make('blaslib')
+
+ # Tests that blas builds correctly
+ make('blas_testing')
+
+ # No install provided
+ mkdirp(prefix.lib)
+ install('librefblas.a', prefix.lib)
+
+ # Blas virtual package should provide blas.a and libblas.a
+ with working_dir(prefix.lib):
+ symlink('librefblas.a', 'blas.a')
+ symlink('librefblas.a', 'libblas.a')
diff --git a/var/spack/packages/nettle/package.py b/var/spack/packages/nettle/package.py
index 0f20bc06df..cd600b0b87 100644
--- a/var/spack/packages/nettle/package.py
+++ b/var/spack/packages/nettle/package.py
@@ -9,6 +9,8 @@ class Nettle(Package):
version('2.7', '2caa1bd667c35db71becb93c5d89737f')
+ depends_on('gmp')
+
def install(self, spec, prefix):
configure("--prefix=%s" % prefix)
make()
diff --git a/var/spack/packages/parpack/package.py b/var/spack/packages/parpack/package.py
new file mode 100644
index 0000000000..622aceca04
--- /dev/null
+++ b/var/spack/packages/parpack/package.py
@@ -0,0 +1,43 @@
+from spack import *
+import os
+import shutil
+
+class Parpack(Package):
+ """ARPACK is a collection of Fortran77 subroutines designed to solve large
+ scale eigenvalue problems."""
+
+ homepage = "http://www.caam.rice.edu/software/ARPACK/download.html"
+ url = "http://www.caam.rice.edu/software/ARPACK/SRC/parpack96.tar.Z"
+
+ version('96', 'a175f70ff71837a33ff7e4b0b6054f43')
+
+ depends_on('mpi')
+ depends_on('blas')
+ depends_on('lapack')
+
+ def patch(self):
+ # Filter the CJ makefile to make a spack one.
+ shutil.move('ARMAKES/ARmake.CJ', 'ARmake.inc')
+ mf = FileFilter('ARmake.inc')
+
+ # Be sure to use Spack F77 wrapper
+ mf.filter('^FC.*', 'FC = f77')
+ mf.filter('^FFLAGS.*', 'FFLAGS = -O2 -g')
+
+ # Set up some variables.
+ mf.filter('^PLAT.*', 'PLAT = ')
+ mf.filter('^home.*', 'home = %s' % os.getcwd())
+ mf.filter('^BLASdir.*', 'BLASdir = %s' % self.spec['blas'].prefix)
+ mf.filter('^LAPACKdir.*', 'LAPACKdir = %s' % self.spec['lapack'].prefix)
+ mf.filter('^MAKE.*', 'MAKE = make')
+
+ # build the library in our own prefix.
+ mf.filter('^ARPACKLIB.*', 'PARPACKLIB = %s/libparpack.a' % os.getcwd())
+
+
+ def install(self, spec, prefix):
+ with working_dir('PARPACK/SRC/MPI'):
+ make('all')
+
+ mkdirp(prefix.lib)
+ install('libparpack.a', prefix.lib)
diff --git a/var/spack/packages/petsc/package.py b/var/spack/packages/petsc/package.py
new file mode 100644
index 0000000000..4864e39bf1
--- /dev/null
+++ b/var/spack/packages/petsc/package.py
@@ -0,0 +1,40 @@
+from spack import *
+
+class Petsc(Package):
+ """PETSc is a suite of data structures and routines for the
+ scalable (parallel) solution of scientific applications modeled by
+ partial differential equations."""
+
+ homepage = "http://www.mcs.anl.gov/petsc/index.html"
+ url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.5.3.tar.gz"
+
+ version('3.5.3', 'd4fd2734661e89f18ac6014b5dd1ef2f')
+ version('3.5.2', 'ad170802b3b058b5deb9cd1f968e7e13')
+ version('3.5.1', 'a557e029711ebf425544e117ffa44d8f')
+
+ depends_on("boost")
+ depends_on("blas")
+ depends_on("lapack")
+ depends_on("hypre")
+ depends_on("parmetis")
+ depends_on("metis")
+ depends_on("hdf5")
+ depends_on("mpi")
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix,
+ "CC=cc",
+ "CXX=c++",
+ "FC=f90",
+ "--with-blas-lib=%s/libblas.a" % spec['blas'].prefix.lib,
+ "--with-lapack-lib=%s/liblapack.a" % spec['lapack'].prefix.lib,
+ "--with-boost-dir=%s" % spec['boost'].prefix,
+ "--with-hypre-dir=%s" % spec['hypre'].prefix,
+ "--with-parmetis-dir=%s" % spec['parmetis'].prefix,
+ "--with-metis-dir=%s" % spec['metis'].prefix,
+ "--with-hdf5-dir=%s" % spec['hdf5'].prefix,
+ "--with-shared-libraries=0")
+
+ # PETSc has its own way of doing parallel make.
+ make('MAKE_NP=%s' % make_jobs, parallel=False)
+ make("install")
diff --git a/var/spack/packages/py-cffi/package.py b/var/spack/packages/py-cffi/package.py
new file mode 100644
index 0000000000..a4d37483fe
--- /dev/null
+++ b/var/spack/packages/py-cffi/package.py
@@ -0,0 +1,17 @@
+from spack import *
+
+class PyCffi(Package):
+ """Foreign Function Interface for Python calling C code"""
+ homepage = "http://cffi.readthedocs.org/en/latest/"
+ # base https://pypi.python.org/pypi/cffi
+ url = "https://pypi.python.org/packages/source/c/cffi/cffi-1.1.2.tar.gz#md5="
+
+ version('1.1.2', 'ca6e6c45b45caa87aee9adc7c796eaea')
+
+ extends('python')
+ depends_on('py-setuptools')
+ depends_on('py-pycparser')
+ depends_on('libffi')
+
+ def install(self, spec, prefix):
+ python('setup.py', 'install', '--prefix=%s' % prefix)
diff --git a/var/spack/packages/py-cython/package.py b/var/spack/packages/py-cython/package.py
index af67a15526..68eb735ad9 100644
--- a/var/spack/packages/py-cython/package.py
+++ b/var/spack/packages/py-cython/package.py
@@ -3,9 +3,10 @@ from spack import *
class PyCython(Package):
"""The Cython compiler for writing C extensions for the Python language."""
homepage = "https://pypi.python.org/pypi/cython"
- url = "https://pypi.python.org/packages/source/C/Cython/Cython-0.21.2.tar.gz"
+ url = "https://pypi.python.org/packages/source/C/Cython/cython-0.22.tar.gz"
version('0.21.2', 'd21adb870c75680dc857cd05d41046a4')
+ version('0.22', '1ae25add4ef7b63ee9b4af697300d6b6')
extends('python')
diff --git a/var/spack/packages/py-dateutil/package.py b/var/spack/packages/py-dateutil/package.py
index 3bd2f2ca13..0a17f2f2d2 100644
--- a/var/spack/packages/py-dateutil/package.py
+++ b/var/spack/packages/py-dateutil/package.py
@@ -6,6 +6,7 @@ class PyDateutil(Package):
url = "https://pypi.python.org/packages/source/p/python-dateutil/python-dateutil-2.4.0.tar.gz"
version('2.4.0', '75714163bb96bedd07685cdb2071b8bc')
+ version('2.4.2', '4ef68e1c485b09e9f034e10473e5add2')
extends('python')
depends_on('py-setuptools')
diff --git a/var/spack/packages/py-genders/package.py b/var/spack/packages/py-genders/package.py
new file mode 100644
index 0000000000..c49c8fd5b2
--- /dev/null
+++ b/var/spack/packages/py-genders/package.py
@@ -0,0 +1,15 @@
+from spack import *
+
+class PyGenders(Package):
+ """Genders is a static cluster configuration database used for cluster configuration management. It is used by a variety of tools and scripts for management of large clusters."""
+ homepage = "https://github.com/chaos/genders"
+ url = "https://github.com/chaos/genders/releases/download/genders-1-22-1/genders-1.22.tar.gz"
+
+ version('1.22', '9ea59a024dcbddb85b0ed25ddca9bc8e', url='https://github.com/chaos/genders/releases/download/genders-1-22-1/genders-1.22.tar.gz')
+ extends('python')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" %prefix)
+ make(parallel=False)
+ make("install")
+
diff --git a/var/spack/packages/py-h5py/package.py b/var/spack/packages/py-h5py/package.py
index f72b3ac06e..6293da5407 100644
--- a/var/spack/packages/py-h5py/package.py
+++ b/var/spack/packages/py-h5py/package.py
@@ -7,8 +7,9 @@ class PyH5py(Package):
url = "https://pypi.python.org/packages/source/h/h5py/h5py-2.4.0.tar.gz"
version('2.4.0', '80c9a94ae31f84885cc2ebe1323d6758')
+ version('2.5.0', '6e4301b5ad5da0d51b0a1e5ac19e3b74')
- extends('python', ignore=lambda f: re.match(r'cy*', f))
+ extends('python', ignore=lambda f: re.match(r'bin/cy*', f))
depends_on('hdf5')
depends_on('py-numpy')
depends_on('py-cython')
diff --git a/var/spack/packages/py-ipython/package.py b/var/spack/packages/py-ipython/package.py
index 907ea9edcd..8d0e64a07f 100644
--- a/var/spack/packages/py-ipython/package.py
+++ b/var/spack/packages/py-ipython/package.py
@@ -6,6 +6,7 @@ class PyIpython(Package):
url = "https://pypi.python.org/packages/source/i/ipython/ipython-2.3.1.tar.gz"
version('2.3.1', '2b7085525dac11190bfb45bb8ec8dcbf')
+ version('3.1.0', 'a749d90c16068687b0ec45a27e72ef8f')
extends('python')
depends_on('py-pygments')
diff --git a/var/spack/packages/py-matplotlib/package.py b/var/spack/packages/py-matplotlib/package.py
index 04037f004e..e7ce3dfd24 100644
--- a/var/spack/packages/py-matplotlib/package.py
+++ b/var/spack/packages/py-matplotlib/package.py
@@ -7,6 +7,7 @@ class PyMatplotlib(Package):
url = "https://pypi.python.org/packages/source/m/matplotlib/matplotlib-1.4.2.tar.gz"
version('1.4.2', '7d22efb6cce475025733c50487bd8898')
+ version('1.4.3', '86af2e3e3c61849ac7576a6f5ca44267')
extends('python', ignore=r'bin/nosetests.*$')
@@ -28,7 +29,7 @@ class PyMatplotlib(Package):
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)
- if str(self.version) == '1.4.2':
+ if str(self.version) in ['1.4.2', '1.4.3']:
# hack to fix configuration file
config_file = None
for p,d,f in os.walk(prefix.lib):
diff --git a/var/spack/packages/py-nose/package.py b/var/spack/packages/py-nose/package.py
index 155019289d..e7c6cf0264 100644
--- a/var/spack/packages/py-nose/package.py
+++ b/var/spack/packages/py-nose/package.py
@@ -8,6 +8,7 @@ class PyNose(Package):
url = "https://pypi.python.org/packages/source/n/nose/nose-1.3.4.tar.gz"
version('1.3.4', '6ed7169887580ddc9a8e16048d38274d')
+ version('1.3.6', '0ca546d81ca8309080fc80cb389e7a16')
extends('python', ignore=r'bin/nosetests.*$')
depends_on('py-setuptools')
diff --git a/var/spack/packages/py-numpy/package.py b/var/spack/packages/py-numpy/package.py
index e6cb6a464f..6534e063d2 100644
--- a/var/spack/packages/py-numpy/package.py
+++ b/var/spack/packages/py-numpy/package.py
@@ -6,6 +6,7 @@ class PyNumpy(Package):
url = "https://pypi.python.org/packages/source/n/numpy/numpy-1.9.1.tar.gz"
version('1.9.1', '78842b73560ec378142665e712ae4ad9')
+ version('1.9.2', 'a1ed53432dbcd256398898d35bc8e645')
extends('python')
depends_on('py-nose')
diff --git a/var/spack/packages/py-pandas/package.py b/var/spack/packages/py-pandas/package.py
new file mode 100644
index 0000000000..acbb5114a3
--- /dev/null
+++ b/var/spack/packages/py-pandas/package.py
@@ -0,0 +1,21 @@
+from spack import *
+import os
+
+class PyPandas(Package):
+ """pandas is a Python package providing fast, flexible, and expressive data structures designed to make working with relational or labeled data both easy and intuitive. It aims to be the fundamental high-level building block for doing practical, real world data analysis in Python. Additionally, it has the broader goal of becoming the most powerful and flexible open source data analysis / manipulation tool available in any language."""
+ homepage = "http://pandas.pydata.org/"
+ url = "https://pypi.python.org/packages/source/p/pandas/pandas-0.16.0.tar.gz#md5=bfe311f05dc0c351f8955fbd1e296e73"
+
+ version('0.16.0', 'bfe311f05dc0c351f8955fbd1e296e73')
+ version('0.16.1', 'fac4f25748f9610a3e00e765474bdea8')
+
+ extends('python')
+ depends_on('py-dateutil')
+ depends_on('py-numpy')
+ depends_on('py-matplotlib')
+ depends_on('py-scipy')
+ depends_on('py-setuptools')
+ depends_on('py-pytz')
+
+ def install(self, spec, prefix):
+ python('setup.py', 'install', '--prefix=%s' % prefix)
diff --git a/var/spack/packages/py-pycparser/package.py b/var/spack/packages/py-pycparser/package.py
new file mode 100644
index 0000000000..f2bb679d25
--- /dev/null
+++ b/var/spack/packages/py-pycparser/package.py
@@ -0,0 +1,15 @@
+from spack import *
+
+class PyPycparser(Package):
+ """pycparser is a complete parser of the C language, written in pure python"""
+ homepage = "https://github.com/eliben/pycparser"
+ url = "https://pypi.python.org/packages/source/p/pycparser/pycparser-2.13.tar.gz"
+
+ version('2.13', 'e4fe1a2d341b22e25da0d22f034ef32f')
+
+
+ extends('python')
+ depends_on('py-setuptools')
+
+ def install(self, spec, prefix):
+ python('setup.py', 'install', '--prefix=%s' % prefix)
diff --git a/var/spack/packages/py-pygments/package.py b/var/spack/packages/py-pygments/package.py
index 990eebde65..7e07bf6869 100644
--- a/var/spack/packages/py-pygments/package.py
+++ b/var/spack/packages/py-pygments/package.py
@@ -6,6 +6,7 @@ class PyPygments(Package):
url = "https://pypi.python.org/packages/source/P/Pygments/Pygments-2.0.1.tar.gz"
version('2.0.1', 'e0daf4c14a4fe5b630da765904de4d6c')
+ version('2.0.2', '238587a1370d62405edabd0794b3ec4a')
extends('python')
depends_on('py-setuptools')
diff --git a/var/spack/packages/py-pylint/package.py b/var/spack/packages/py-pylint/package.py
index 7a6ee7dbbc..9579708c29 100644
--- a/var/spack/packages/py-pylint/package.py
+++ b/var/spack/packages/py-pylint/package.py
@@ -7,6 +7,7 @@ class PyPylint(Package):
url = "https://pypi.python.org/packages/source/p/pylint/pylint-1.4.1.tar.gz"
version('1.4.1', 'df7c679bdcce5019389038847e4de622')
+ version('1.4.3', '5924c1c7ca5ca23647812f5971d0ea44')
extends('python')
depends_on('py-nose')
diff --git a/var/spack/packages/py-pypar/package.py b/var/spack/packages/py-pypar/package.py
new file mode 100644
index 0000000000..af9c76ccd8
--- /dev/null
+++ b/var/spack/packages/py-pypar/package.py
@@ -0,0 +1,14 @@
+from spack import *
+
+class PyPypar(Package):
+ """Pypar is an efficient but easy-to-use module that allows programs written in Python to run in parallel on multiple processors and communicate using MPI."""
+ homepage = "http://code.google.com/p/pypar/"
+ url = "https://pypar.googlecode.com/files/pypar-2.1.5_108.tgz"
+
+ version('2.1.5_108', '7a1f28327d2a3b679f9455c843d850b8', url='https://pypar.googlecode.com/files/pypar-2.1.5_108.tgz')
+ extends('python')
+ depends_on('mpi')
+
+ def install(self, spec, prefix):
+ with working_dir('source'):
+ python('setup.py', 'install', '--prefix=%s' % prefix)
diff --git a/var/spack/packages/py-pytz/package.py b/var/spack/packages/py-pytz/package.py
index 80bcfe82ca..da6311a784 100644
--- a/var/spack/packages/py-pytz/package.py
+++ b/var/spack/packages/py-pytz/package.py
@@ -6,6 +6,7 @@ class PyPytz(Package):
url = "https://pypi.python.org/packages/source/p/pytz/pytz-2014.10.tar.gz"
version('2014.10', 'eb1cb941a20c5b751352c52486aa1dd7')
+ version('2015.4', '417a47b1c432d90333e42084a605d3d8')
extends('python')
diff --git a/var/spack/packages/py-rpy2/package.py b/var/spack/packages/py-rpy2/package.py
index dd0c0672af..a0b03d03e3 100644
--- a/var/spack/packages/py-rpy2/package.py
+++ b/var/spack/packages/py-rpy2/package.py
@@ -6,6 +6,7 @@ class PyRpy2(Package):
url = "https://pypi.python.org/packages/source/r/rpy2/rpy2-2.5.4.tar.gz"
version('2.5.4', '115a20ac30883f096da2bdfcab55196d')
+ version('2.5.6', 'a36e758b633ce6aec6a5f450bfee980f')
extends('python')
depends_on('py-setuptools')
diff --git a/var/spack/packages/py-scientificpython/package.py b/var/spack/packages/py-scientificpython/package.py
index 020d830703..df2c86caac 100644
--- a/var/spack/packages/py-scientificpython/package.py
+++ b/var/spack/packages/py-scientificpython/package.py
@@ -7,8 +7,7 @@ class PyScientificpython(Package):
visualization, and parallelization."""
homepage = "https://sourcesup.renater.fr/projects/scientific-py/"
- url = "https://sourcesup.renater.fr/frs/download.php/4411/ScientificPython-2.8.1.tar.gz"
-
+ url = "https://sourcesup.renater.fr/frs/download.php/file/4411/ScientificPython-2.8.1.tar.gz"
version('2.8.1', '73ee0df19c7b58cdf2954261f0763c77')
extends('python')
diff --git a/var/spack/packages/py-scikit-learn/package.py b/var/spack/packages/py-scikit-learn/package.py
index c59c05a619..5b078ce901 100644
--- a/var/spack/packages/py-scikit-learn/package.py
+++ b/var/spack/packages/py-scikit-learn/package.py
@@ -6,6 +6,7 @@ class PyScikitLearn(Package):
url = "https://pypi.python.org/packages/source/s/scikit-learn/scikit-learn-0.15.2.tar.gz"
version('0.15.2', 'd9822ad0238e17b382a3c756ea94fe0d')
+ version('0.16.1', '363ddda501e3b6b61726aa40b8dbdb7e')
extends('python')
diff --git a/var/spack/packages/py-scipy/package.py b/var/spack/packages/py-scipy/package.py
index b5325b919f..cdcf74534b 100644
--- a/var/spack/packages/py-scipy/package.py
+++ b/var/spack/packages/py-scipy/package.py
@@ -6,6 +6,7 @@ class PyScipy(Package):
url = "https://pypi.python.org/packages/source/s/scipy/scipy-0.15.0.tar.gz"
version('0.15.0', '639112f077f0aeb6d80718dc5019dc7a')
+ version('0.15.1', 'be56cd8e60591d6332aac792a5880110')
extends('python')
depends_on('py-nose')
diff --git a/var/spack/packages/py-setuptools/package.py b/var/spack/packages/py-setuptools/package.py
index 755288d55c..d3f11ed469 100644
--- a/var/spack/packages/py-setuptools/package.py
+++ b/var/spack/packages/py-setuptools/package.py
@@ -6,6 +6,7 @@ class PySetuptools(Package):
url = "https://pypi.python.org/packages/source/s/setuptools/setuptools-11.3.tar.gz"
version('11.3.1', '01f69212e019a2420c1693fb43593930')
+ version('16.0', '0ace0b96233516fc5f7c857d086aa3ad')
extends('python')
diff --git a/var/spack/packages/py-sip/package.py b/var/spack/packages/py-sip/package.py
index 6753bdd2a5..e4a6fb6961 100644
--- a/var/spack/packages/py-sip/package.py
+++ b/var/spack/packages/py-sip/package.py
@@ -7,6 +7,7 @@ class PySip(Package):
url = "http://sourceforge.net/projects/pyqt/files/sip/sip-4.16.5/sip-4.16.5.tar.gz"
version('4.16.5', '6d01ea966a53e4c7ae5c5e48c40e49e5')
+ version('4.16.7', '32abc003980599d33ffd789734de4c36')
extends('python')
diff --git a/var/spack/packages/py-virtualenv/package.py b/var/spack/packages/py-virtualenv/package.py
index 2d10d440a6..037a6fc59f 100644
--- a/var/spack/packages/py-virtualenv/package.py
+++ b/var/spack/packages/py-virtualenv/package.py
@@ -7,6 +7,7 @@ class PyVirtualenv(Package):
url = "https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.11.6.tar.gz"
version('1.11.6', 'f61cdd983d2c4e6aeabb70b1060d6f49')
+ version('13.0.1', '1ffc011bde6667f0e37ecd976f4934db')
extends('python')
depends_on('py-setuptools')
diff --git a/var/spack/packages/python/package.py b/var/spack/packages/python/package.py
index 31a12ea653..000881a846 100644
--- a/var/spack/packages/python/package.py
+++ b/var/spack/packages/python/package.py
@@ -15,6 +15,7 @@ class Python(Package):
extendable = True
version('2.7.8', 'd235bdfa75b8396942e360a70487ee00')
+ version('2.7.10', 'c685ef0b8e9f27b5e3db5db12b268ac6')
depends_on("openssl")
depends_on("bzip2")
@@ -139,7 +140,9 @@ class Python(Package):
def activate(self, ext_pkg, **args):
- args.update(ignore=self.python_ignore(ext_pkg, args))
+ ignore=self.python_ignore(ext_pkg, args)
+ args.update(ignore=ignore)
+
super(Python, self).activate(ext_pkg, **args)
exts = spack.install_layout.extension_map(self.spec)
diff --git a/var/spack/packages/qt/package.py b/var/spack/packages/qt/package.py
index 4a9a867511..0e4abe3b1d 100644
--- a/var/spack/packages/qt/package.py
+++ b/var/spack/packages/qt/package.py
@@ -50,9 +50,11 @@ class Qt(Package):
def patch(self):
if self.spec.satisfies('@4'):
- qmake_conf = 'mkspecs/common/g++-base.conf'
+ qmake_conf = 'mkspecs/common/g++-base.conf'
+ qmake_unix_conf = 'mkspecs/common/g++-unix.conf'
elif self.spec.satisfies('@5'):
- qmake_conf = 'qtbase/mkspecs/common/g++-base.conf'
+ qmake_conf = 'qtbase/mkspecs/common/g++-base.conf'
+ qmake_unix_conf = 'qtbase/mkspecs/common/g++-unix.conf'
else:
return
@@ -60,7 +62,7 @@ class Qt(Package):
filter_file(r'^QMAKE_COMPILER *=.*$', 'QMAKE_COMPILER = cc', qmake_conf)
filter_file(r'^QMAKE_CC *=.*$', 'QMAKE_CC = cc', qmake_conf)
filter_file(r'^QMAKE_CXX *=.*$', 'QMAKE_CXX = c++', qmake_conf)
-
+ filter_file(r'^QMAKE_LFLAGS_NOUNDEF *\+?=.*$', 'QMAKE_LFLAGS_NOUNDEF =', qmake_unix_conf)
@property
diff --git a/var/spack/packages/stat/package.py b/var/spack/packages/stat/package.py
index 05e74b6a84..c40d65ae78 100644
--- a/var/spack/packages/stat/package.py
+++ b/var/spack/packages/stat/package.py
@@ -5,16 +5,18 @@ class Stat(Package):
homepage = "http://paradyn.org/STAT/STAT.html"
url = "https://github.com/lee218llnl/stat/archive/v2.0.0.tar.gz"
+ version('2.2.0', '26bd69dd57a15afdd5d0ebdb0b7fb6fc')
version('2.1.0', 'ece26beaf057aa9134d62adcdda1ba91')
version('2.0.0', 'c7494210b0ba26b577171b92838e1a9b')
+ depends_on('libelf')
depends_on('libdwarf')
depends_on('dyninst')
depends_on('graphlib')
depends_on('launchmon')
depends_on('mrnet')
- patch('configure_mpicxx.patch', when='@2.1.0:')
+ patch('configure_mpicxx.patch', when='@2.1.0')
def install(self, spec, prefix):
configure(
diff --git a/var/spack/packages/task/package.py b/var/spack/packages/task/package.py
new file mode 100644
index 0000000000..07f44cc45b
--- /dev/null
+++ b/var/spack/packages/task/package.py
@@ -0,0 +1,20 @@
+from spack import *
+
+class Task(Package):
+ """Feature-rich console based todo list manager"""
+ homepage = "http://www.taskwarrior.org"
+ url = "http://taskwarrior.org/download/task-2.4.4.tar.gz"
+
+ version('2.4.4', '517450c4a23a5842df3e9905b38801b3')
+
+ depends_on("gnutls")
+ depends_on("libuuid")
+ # depends_on("gcc@4.8:")
+
+ def install(self, spec, prefix):
+ with working_dir('spack-build', create=True):
+ cmake('-DCMAKE_BUILD_TYPE=release',
+ '..',
+ *std_cmake_args)
+ make()
+ make("install")
diff --git a/var/spack/packages/taskd/package.py b/var/spack/packages/taskd/package.py
new file mode 100644
index 0000000000..66bc0cb484
--- /dev/null
+++ b/var/spack/packages/taskd/package.py
@@ -0,0 +1,20 @@
+from spack import *
+
+class Taskd(Package):
+ """TaskWarrior task synchronization daemon"""
+ # FIXME: add a proper url for your package's homepage here.
+ homepage = "http://www.taskwarrior.org"
+ url = "http://taskwarrior.org/download/taskd-1.1.0.tar.gz"
+
+ version('1.1.0', 'ac855828c16f199bdbc45fbc227388d0')
+
+ depends_on("libuuid")
+ depends_on("gnutls")
+
+ def install(self, spec, prefix):
+ with working_dir('spack-build', create=True):
+ cmake('-DCMAKE_BUILD_TYPE=release',
+ '..',
+ *std_cmake_args)
+ make()
+ make("install")
diff --git a/var/spack/packages/uncrustify/package.py b/var/spack/packages/uncrustify/package.py
new file mode 100644
index 0000000000..d3f2d1b473
--- /dev/null
+++ b/var/spack/packages/uncrustify/package.py
@@ -0,0 +1,14 @@
+from spack import *
+
+class Uncrustify(Package):
+ """Source Code Beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA"""
+
+ homepage = "http://uncrustify.sourceforge.net/"
+ url = "http://downloads.sourceforge.net/project/uncrustify/uncrustify/uncrustify-0.61/uncrustify-0.61.tar.gz"
+
+ version('0.61', 'b6140106e74c64e831d0b1c4b6cf7727')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix)
+ make()
+ make("install")