Revert "added a bunch of packages and added submodule"

This reverts commit 79808da760.
This commit is contained in:
Gregory Becker
2016-01-08 15:02:29 -08:00
parent 86230b9ac8
commit 6ca1e5c4b0
85 changed files with 689 additions and 492 deletions

1
.gitignore vendored
View File

@@ -8,4 +8,3 @@
/etc/spackconfig /etc/spackconfig
/share/spack/dotkit /share/spack/dotkit
/share/spack/modules /share/spack/modules
*.ropeproject

4
.gitmodules vendored
View File

@@ -1,3 +1,3 @@
[submodule "/lib/spack/spack/util/python_recipe_parser"] [submodule "utils/python_recipe_parser"]
path = /lib/spack/spack/util/python_recipe_parser path = utils/python_recipe_parser
url = https://github.com/karenyyng/spack_python_package_parser url = https://github.com/karenyyng/spack_python_package_parser

View File

@@ -0,0 +1,18 @@
from spack import *
class Asciidoc(Package):
""" A presentable text document format for writing articles, UNIX man
pages and other small to medium sized documents."""
homepage = "http://asciidoc.org"
url = "http://downloads.sourceforge.net/project/asciidoc/asciidoc/8.6.9/asciidoc-8.6.9.tar.gz"
version('8.6.9', 'c59018f105be8d022714b826b0be130a')
depends_on('libxml2')
depends_on('libxslt')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
make("install")

View File

@@ -14,6 +14,10 @@ class Boost(Package):
list_url = "http://sourceforge.net/projects/boost/files/boost/" list_url = "http://sourceforge.net/projects/boost/files/boost/"
list_depth = 2 list_depth = 2
version('1.59.0', '6aa9a5c6a4ca1016edd0ed1178e3cb87')
version('1.58.0', 'b8839650e61e9c1c0a89f371dd475546')
version('1.57.0', '1be49befbdd9a5ce9def2983ba3e7b76')
version('1.56.0', 'a744cf167b05d72335f27c88115f211d')
version('1.55.0', 'd6eef4b4cacb2183f2bf265a5a03a354') version('1.55.0', 'd6eef4b4cacb2183f2bf265a5a03a354')
version('1.54.0', '15cb8c0803064faef0c4ddf5bc5ca279') version('1.54.0', '15cb8c0803064faef0c4ddf5bc5ca279')
version('1.53.0', 'a00d22605d5dbcfb4c9936a9b35bc4c2') version('1.53.0', 'a00d22605d5dbcfb4c9936a9b35bc4c2')

View File

@@ -0,0 +1,16 @@
--- Makefile 2015-02-26 10:50:00.000000000 -0800
+++ Makefile.new 2015-07-29 18:03:59.891357399 -0700
@@ -22,10 +22,10 @@
#
INC =
-GCC_PREFIX = $(shell dirname `which gcc`)
+GCC_PREFIX =
GCC_SUFFIX =
-CC = $(GCC_PREFIX)/gcc$(GCC_SUFFIX)
-CPP = $(GCC_PREFIX)/g++$(GCC_SUFFIX)
+CC = cc
+CPP = c++
CXX = $(CPP)
HEADERS = $(wildcard *.h)
BOWTIE_MM = 1

View File

@@ -0,0 +1,24 @@
from spack import *
from glob import glob
class Bowtie2(Package):
"""Description"""
homepage = "bowtie-bio.sourceforge.net/bowtie2/index.shtml"
version('2.2.5','51fa97a862d248d7ee660efc1147c75f', url = "http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/2.2.5/bowtie2-2.2.5-source.zip")
patch('bowtie2-2.5.patch',when='@2.2.5', level=0)
def install(self, spec, prefix):
make()
mkdirp(prefix.bin)
for bow in glob("bowtie2*"):
install(bow, prefix.bin)
# install('bowtie2',prefix.bin)
# install('bowtie2-align-l',prefix.bin)
# install('bowtie2-align-s',prefix.bin)
# install('bowtie2-build',prefix.bin)
# install('bowtie2-build-l',prefix.bin)
# install('bowtie2-build-s',prefix.bin)
# install('bowtie2-inspect',prefix.bin)
# install('bowtie2-inspect-l',prefix.bin)
# install('bowtie2-inspect-s',prefix.bin)

View File

@@ -0,0 +1,17 @@
from spack import *
class Cscope(Package):
"""Cscope is a developer's tool for browsing source code."""
homepage = "http://http://cscope.sourceforge.net/"
url = "http://downloads.sourceforge.net/project/cscope/cscope/15.8b/cscope-15.8b.tar.gz"
version('15.8b', '8f9409a238ee313a96f9f87fe0f3b176')
# Can be configured to use flex (not necessary)
# ./configure --with-flex
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
make("install")

View File

@@ -0,0 +1,19 @@
from spack import *
class Czmq(Package):
""" A C interface to the ZMQ library """
homepage = "http://czmq.zeromq.org"
url = "https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz"
version('3.0.2', '23e9885f7ee3ce88d99d0425f52e9be1', url='https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz')
depends_on('zeromq')
def install(self, spec, prefix):
bash = which("bash")
bash("./autogen.sh")
configure("--prefix=%s" % prefix)
make()
make("install")

View File

@@ -0,0 +1,19 @@
import os
import glob
from spack import *
class DocbookXml(Package):
"""Docbook DTD XML files."""
homepage = "http://www.oasis-open.org/docbook"
url = "http://www.oasis-open.org/docbook/xml/4.5/docbook-xml-4.5.zip"
version('4.5', '03083e288e87a7e829e437358da7ef9e')
def install(self, spec, prefix):
cp = which('cp')
install_args = ['-a', '-t', prefix]
install_args.extend(glob.glob('*'))
cp(*install_args)

View File

@@ -0,0 +1,25 @@
#------------------------------------------------------------------------------
# Author: Justin Too <justin@doubleotoo.com>
# Date: September 11, 2015
#------------------------------------------------------------------------------
from spack import *
class Doxygen(Package):
"""Doxygen is the de facto standard tool for generating documentation
from annotated C++ sources, but it also supports other popular programming
languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba,
Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl, and to some extent D..
"""
homepage = "http://www.stack.nl/~dimitri/doxygen/"
url = "http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.10.src.tar.gz"
version('1.8.10', '79767ccd986f12a0f949015efb5f058f')
depends_on("cmake@2.8.12:")
def install(self, spec, prefix):
cmake('.', *std_cmake_args)
make()
make("install")

View File

@@ -1,17 +0,0 @@
from spack import *
class Eigen(Package):
"""Eigen is a C++ template library for linear algebra: matrices, vectors,
numerical solvers, and related algorithms.."""
homepage = "http://eigen.tuxfamily.org/"
url = "http://bitbucket.org/eigen/eigen/get/3.2.5.tar.gz"
version('3.2.5', '8cc513ac6ec687117acadddfcacf551b')
def install(self, spec, prefix):
import os
os.system("mkdir ./build_dir && cd ./build_dir")
cmake('../', *std_cmake_args)
make()
make("install")

View File

@@ -0,0 +1,26 @@
from spack import *
class Elfutils(Package):
"""elfutils is a collection of various binary tools such as
eu-objdump, eu-readelf, and other utilities that allow you to
inspect and manipulate ELF files. Refer to Table 5.Tools Included
in elfutils for Red Hat Developer for a complete list of binary
tools that are distributed with the Red Hat Developer Toolset
version of elfutils."""
homepage = "https://fedorahosted.org/elfutils/"
version('0.163',
git='git://git.fedorahosted.org/git/elfutils.git',
tag='elfutils-0.163')
provides('elf')
def install(self, spec, prefix):
autoreconf = which('autoreconf')
autoreconf('-if')
configure('--prefix=%s' % prefix, '--enable-maintainer-mode')
make()
make("install")

View File

@@ -0,0 +1,18 @@
from spack import *
class Fish(Package):
"""fish is a smart and user-friendly command line shell for OS X, Linux, and
the rest of the family.
"""
homepage = "http://fishshell.com/"
url = "http://fishshell.com/files/2.2.0/fish-2.2.0.tar.gz"
list_url = homepage
version('2.2.0', 'a76339fd14ce2ec229283c53e805faac48c3e99d9e3ede9d82c0554acfc7b77a')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
make("install")

View File

@@ -0,0 +1,36 @@
from spack import *
import os
class Flux(Package):
""" A next-generation resource manager (pre-alpha) """
homepage = "https://github.com/flux-framework/flux-core"
url = "https://github.com/flux-framework/flux-core"
version('master', branch='master', git='https://github.com/flux-framework/flux-core')
# Also needs autotools, but should use the system version if available
depends_on("zeromq@4.0.4:")
depends_on("czmq@2.2:")
depends_on("lua@5.1:5.1.99")
depends_on("munge")
depends_on("libjson-c")
depends_on("libxslt")
# TODO: This provides a catalog, hacked with environment below for now
depends_on("docbook-xml")
depends_on("asciidoc")
depends_on("python")
depends_on("py-cffi")
def install(self, spec, prefix):
# Bootstrap with autotools
bash = which('bash')
bash('./autogen.sh')
# Fix asciidoc dependency on xml style sheets and whatnot
os.environ['XML_CATALOG_FILES'] = os.path.join(spec['docbook-xml'].prefix,
'catalog.xml')
# Configure, compile & install
configure("--prefix=" + prefix)
make("install", "V=1")

View File

@@ -0,0 +1,21 @@
import os
from spack import *
class Gflags(Package):
"""The gflags package contains a C++ library that implements
commandline flags processing. It includes built-in support for
standard types such as string and the ability to define flags
in the source file in which they are used. Online documentation
available at: https://gflags.github.io/gflags/"""
homepage = "https://gflags.github.io/gflags"
url = "https://github.com/gflags/gflags/archive/v2.1.2.tar.gz"
version('2.1.2', 'ac432de923f9de1e9780b5254884599f')
def install(self, spec, prefix):
cmake("-DCMAKE_INSTALL_PREFIX=" + prefix,
"-DBUILD_SHARED_LIBS=ON")
make()
make("test")
make("install")

View File

@@ -0,0 +1,17 @@
from spack import *
class Ghostscript(Package):
"""an interpreter for the PostScript language and for PDF. """
homepage = "http://ghostscript.com/"
url = "http://downloads.ghostscript.com/public/ghostscript-9.16.tar.gz"
version('9.16', '829319325bbdb83f5c81379a8f86f38f')
parallel = False
def install(self, spec, prefix):
configure("--prefix=%s" %prefix, "--enable-shared")
make()
make("install")

View File

@@ -0,0 +1,15 @@
import os
from spack import *
class Glog(Package):
"""C++ implementation of the Google logging module."""
homepage = "https://github.com/google/glog"
url = "https://github.com/google/glog/archive/v0.3.3.tar.gz"
version('0.3.3', 'c1f86af27bd9c73186730aa957607ed0')
def install(self, spec, prefix):
configure("--prefix=" + prefix)
make()
make("install")

View File

@@ -1,24 +1,21 @@
from spack import * from spack import *
class Graphviz(Package): class Graphviz(Package):
"""graph visualization software.""" """Graph Visualization Software"""
homepage = "http://www.graphviz.org" homepage = "http://www.graphviz.org"
url = "http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz" url = "http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz"
version('2.38.0', '5b6a829b2ac94efcd5fa3c223ed6d3ae') version('2.38.0', '5b6a829b2ac94efcd5fa3c223ed6d3ae')
version('2.36.0', '1f41664dba0c93109ac8b71216bf2b57')
depends_on("cairo@1.1.10") parallel = False
depends_on("freetype@2.1.10")
depends_on("fontconfig") depends_on("swig")
depends_on("zlib@1.2.3") depends_on("python")
# depends_on("libpng@1.2.10") depends_on("ghostscript")
# depends_on("expat@2.0.0")
# depends_on("gd@2.0.34")
def install(self, spec, prefix): def install(self, spec, prefix):
configure('--prefix=%s' % prefix) configure("--prefix=%s" %prefix)
# FIXME: Add logic to build and install here
make() make()
make("install") make("install")

View File

@@ -0,0 +1,29 @@
import os
import glob
from spack import *
class Leveldb(Package):
"""LevelDB is a fast key-value storage library written at Google
that provides an ordered mapping from string keys to string values."""
homepage = "https://github.com/google/leveldb"
url = "https://github.com/google/leveldb/archive/v1.18.tar.gz"
version('1.18', '73770de34a2a5ab34498d2e05b2b7fa0')
depends_on("snappy")
def install(self, spec, prefix):
make()
mkdirp(prefix.include)
mkdirp(prefix.lib)
cp = which('cp')
# cp --preserve=links libleveldb.* prefix/lib
args = glob.glob('libleveldb.*')
args.append(prefix + '/lib')
cp('--preserve=links', *args)
cp('-r', 'include/leveldb', prefix + '/include')

View File

@@ -2,7 +2,7 @@
class Libdrm(Package): class Libdrm(Package):
"""A userspace library for accessing the DRM, direct """A userspace library for accessing the DRM, direct
rendering manager, on Linux, BSD and other operating rendering manager, on Linux, BSD and other operating
systems that support the ioctl interface.""" systems that support the ioctl interface."""
homepage = "http://dri.freedesktop.org/libdrm/" # no real website... homepage = "http://dri.freedesktop.org/libdrm/" # no real website...
@@ -11,11 +11,8 @@ class Libdrm(Package):
version('2.4.59', '105ac7af1afcd742d402ca7b4eb168b6') version('2.4.59', '105ac7af1afcd742d402ca7b4eb168b6')
version('2.4.33', '86e4e3debe7087d5404461e0032231c8') version('2.4.33', '86e4e3debe7087d5404461e0032231c8')
depends_on("libpciaccess")
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=%s" % prefix) configure("--prefix=%s" % prefix)
make("clean")
make() make()
make("install") make("install")

View File

@@ -36,6 +36,8 @@ class Libelf(Package):
version('0.8.13', '4136d7b4c04df68b686570afa26988ac') version('0.8.13', '4136d7b4c04df68b686570afa26988ac')
version('0.8.12', 'e21f8273d9f5f6d43a59878dc274fec7') version('0.8.12', 'e21f8273d9f5f6d43a59878dc274fec7')
provides('elf')
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=" + prefix, configure("--prefix=" + prefix,
"--enable-shared", "--enable-shared",

View File

@@ -6,9 +6,9 @@ class Libffi(Package):
to call any function specified by a call interface description at to call any function specified by a call interface description at
run time.""" run time."""
homepage = "https://sourceware.org/libffi/" homepage = "https://sourceware.org/libffi/"
url = "ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz"
version('3.2.1','83b89587607e3eb65c70d361f13bab43',url = "ftp://sourceware.org/pub/libffi/libffi-3.2.1.tar.gz")
version('3.1', 'f5898b29bbfd70502831a212d9249d10') #version('3.1', 'f5898b29bbfd70502831a212d9249d10',url = "ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz") # Has a bug $(lib64) instead of ${lib64} in libffi.pc
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=%s" % prefix) configure("--prefix=%s" % prefix)

View File

@@ -0,0 +1,14 @@
from spack import *
class LibjsonC(Package):
""" A JSON implementation in C """
homepage = "https://github.com/json-c/json-c/wiki"
url = "https://s3.amazonaws.com/json-c_releases/releases/json-c-0.11.tar.gz"
version('0.11', 'aa02367d2f7a830bf1e3376f77881e98')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
make("install")

View File

@@ -1,16 +1,21 @@
from spack import * from spack import *
class Libpciaccess(Package): class Libpciaccess(Package):
"""Generic PCI access library""" """Generic PCI access library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/"
url = "http://pkgs.fedoraproject.org/repo/pkgs/libpciaccess/libpciaccess-0.13.2.tar.bz2/b7c0d3afce14eedca57312a3141ec13a/libpciaccess-0.13.2.tar.bz2"
version('0.13.2', 'b7c0d3afce14eedca57312a3141ec13a') homepage = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/"
url = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/"
version('0.13.4', git='http://anongit.freedesktop.org/git/xorg/lib/libpciaccess.git',
tag='libpciaccess-0.13.4')
depends_on('autoconf')
depends_on('libtool')
def install(self, spec, prefix): def install(self, spec, prefix):
import os from subprocess import call
os.system("autoconf") call(["./autogen.sh"])
configure('--prefix=%s' % prefix) configure("--prefix=%s" % prefix)
make() make()
make("install") make("install")

View File

@@ -0,0 +1,19 @@
from spack import *
class Libsodium(Package):
"""Sodium is a modern, easy-to-use software library for encryption,
decryption, signatures, password hashing and more."""
homepage = "https://download.libsodium.org/doc/"
url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.3.tar.gz"
version('1.0.3', 'b3bcc98e34d3250f55ae196822307fab')
version('1.0.2', 'dc40eb23e293448c6fc908757738003f')
version('1.0.1', '9a221b49fba7281ceaaf5e278d0f4430')
version('1.0.0', '3093dabe4e038d09f0d150cef064b2f7')
version('0.7.1', 'c224fe3923d1dcfe418c65c8a7246316')
def install(self, spec, prefix):
configure("--prefix=%s" % prefix)
make()
make("install")

View File

@@ -9,11 +9,12 @@ class Libxml2(Package):
version('2.9.2', '9e6a9aca9d155737868b3dc5fd82f788') version('2.9.2', '9e6a9aca9d155737868b3dc5fd82f788')
extends('python')
depends_on('zlib') depends_on('zlib')
depends_on('xz') depends_on('xz')
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=%s" % prefix, configure("--prefix=%s" % prefix)
"--without-python")
make() make()
make("install") make("install")

View File

@@ -0,0 +1,39 @@
import os
from spack import *
class Lmdb(Package):
"""Read-only mirror of official repo on openldap.org. Issues and
pull requests here are ignored. Use OpenLDAP ITS for issues.
http://www.openldap.org/software/repo.html"""
homepage = "http://www.openldap.org/software/repo.html"
url = "https://github.com/LMDB/lmdb/archive/LMDB_0.9.16.tar.gz"
version('0.9.16', '0de89730b8f3f5711c2b3a4ba517b648')
def install(self, spec, prefix):
os.chdir('libraries/liblmdb')
make()
mkdirp(prefix.bin)
mkdirp(prefix + '/man/man1')
mkdirp(prefix.lib)
mkdirp(prefix.include)
bins = ['mdb_stat', 'mdb_copy', 'mdb_dump', 'mdb_load']
for f in bins:
install(f, prefix.bin)
mans = ['mdb_stat.1', 'mdb_copy.1', 'mdb_dump.1', 'mdb_load.1']
for f in mans:
install(f, prefix + '/man/man1')
libs = ['liblmdb.a', 'liblmdb.so']
for f in libs:
install(f, prefix.lib)
includes = ['lmdb.h']
for f in includes:
install(f, prefix.include)

View File

@@ -0,0 +1,26 @@
from spack import *
import os
class Lua(Package):
""" The Lua programming language interpreter and library """
homepage = "http://www.lua.org"
url = "http://www.lua.org/ftp/lua-5.1.5.tar.gz"
version('5.3.1', '797adacada8d85761c079390ff1d9961')
version('5.3.0', 'a1b0a7e92d0c85bbff7a8d27bf29f8af')
version('5.2.4', '913fdb32207046b273fdb17aad70be13')
version('5.2.3', 'dc7f94ec6ff15c985d2d6ad0f1b35654')
version('5.2.2', 'efbb645e897eae37cad4344ce8b0a614')
version('5.2.1', 'ae08f641b45d737d12d30291a5e5f6e3')
version('5.2.0', 'f1ea831f397214bae8a265995ab1a93e')
version('5.1.5', '2e115fe26e435e33b0d5c022e4490567')
version('5.1.4', 'd0870f2de55d59c1c8419f36e8fac150')
version('5.1.3', 'a70a8dfaa150e047866dc01a46272599')
depends_on('ncurses')
def install(self, spec, prefix):
make('INSTALL_TOP=%s' % prefix,
'MYLDFLAGS=-L%s/lib' % spec['ncurses'].prefix,
'linux',
'install')

View File

@@ -1,7 +1,7 @@
from spack import * from spack import *
class Mesa(Package): class Mesa(Package):
"""Mesa is an open-source implementation of the OpenGL """Mesa is an open-source implementation of the OpenGL
specification - a system for rendering interactive 3D graphics.""" specification - a system for rendering interactive 3D graphics."""
homepage = "http://www.mesa3d.org" homepage = "http://www.mesa3d.org"
@@ -11,9 +11,10 @@ class Mesa(Package):
# version('10.4.4', '8d863a3c209bf5116b2babfccccc68ce') # version('10.4.4', '8d863a3c209bf5116b2babfccccc68ce')
version('8.0.5', 'cda5d101f43b8784fa60bdeaca4056f2') version('8.0.5', 'cda5d101f43b8784fa60bdeaca4056f2')
# mesa 7.x, 8.x, 9.x # mesa 7.x, 8.x, 9.x
depends_on("libdrm@2.4.33") depends_on("libdrm@2.4.33")
depends_on("llvm@3.0") depends_on("llvm@3.0")
depends_on("libxml2")
# patch("llvm-fixes.patch") # using newer llvm # patch("llvm-fixes.patch") # using newer llvm

View File

@@ -38,7 +38,6 @@ class Mpich(Package):
provides('mpi@:3', when='@3:') provides('mpi@:3', when='@3:')
provides('mpi@:1', when='@1:') provides('mpi@:1', when='@1:')
def setup_dependent_environment(self, module, spec, dep_spec): def setup_dependent_environment(self, module, spec, dep_spec):
"""For dependencies, make mpicc's use spack wrapper.""" """For dependencies, make mpicc's use spack wrapper."""
os.environ['MPICH_CC'] = 'cc' os.environ['MPICH_CC'] = 'cc'

View File

@@ -0,0 +1,20 @@
from spack import *
import os
class Munge(Package):
""" MUNGE Uid 'N' Gid Emporium """
homepage = "https://code.google.com/p/munge/"
url = "https://github.com/dun/munge/releases/download/munge-0.5.11/munge-0.5.11.tar.bz2"
version('0.5.11', 'bd8fca8d5f4c1fcbef1816482d49ee01', url='https://github.com/dun/munge/releases/download/munge-0.5.11/munge-0.5.11.tar.bz2')
depends_on('openssl')
depends_on('libgcrypt')
def install(self, spec, prefix):
os.makedirs(os.path.join(prefix, "lib/systemd/system"))
configure("--prefix=%s" % prefix)
make()
make("install")

View File

@@ -21,3 +21,11 @@ def install(self, spec, prefix):
make() make()
make("install") make("install")
configure("--prefix=%s" % prefix,
"--with-shared",
"--disable-widec",
"--disable-pc-files",
"--without-ada")
make()
make("install")

View File

@@ -9,6 +9,8 @@ class NetlibBlas(Package):
version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf') version('3.5.0', 'b1d3e3e425b2e44a06760ff173104bdf')
variant('fpic', default=False, description="Build with -fpic compiler option")
# virtual dependency # virtual dependency
provides('blas') provides('blas')
@@ -23,6 +25,10 @@ def patch(self):
mf.filter('^LOADER.*', 'LOADER = f90') mf.filter('^LOADER.*', 'LOADER = f90')
mf.filter('^CC =.*', 'CC = cc') mf.filter('^CC =.*', 'CC = cc')
if '+fpic' in self.spec:
mf.filter('^OPTS.*=.*', 'OPTS = -O2 -frecursive -fpic')
mf.filter('^CFLAGS =.*', 'CFLAGS = -O3 -fpic')
def install(self, spec, prefix): def install(self, spec, prefix):
make('blaslib') make('blaslib')

View File

@@ -1,6 +1,6 @@
from spack import * from spack import *
class Lapack(Package): class NetlibLapack(Package):
""" """
LAPACK version 3.X is a comprehensive FORTRAN library that does LAPACK version 3.X is a comprehensive FORTRAN library that does
linear algebra operations including matrix inversions, least linear algebra operations including matrix inversions, least
@@ -18,9 +18,16 @@ class Lapack(Package):
version('3.4.0', '02d5706ec03ba885fc246e5fa10d8c70') version('3.4.0', '02d5706ec03ba885fc246e5fa10d8c70')
version('3.3.1', 'd0d533ec9a5b74933c2a1e84eedc58b4') version('3.3.1', 'd0d533ec9a5b74933c2a1e84eedc58b4')
variant('shared', default=False, description="Build shared library version")
# virtual dependency
provides('lapack')
# blas is a virtual dependency. # blas is a virtual dependency.
depends_on('blas') depends_on('blas')
depends_on('cmake')
# Doesn't always build correctly in parallel # Doesn't always build correctly in parallel
parallel = False parallel = False
@@ -39,7 +46,14 @@ def get_blas_libs(self):
def install(self, spec, prefix): def install(self, spec, prefix):
blas_libs = ";".join(self.get_blas_libs()) blas_libs = ";".join(self.get_blas_libs())
cmake(".", '-DBLAS_LIBRARIES=' + blas_libs, *std_cmake_args) cmake_args = [".", '-DBLAS_LIBRARIES=' + blas_libs]
if '+shared' in spec:
cmake_args.append('-DBUILD_SHARED_LIBS=ON')
cmake_args += std_cmake_args
cmake(*cmake_args)
make() make()
make("install") make("install")

View File

@@ -0,0 +1,21 @@
from spack import *
class Pidx(Package):
"""PIDX Parallel I/O Library.
PIDX is an efficient parallel I/O library that reads and writes
multiresolution IDX data files.
"""
homepage = "http://www.cedmav.com/pidx"
version('1.0', git='https://github.com/sci-visus/PIDX.git',
commit='6afa1cf71d1c41263296dc049c8fabaf73c296da')
depends_on("mpi")
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
cmake('..', *std_cmake_args)
make()
make("install")

View File

@@ -0,0 +1,17 @@
from spack import *
class PkgConfig(Package):
"""pkg-config is a helper tool used when compiling applications and libraries"""
homepage = "http://www.freedesktop.org/wiki/Software/pkg-config/"
url = "http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz"
version('0.28', 'aa3c86e67551adc3ac865160e34a2a0d')
parallel = False
def install(self, spec, prefix):
configure("--prefix=%s" %prefix, "--enable-shared")
make()
make("install")

View File

@@ -0,0 +1,16 @@
import os
from spack import *
class Protobuf(Package):
"""Google's data interchange format."""
homepage = "https://developers.google.com/protocol-buffers"
url = "https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.bz2"
version('2.5.0', 'a72001a9067a4c2c4e0e836d0f92ece4')
def install(self, spec, prefix):
configure("--prefix=" + prefix)
make()
make("check")
make("install")

View File

@@ -1,12 +0,0 @@
from spack import *
class PyCython(Package):
"""The Cython compiler for writing C extensions for the Python language."""
homepage = "http://www.cython.org"
version("0.21.2", "d21adb870c75680dc857cd05d41046a4",
url="https://pypi.python.org/packages/source/C/Cython/Cython-0.21.2.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,15 +0,0 @@
from spack import *
class PyDistutils2(Package):
"""Python Packaging Library."""
homepage = "https://hg.python.org/distutils2"
url = "https://pypi.python.org/packages/source/D/Distutils2/Distutils2-1.0a4.tar.gz"
version('1.0a4', '52bc9dffb394970c27e02853ae3a3241')
depends_on("python")
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyAstroml(Package):
"""tools for machine learning and data mining in Astronomy"""
homepage = "http://astroML.github.com"
version("0.2", "85f558368546660564f20b30efafb024",
url="https://pypi.python.org/packages/source/a/astroML/astroML-0.2.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyAstropy(Package):
"""Community-developed python astronomy tools"""
homepage = "http://astropy.org"
version("0.4.2", "6dc4f643cde37ba0a8b4967dc8becee8",
url="https://pypi.python.org/packages/source/a/astropy/astropy-0.4.2.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyAutopep8(Package):
"""A tool that automatically formats Python code to conform to the PEP 8 style guide"""
homepage = "https://github.com/hhatto/autopep8"
version("1.1", "7998358d8f0efd77dcb2cc8e34e3cb5c",
url="https://pypi.python.org/packages/source/a/autopep8/autopep8-1.1.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyCertifi(Package):
"""Python package for providing Mozilla's CA Bundle."""
homepage = "http://python-requests.org"
version("14.05.14", "315ea4e50673a16ab047099f816fd32a",
url="https://pypi.python.org/packages/source/c/certifi/certifi-14.05.14.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyDecorator(Package):
"""Better living through Python with decorators"""
homepage = "https://github.com/micheles/decorator"
version("4.0.4", "dd3a0669e1e6f09699eefa2c7fbd9756",
url="https://pypi.python.org/packages/source/d/decorator/decorator-4.0.4.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyEmcee(Package):
"""Kick ass affine-invariant ensemble MCMC sampling"""
homepage = "http://dan.iel.fm/emcee/"
version("2.1.0", "c6b6fad05c824d40671d4a4fc58dfff7",
url="https://pypi.python.org/packages/source/e/emcee/emcee-2.1.0.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,13 +0,0 @@
from spack import *
class PyFitsio(Package):
"""A full featured python library to read from and write to FITS files."""
homepage = "https://github.com/esheldon/fitsio"
version("0.9.7", "75fa05f999ae8f55c8290bd78ada49e7",
url="https://pypi.python.org/packages/source/f/fitsio/fitsio-0.9.7.tar.gz")
extends("python")
depends_on("py-numpy")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyGnureadline(Package):
"""The standard Python readline extension statically linked against the GNU readline library."""
homepage = "http://github.com/ludwigschwardt/python-gnureadline"
version("6.3.3", "c4af83c9a3fbeac8f2da9b5a7c60e51c",
url="https://pypi.python.org/packages/source/g/gnureadline/gnureadline-6.3.3.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -3,29 +3,14 @@
class PyIpython(Package): class PyIpython(Package):
"""IPython provides a rich toolkit to help you make the most out of using Python interactively.""" """IPython provides a rich toolkit to help you make the most out of using Python interactively."""
homepage = "https://pypi.python.org/pypi/ipython" homepage = "https://pypi.python.org/pypi/ipython"
url = "https://pypi.python.org/packages/source/i/ipython/ipython-2.3.1.tar.gz"
version('3.0.0','b3f00f3c0be036fafef3b0b9d663f27e', version('2.3.1', '2b7085525dac11190bfb45bb8ec8dcbf')
url='https://pypi.python.org/packages/source/i/ipython/ipython-3.0.0.tar.gz')
version('4.0.0','c2fecbcf1c0fbdc82625c77a50733dd6',
url='https://pypi.python.org/packages/source/i/ipython/ipython-4.0.0.tar.gz')
version('2.3.1', '2b7085525dac11190bfb45bb8ec8dcbf',
url="https://pypi.python.org/packages/source/i/ipython/ipython-2.3.1.tar.gz")
version('3.1.0', 'a749d90c16068687b0ec45a27e72ef8f') version('3.1.0', 'a749d90c16068687b0ec45a27e72ef8f')
version('3.2.1', 'f4c93d67ac4b2d4fc69df693b6f3c9e0',
url='https://github.com/ipython/ipython/archive/rel-3.2.1.tar.gz')
extends('python') extends('python')
depends_on('py-pygments') depends_on('py-pygments')
depends_on('py-setuptools@18.1') depends_on('py-setuptools')
depends_on('py-traitlets')
depends_on('py-pyzmq')
depends_on('py-pexpect')
depends_on('py-tornado')
depends_on('py-jinja2')
def install(self, spec, prefix): def install(self, spec, prefix):
import os
# os.system("spack activate py-setuptools@18.1")
# os.system("easy_install pip")
# os.system("pip install ipython[notebook]")
python('setup.py', 'install', '--prefix=%s' % prefix) python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,27 +0,0 @@
from spack import *
class PyIpython(Package):
"""IPython provides a rich toolkit to help you make the most out of using Python interactively."""
homepage = "https://pypi.python.org/pypi/ipython"
version('2.3.1', '2b7085525dac11190bfb45bb8ec8dcbf',
url="https://pypi.python.org/packages/source/i/ipython/ipython-2.3.1.tar.gz")
version('3.1.0', 'a749d90c16068687b0ec45a27e72ef8f')
version('3.2.1', 'f4c93d67ac4b2d4fc69df693b6f3c9e0',
url='https://github.com/ipython/ipython/archive/rel-3.2.1.tar.gz')
extends('python')
depends_on('py-pygments')
depends_on('py-setuptools@18.1')
depends_on('py-traitlets')
depends_on('py-pyzmq')
depends_on('py-pexpect')
depends_on('py-tornado')
depends_on('py-Jinja2')
def install(self, spec, prefix):
import os
# os.system("spack activate py-setuptools@18.1")
# os.system("easy_install pip")
# os.system("pip install ipython[notebook]")
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyIpythonGenutils(Package):
"""Vestigial utilities from IPython"""
homepage = "http://ipython.org"
version("0.1.0", "9a8afbe0978adbcbfcb3b35b2d015a56",
url="https://pypi.python.org/packages/source/i/ipython_genutils/ipython_genutils-0.1.0.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyJoblib(Package):
"""Lightweight pipelining: using Python functions as pipeline jobs."""
homepage = "http://packages.python.org/joblib/"
version("0.8.4", "90a1c25cc4dc4a8e3536093dbc35cff3",
url="https://pypi.python.org/packages/source/j/joblib/joblib-0.8.4.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,16 +0,0 @@
from spack import *
class PyJsonschema(Package):
"""implementation of JSON Schema validation for Python"""
homepage = "https://github.com/Julian/jsonschema"
url = "https://pypi.python.org/packages/source/j/jsonschema/jsonschema-2.5.1.tar.gz"
version('2.4.0','661f85c3d23094afbb9ac3c0673840bf',
url='https://pypi.python.org/packages/source/j/jsonschema/jsonschema-2.4.0.tar.gz')
version('2.5.1', '374e848fdb69a3ce8b7e778b47c30640')
extends("python")
depends_on("py-setuptools@18.1")
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -12,6 +12,7 @@ class PyMatplotlib(Package):
extends('python', ignore=r'bin/nosetests.*$') extends('python', ignore=r'bin/nosetests.*$')
depends_on('py-pyside') depends_on('py-pyside')
depends_on('py-ipython')
depends_on('py-pyparsing') depends_on('py-pyparsing')
depends_on('py-six') depends_on('py-six')
depends_on('py-dateutil') depends_on('py-dateutil')

View File

@@ -1,12 +1,17 @@
from spack import * from spack import *
class PyMock(Package): class PyMock(Package):
"""A Python Mocking and Patching Library for Testing""" """mock is a library for testing in Python. It allows you to replace parts
homepage = "http://www.voidspace.org.uk/python/mock/" of your system under test with mock objects and make assertions about how
version("1.0.1", "c3971991738caa55ec7c356bbc154ee2", they have been used."""
url="https://pypi.python.org/packages/source/m/mock/mock-1.0.1.tar.gz")
extends("python") homepage = "https://github.com/testing-cabal/mock"
url = "https://pypi.python.org/packages/source/m/mock/mock-1.3.0.tar.gz"
version('1.3.0', '73ee8a4afb3ff4da1b4afa287f39fdeb')
extends('python')
depends_on('py-setuptools@17.1:')
def install(self, spec, prefix): def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix) python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyNumexpr(Package):
"""Fast numerical expression evaluator for NumPy"""
homepage = "https://github.com/pydata/numexpr"
version("2.4", "df7e8d9e9dbb145b56d43c465c2bf854",
url="https://pypi.python.org/packages/source/n/numexpr/numexpr-2.4.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -7,9 +7,22 @@ class PyNumpy(Package):
version('1.9.1', '78842b73560ec378142665e712ae4ad9') version('1.9.1', '78842b73560ec378142665e712ae4ad9')
version('1.9.2', 'a1ed53432dbcd256398898d35bc8e645') version('1.9.2', 'a1ed53432dbcd256398898d35bc8e645')
extends('python') extends('python')
depends_on('py-nose') depends_on('py-nose')
depends_on('netlib-blas+fpic')
depends_on('netlib-lapack+shared')
def patch(self):
filter_file(
"possible_executables = \['(gfortran|g77|ifort|efl)",
"possible_executables = ['fc",
"numpy/distutils/fcompiler/gnu.py",
"numpy/distutils/fcompiler/intel.py")
def install(self, spec, prefix): def install(self, spec, prefix):
with open('site.cfg', 'w') as f:
f.write('[DEFAULT]\n')
f.write('libraries=lapack,blas\n')
f.write('library_dirs=%s/lib:%s/lib\n' % (spec['blas'].prefix, spec['lapack'].prefix))
python('setup.py', 'install', '--prefix=%s' % prefix) python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -6,8 +6,6 @@ class PyPandas(Package):
homepage = "http://pandas.pydata.org/" homepage = "http://pandas.pydata.org/"
url = "https://pypi.python.org/packages/source/p/pandas/pandas-0.16.0.tar.gz#md5=bfe311f05dc0c351f8955fbd1e296e73" url = "https://pypi.python.org/packages/source/p/pandas/pandas-0.16.0.tar.gz#md5=bfe311f05dc0c351f8955fbd1e296e73"
version('0.15.1','f6fd8d49fc801f6f3fa48f9117a6290b',
url='https://pypi.python.org/packages/source/p/pandas/pandas-0.15.1.tar.gz')
version('0.16.0', 'bfe311f05dc0c351f8955fbd1e296e73') version('0.16.0', 'bfe311f05dc0c351f8955fbd1e296e73')
version('0.16.1', 'fac4f25748f9610a3e00e765474bdea8') version('0.16.1', 'fac4f25748f9610a3e00e765474bdea8')

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPep8(Package):
"""Python style guide checker"""
homepage = "http://pep8.readthedocs.org/"
version("1.6.1", "76cf60b245f8549cb458ffcd85710738",
url="https://pypi.python.org/packages/source/p/pep8/pep8-1.6.1.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPickleshare(Package):
"""Tiny 'shelve'-like database with concurrency support"""
homepage = "https://github.com/vivainio/pickleshare"
version("0.5", "25337740507cb855ad58bfcf60f7710e",
url="https://pypi.python.org/packages/source/p/pickleshare/pickleshare-0.5.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPip(Package):
"""The PyPA recommended tool for installing Python packages."""
homepage = "https://pip.pypa.io/"
version("7.1.2", "3823d2343d9f3aaab21cf9c917710196",
url="https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPy(Package):
"""library with cross-python path, ini-parsing, io, code, log facilities"""
homepage = "http://pylib.readthedocs.org/"
version("1.4.26", "30c3fd92a53f1a5ed6f3591c1fe75c0e",
url="https://pypi.python.org/packages/source/p/py/py-1.4.26.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,15 +0,0 @@
from spack import *
class PyPy4j(Package):
"""Enables Python programs to dynamically access arbitrary Java objects"""
homepage = "https://www.py4j.org/"
url = "https://pypi.python.org/packages/source/p/py4j/py4j-0.9.tar.gz"
version('0.9', 'b6fed5faef81a5368e3d50a91a5c9a60')
extends("python")
depends_on("py-setuptools@18.1")
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -8,9 +8,12 @@ class PyPyside(Package):
version('1.2.2', 'c45bc400c8a86d6b35f34c29e379e44d') version('1.2.2', 'c45bc400c8a86d6b35f34c29e379e44d')
# TODO: make build dependency
# depends_on("cmake")
extends('python') extends('python')
depends_on('py-setuptools') depends_on('py-setuptools')
depends_on('qt@5.4.0') depends_on('qt@:4')
def patch(self): def patch(self):
"""Undo PySide RPATH handling and add Spack RPATH.""" """Undo PySide RPATH handling and add Spack RPATH."""

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPytest(Package):
"""pytest: simple powerful testing with Python"""
homepage = "http://pytest.org"
version("2.6.4", "14341e122f7e9031a0948eb6b01a2640",
url="https://pypi.python.org/packages/source/p/pytest/pytest-2.6.4.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyPythonDateutil(Package):
"""Extensions to the standard Python datetime module"""
homepage = "http://labix.org/python-dateutil"
version("2.2", "c1f654d0ff7e33999380a8ba9783fd5c",
url="https://pypi.python.org/packages/source/p/python-dateutil/python-dateutil-2.2.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -5,8 +5,6 @@ class PyPytz(Package):
homepage = "https://pypi.python.org/pypi/pytz" homepage = "https://pypi.python.org/pypi/pytz"
url = "https://pypi.python.org/packages/source/p/pytz/pytz-2014.10.tar.gz" url = "https://pypi.python.org/packages/source/p/pytz/pytz-2014.10.tar.gz"
version('2014.9','d42bda2f4c1e873e02fbd1e4acfd1b8c',
url='https://pypi.python.org/packages/source/p/pytz/pytz-2014.9.tar.gz')
version('2014.10', 'eb1cb941a20c5b751352c52486aa1dd7') version('2014.10', 'eb1cb941a20c5b751352c52486aa1dd7')
version('2015.4', '417a47b1c432d90333e42084a605d3d8') version('2015.4', '417a47b1c432d90333e42084a605d3d8')

View File

@@ -1,16 +0,0 @@
from spack import *
class PyPyzmq(Package):
"""official Python binding for the ZeroMQ Messaging Library"""
homepage = "https://github.com/zeromq/pyzmq"
url = "https://pypi.python.org/packages/source/p/pyzmq/pyzmq-14.7.0.tar.gz"
version('14.4.1','a6a7fb6950b1bf5333c6795f3edf196c',
url='https://pypi.python.org/packages/source/p/pyzmq/pyzmq-14.4.1.tar.gz')
version('14.7.0', '87e3abb33af5794db5ae85c667bbf324')
extends('python')
depends_on('py-setuptools@18.1')
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -9,9 +9,6 @@ class PyScikitLearn(Package):
version('0.16.1', '363ddda501e3b6b61726aa40b8dbdb7e') version('0.16.1', '363ddda501e3b6b61726aa40b8dbdb7e')
extends('python') extends('python')
depends_on('python@2.7.10')
depends_on('py-numpy@1.9.2')
depends_on('py-scipy@0.15.1')
def install(self, spec, prefix): def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix) python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -5,14 +5,14 @@ class PyScipy(Package):
homepage = "https://pypi.python.org/pypi/scipy" homepage = "https://pypi.python.org/pypi/scipy"
url = "https://pypi.python.org/packages/source/s/scipy/scipy-0.15.0.tar.gz" url = "https://pypi.python.org/packages/source/s/scipy/scipy-0.15.0.tar.gz"
version('0.14.0','d7c7f4ccf8b07b08d6fe49d5cd51f85d',
url='https://pypi.python.org/packages/source/s/scipy/scipy-0.14.0.tar.gz')
version('0.15.0', '639112f077f0aeb6d80718dc5019dc7a') version('0.15.0', '639112f077f0aeb6d80718dc5019dc7a')
version('0.15.1', 'be56cd8e60591d6332aac792a5880110') version('0.15.1', 'be56cd8e60591d6332aac792a5880110')
extends('python') extends('python')
depends_on('py-nose') depends_on('py-nose')
depends_on('py-numpy') depends_on('py-numpy')
depends_on('blas')
depends_on('lapack')
def install(self, spec, prefix): def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix) python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PySeaborn(Package):
"""Seaborn: statistical data visualization"""
homepage = "http://stanford.edu/~mwaskom/software/seaborn/"
version("0.5.1", "2ce6ea7d3c67858c0b1f5793fa2043b8",
url="https://pypi.python.org/packages/source/s/seaborn/seaborn-0.5.1.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -3,12 +3,11 @@
class PySetuptools(Package): class PySetuptools(Package):
"""Easily download, build, install, upgrade, and uninstall Python packages.""" """Easily download, build, install, upgrade, and uninstall Python packages."""
homepage = "https://pypi.python.org/pypi/setuptools" homepage = "https://pypi.python.org/pypi/setuptools"
url = "https://pypi.python.org/packages/source/s/setuptools/setuptools-11.3.tar.gz"
version('18.1', 'f72e87f34fbf07f299f6cb46256a0b06', version('11.3.1', '01f69212e019a2420c1693fb43593930')
url='https://pypi.python.org/packages/source/s/setuptools/setuptools-18.1.tar.gz') version('16.0', '0ace0b96233516fc5f7c857d086aa3ad')
version('11.3.1', '01f69212e019a2420c1693fb43593930', version('18.1', 'f72e87f34fbf07f299f6cb46256a0b06')
url="https://pypi.python.org/packages/source/s/setuptools/setuptools-11.3.tar.gz")
version('16.0', '0ace0b96233516fc5f7c857d086aa3ad',)
extends('python') extends('python')

View File

@@ -5,8 +5,6 @@ class PySix(Package):
homepage = "https://pypi.python.org/pypi/six" homepage = "https://pypi.python.org/pypi/six"
url = "https://pypi.python.org/packages/source/s/six/six-1.9.0.tar.gz" url = "https://pypi.python.org/packages/source/s/six/six-1.9.0.tar.gz"
version('1.8.0','1626eb24cc889110c38f7e786ec69885',
url='https://pypi.python.org/packages/source/s/six/six-1.8.0.tar.gz')
version('1.9.0', '476881ef4012262dfc8adc645ee786c4') version('1.9.0', '476881ef4012262dfc8adc645ee786c4')
extends('python') extends('python')

View File

@@ -1,12 +0,0 @@
from spack import *
class PyStatsmodels(Package):
"""Statistical computations and models for use with SciPy"""
homepage = "http://statsmodels.sourceforge.net/"
version("0.6.1", "f7580ebf7d2a2c9b87abfad190dcb9a3",
url="https://pypi.python.org/packages/source/s/statsmodels/statsmodels-0.6.1.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyTables(Package):
"""Hierarchical datasets for Python"""
homepage = "http://www.pytables.org/"
version("3.1.1", "38d917f0c6dfb0bc28ce9ea0c3492524",
url="https://pypi.python.org/packages/source/t/tables/tables-3.1.1.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -1,17 +0,0 @@
from spack import *
class PyTornado(Package):
"""Python web framework and asynchronous networking library"""
homepage = "http://www.tornadoweb.org/"
url = "https://pypi.python.org/packages/source/t/tornado/tornado-4.2.1.tar.gz"
version('4.0.2','985c0e704b765c33a6193d49d1935588',
url='https://pypi.python.org/packages/source/t/tornado/tornado-4.0.2.tar.gz')
version('4.2.1', 'd523204389cfb70121bb69709f551b20')
extends('python')
depends_on('py-certifi')
depends_on('py-setuptools@18.1')
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,14 +0,0 @@
from spack import *
class PyTraitlets(Package):
"""A lightweight Traits like module"""
homepage = "http://traitlets.readthedocs.org/"
url = "https://github.com/ipython/traitlets/archive/4.0.0.tar.gz"
version('4.0.0', 'b5b95ea5941fd9619b4704dfd8201568')
extends('python')
depends_on("py-setuptools@18.1")
def install(self, spec, prefix):
python('setup.py', 'install', '--prefix=%s' % prefix)

View File

@@ -1,12 +0,0 @@
from spack import *
class PyTrianglePlot(Package):
"""Make some beautiful corner plots of samples."""
homepage = "https://github.com/dfm/triangle.py"
version("0.0.6", "970a35a9bde6002d673e3188fe39f0ed",
url="https://pypi.python.org/packages/source/t/triangle_plot/triangle_plot-0.0.6.tar.gz")
extends("python")
def install(self, spec, prefix):
python("setup.py", "install", "--prefix=%s" % prefix)

View File

@@ -0,0 +1,18 @@
from spack import *
class Samtools(Package):
"""SAM Tools provide various utilities for manipulating alignments in the SAM format,
including sorting, merging, indexing and generating
alignments in a per-position format"""
homepage = "www.htslib.org"
version('1.2','988ec4c3058a6ceda36503eebecd4122',url = "https://github.com/samtools/samtools/releases/download/1.2/samtools-1.2.tar.bz2")
depends_on("zlib")
depends_on("mpc")
parallel=False
patch("samtools1.2.patch",level=0)
def install(self, spec, prefix):
make("prefix=%s" % prefix, "install")

View File

@@ -0,0 +1,20 @@
--- Makefile 2015-02-03 08:27:34.000000000 -0800
+++ Makefile.new 2015-07-21 10:38:27.881406892 -0700
@@ -26,7 +26,7 @@
CFLAGS = -g -Wall -O2
LDFLAGS =
LDLIBS =
-DFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_CURSES_LIB=1
+DFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_CURSES_LIB=0
LOBJS= bam_aux.o bam.o bam_import.o sam.o \
sam_header.o bam_plbuf.o
AOBJS= bam_index.o bam_plcmd.o sam_view.o \
@@ -37,7 +37,7 @@
faidx.o stats.o stats_isize.o bam_flags.o bam_split.o \
bam_tview.o bam_tview_curses.o bam_tview_html.o bam_lpileup.o
INCLUDES= -I. -I$(HTSDIR)
-LIBCURSES= -lcurses # -lXCurses
+#LIBCURSES= -lcurses # -lXCurses
prefix = /usr/local
exec_prefix = $(prefix)

View File

@@ -1,11 +1,10 @@
# FIXME: Add copyright statement # FIXME: Add copyright statement
from spack import * from spack import *
from contextlib import closing
class Scorep(Package): class Scorep(Package):
"""The Score-P measurement infrastructure is a highly scalable and """The Score-P measurement infrastructure is a highly scalable and
easy-to-use tool suite for profiling, event tracing, and online easy-to-use tool suite for profiling, event tracing, and online
analysis of HPC applications.""" analysis of HPC applications."""
# FIXME: add a proper url for your package's homepage here. # FIXME: add a proper url for your package's homepage here.
@@ -20,7 +19,7 @@ class Scorep(Package):
depends_on("mpi") depends_on("mpi")
depends_on("papi") depends_on("papi")
# depends_on("otf2@1.2:1.2.1") # only Score-P 1.2.x # depends_on("otf2@1.2:1.2.1") # only Score-P 1.2.x
depends_on("otf2") depends_on("otf2")
depends_on("opari2") depends_on("opari2")
depends_on("cube@4.2:4.2.3") depends_on("cube@4.2:4.2.3")
@@ -53,12 +52,12 @@ def install(self, spec, prefix):
# Use a custom compiler configuration, otherwise the score-p # Use a custom compiler configuration, otherwise the score-p
# build system messes with spack's compiler settings. # build system messes with spack's compiler settings.
# Create these three files in the build directory # Create these three files in the build directory
with closing(open("platform-backend-user-provided", "w")) as backend_file: with open("platform-backend-user-provided", "w") as backend_file:
backend_file.write(self.backend_user_provided) backend_file.write(self.backend_user_provided)
with closing(open("platform-frontend-user-provided", "w")) as frontend_file: with open("platform-frontend-user-provided", "w") as frontend_file:
frontend_file.write(self.frontend_user_provided) frontend_file.write(self.frontend_user_provided)
with closing(open("platform-mpi-user-provided", "w")) as mpi_file: with open("platform-mpi-user-provided", "w") as mpi_file:
mpi_file.write(self.mpi_user_provided) mpi_file.write(self.mpi_user_provided)
configure_args = ["--prefix=%s" % prefix, configure_args = ["--prefix=%s" % prefix,
"--with-custom-compilers", "--with-custom-compilers",

View File

@@ -0,0 +1,15 @@
import os
from spack import *
class Snappy(Package):
"""A fast compressor/decompressor: https://code.google.com/p/snappy"""
homepage = "https://code.google.com/p/snappy"
url = "https://github.com/google/snappy/releases/download/1.1.3/snappy-1.1.3.tar.gz"
version('1.1.3', '7358c82f133dc77798e4c2062a749b73')
def install(self, spec, prefix):
configure("--prefix=" + prefix)
make()
make("install")

View File

@@ -9,17 +9,20 @@ class Stat(Package):
version('2.1.0', 'ece26beaf057aa9134d62adcdda1ba91') version('2.1.0', 'ece26beaf057aa9134d62adcdda1ba91')
version('2.0.0', 'c7494210b0ba26b577171b92838e1a9b') version('2.0.0', 'c7494210b0ba26b577171b92838e1a9b')
variant('dysect', default=False, description="enable DySectAPI")
depends_on('libelf') depends_on('libelf')
depends_on('libdwarf') depends_on('libdwarf')
depends_on('dyninst') depends_on('dyninst')
depends_on('graphlib') depends_on('graphlib')
depends_on('graphviz')
depends_on('launchmon') depends_on('launchmon')
depends_on('mrnet') depends_on('mrnet')
patch('configure_mpicxx.patch', when='@2.1.0') patch('configure_mpicxx.patch', when='@2.1.0')
def install(self, spec, prefix): def install(self, spec, prefix):
configure( configure_args = [
"--enable-gui", "--enable-gui",
"--prefix=%s" % prefix, "--prefix=%s" % prefix,
"--disable-examples", # Examples require MPI: avoid this dependency. "--disable-examples", # Examples require MPI: avoid this dependency.
@@ -27,7 +30,11 @@ def install(self, spec, prefix):
"--with-mrnet=%s" % spec['mrnet'].prefix, "--with-mrnet=%s" % spec['mrnet'].prefix,
"--with-graphlib=%s" % spec['graphlib'].prefix, "--with-graphlib=%s" % spec['graphlib'].prefix,
"--with-stackwalker=%s" % spec['dyninst'].prefix, "--with-stackwalker=%s" % spec['dyninst'].prefix,
"--with-libdwarf=%s" % spec['libdwarf'].prefix) "--with-libdwarf=%s" % spec['libdwarf'].prefix
]
if '+dysect' in spec:
configure_args.append('--enable-dysectapi')
configure(*configure_args)
make(parallel=False) make(parallel=False)
make("install") make("install")

View File

@@ -35,15 +35,26 @@ class Vim(Package):
variant('ruby', default=False, description="build with Ruby") variant('ruby', default=False, description="build with Ruby")
depends_on('ruby', when='+ruby') depends_on('ruby', when='+ruby')
variant('cscope', default=False, description="build with cscope support")
depends_on('cscope', when='+cscope')
variant('gui', default=False, description="build with gui (gvim)")
# virtual dependency?
def install(self, spec, prefix): def install(self, spec, prefix):
feature_set = None feature_set = None
for fs in self.feature_sets: for fs in self.feature_sets:
if "+" + fs in spec: if "+" + fs in spec:
if feature_set is not None: if feature_set is not None:
tty.error("Only one feature set allowed, both {} and {} specified".format( tty.error("Only one feature set allowed, both %s and %s specified"
feature_set, % (feature_set, fs))
fs))
feature_set = fs feature_set = fs
if '+gui' in spec:
if feature_set is not None:
if feature_set is not 'huge':
tty.error("+gui variant requires 'huge' feature set, %s was specified"
% feature_set)
feature_set = 'huge'
if feature_set is None: if feature_set is None:
feature_set = 'normal' feature_set = 'normal'
@@ -60,6 +71,12 @@ def install(self, spec, prefix):
else: else:
configure_args.append("--enable-rubyinterp=dynamic") configure_args.append("--enable-rubyinterp=dynamic")
if '+gui' in spec:
configure_args.append("--enable-gui=auto")
if '+cscope' in spec:
configure_args.append("--enable-cscope")
configure("--prefix=%s" % prefix, *configure_args) configure("--prefix=%s" % prefix, *configure_args)
make() make()

View File

@@ -0,0 +1,20 @@
from spack import *
class Zeromq(Package):
""" The ZMQ networking/concurrency library and core API """
homepage = "http://zguide.zeromq.org/"
url = "http://download.zeromq.org/zeromq-4.1.2.tar.gz"
version('4.1.2', '159c0c56a895472f02668e692d122685')
version('4.1.1', '0a4b44aa085644f25c177f79dc13f253')
version('4.0.7', '9b46f7e7b0704b83638ef0d461fd59ab')
version('4.0.6', 'd47dd09ed7ae6e7fd6f9a816d7f5fdf6')
version('4.0.5', '73c39f5eb01b9d7eaf74a5d899f1d03d')
depends_on("libsodium")
def install(self, spec, prefix):
configure("--with-libsodium","--prefix=%s" % prefix)
make()
make("install")