Merge branch 'develop' into eschnett/petsc-python-2

# Conflicts:
#	var/spack/packages/petsc/package.py
This commit is contained in:
Erik Schnetter 2016-01-12 14:36:37 -05:00
commit 8eb16ba02d
18 changed files with 335 additions and 77 deletions

View File

@ -0,0 +1,73 @@
##############################################################################
# Copyright (c) 2013, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License (as published by
# the Free Software Foundation) version 2.1 dated February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Cgal(Package):
"""
CGAL is a software project that provides easy access to efficient and reliable geometric algorithms in the form of
a C++ library. CGAL is used in various areas needing geometric computation, such as geographic information systems,
computer aided design, molecular biology, medical imaging, computer graphics, and robotics.
"""
homepage = 'http://www.cgal.org/'
url = 'https://github.com/CGAL/cgal/archive/releases/CGAL-4.7.tar.gz'
version('4.7', '4826714810f3b4c65cac96b90fb03b67')
version('4.6.3', 'e8ee2ecc8d2b09b94a121c09257b576d')
# Installation instructions : http://doc.cgal.org/latest/Manual/installation.html
variant('shared', default=True, description='Enables the build of shared libraries')
variant('debug', default=False, description='Builds a debug version of the libraries')
depends_on('boost')
depends_on('mpfr')
depends_on('gmp')
depends_on('zlib')
# FIXME : Qt5 dependency missing (needs Qt5 and OpenGL)
# FIXME : Optional third party libraries missing
def install(self, spec, prefix):
options = []
options.extend(std_cmake_args)
# CGAL supports only Release and Debug build type. Any other build type will raise an error at configure time
if '+debug' in spec:
options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
else:
options.append('-DCMAKE_BUILD_TYPE:STRING=Release')
if '+shared' in spec:
options.append('-DBUILD_SHARED_LIBS:BOOL=ON')
else:
options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
build_directory = join_path(self.stage.path, 'spack-build')
source_directory = self.stage.source_path
with working_dir(build_directory, create=True):
cmake(source_directory, *options)
make()
make("install")

View File

@ -38,8 +38,9 @@ class Cmake(Package):
version('3.4.0', 'cd3034e0a44256a0917e254167217fc8', version('3.4.0', 'cd3034e0a44256a0917e254167217fc8',
url = 'https://cmake.org/files/v3.4/cmake-3.4.0.tar.gz') url = 'https://cmake.org/files/v3.4/cmake-3.4.0.tar.gz')
# version('3.0.1', 'e2e05d84cb44a42f1371d9995631dcf5') variant('ncurses', default=True, description='Enables the build of the ncurses gui')
# version('3.0.0', '21a1c85e1a3b803c4b48e7ff915a863e')
depends_on('ncurses', when='+ncurses')
def install(self, spec, prefix): def install(self, spec, prefix):
configure('--prefix=' + prefix, configure('--prefix=' + prefix,

View File

@ -32,13 +32,13 @@ class Gdb(Package):
-- or what another program was doing at the moment it crashed. -- or what another program was doing at the moment it crashed.
""" """
homepage = "https://www.gnu.org/software/gdb" homepage = "https://www.gnu.org/software/gdb"
url = "http://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.xz" url = "http://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.gz"
version('7.10.1', '39e654460c9cdd80200a29ac020cfe11') version('7.10.1', 'b93a2721393e5fa226375b42d567d90b')
version('7.10', '2a35bac41fa8e10bf04f3a0dd7f7f363') version('7.10', 'fa6827ad0fd2be1daa418abb11a54d86')
version('7.9.1', '35374c77a70884eb430c97061053a36e') version('7.9.1', 'f3b97de919a9dba84490b2e076ec4cb0')
version('7.9', 'e6279f26559d839f0b4218a482bcb43e') version('7.9', '8f8ced422fe462a00e0135a643544f17')
version('7.8.2', 'a80cf252ed2e775d4e4533341bbf2459') version('7.8.2', '8b0ea8b3559d3d90b3ff4952f0aeafbc')
depends_on('texinfo') depends_on('texinfo')

View File

@ -5,14 +5,14 @@ class Git(Package):
system designed to handle everything from small to very large system designed to handle everything from small to very large
projects with speed and efficiency.""" projects with speed and efficiency."""
homepage = "http://git-scm.com" homepage = "http://git-scm.com"
url = "https://www.kernel.org/pub/software/scm/git/git-2.2.1.tar.xz" url = "https://www.kernel.org/pub/software/scm/git/git-2.2.1.tar.gz"
version('2.6.3', '5a6375349c3f13c8dbbabfc327bae429') version('2.6.3', 'b711be7628a4a2c25f38d859ee81b423')
version('2.6.2', '32ae5ad29763fc927bfcaeab55385fd9') version('2.6.2', 'da293290da69f45a86a311ad3cd43dc8')
version('2.6.1', 'dd4a3a7fe96598c553edd39d40c9c290') version('2.6.1', '4c62ee9c5991fe93d99cf2a6b68397fd')
version('2.6.0', '6b7d43d615fb3f0dfecf4d131e23f438') version('2.6.0', 'eb76a07148d94802a1745d759716a57e')
version('2.5.4', 'ec118fcd1cf984edc17eb6588b78e81b') version('2.5.4', '3eca2390cf1fa698b48e2a233563a76b')
version('2.2.1', '43e01f9d96ba8c11611e0eef0d9f9f28') version('2.2.1', 'ff41fdb094eed1ec430aed8ee9b9849c')
# Git compiles with curl support by default on but if your system # Git compiles with curl support by default on but if your system

View File

@ -30,8 +30,11 @@ class Gperftools(Package):
homepage = "https://code.google.com/p/gperftools" homepage = "https://code.google.com/p/gperftools"
url = "https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/gperftools-2.3.tar.gz" url = "https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/gperftools-2.3.tar.gz"
version('2.4', '2171cea3bbe053036fb5d5d25176a160', url="https://github.com/gperftools/gperftools/releases/download/gperftools-2.4/gperftools-2.4.tar.gz")
version('2.3', 'f54dd119f0e46ac1f13264f8d97adf90', url="https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/gperftools-2.3.tar.gz") version('2.3', 'f54dd119f0e46ac1f13264f8d97adf90', url="https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/gperftools-2.3.tar.gz")
depends_on("libunwind")
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=" + prefix) configure("--prefix=" + prefix)
make() make()

View File

@ -0,0 +1,11 @@
--- julia/src/gc.c
+++ julia/src/gc.c
@@ -162,7 +162,7 @@
// A region is contiguous storage for up to REGION_PG_COUNT naturally aligned GC_PAGE_SZ pages
// It uses a very naive allocator (see malloc_page & free_page)
#if defined(_P64) && !defined(_COMPILER_MICROSOFT_)
-#define REGION_PG_COUNT 16*8*4096 // 8G because virtual memory is cheap
+#define REGION_PG_COUNT 8*4096 // 512M
#else
#define REGION_PG_COUNT 8*4096 // 512M
#endif

View File

@ -8,11 +8,14 @@ class Julia(Package):
version('0.4.2', 'ccfeb4f4090c8b31083f5e1ccb03eb06') version('0.4.2', 'ccfeb4f4090c8b31083f5e1ccb03eb06')
patch('gc.patch')
# Build-time dependencies # Build-time dependencies
# depends_on("cmake") depends_on("cmake @2.8:")
# depends_on("awk") # depends_on("awk")
# depends_on("m4") # depends_on("m4")
# depends_on("pkg-config") # depends_on("pkg-config")
depends_on("python @2.6:2.9")
# I think that Julia requires the dependencies above, but it builds find (on # I think that Julia requires the dependencies above, but it builds find (on
# my system) without these. We should enable them as necessary. # my system) without these. We should enable them as necessary.

View File

@ -5,12 +5,10 @@ class Libpciaccess(Package):
"""Generic PCI access library.""" """Generic PCI access library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/" homepage = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/"
url = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/" url = "http://xorg.freedesktop.org/archive/individual/lib/libpciaccess-0.13.4.tar.bz2"
version('0.13.4', git='http://anongit.freedesktop.org/git/xorg/lib/libpciaccess.git', version('0.13.4', 'ace78aec799b1cf6dfaea55d3879ed9f')
tag='libpciaccess-0.13.4')
depends_on('autoconf')
depends_on('libtool') depends_on('libtool')
def install(self, spec, prefix): def install(self, spec, prefix):
@ -20,9 +18,6 @@ def install(self, spec, prefix):
mkdir(prefix.lib) mkdir(prefix.lib)
return return
from subprocess import call
call(["./autogen.sh"])
configure("--prefix=%s" % prefix) configure("--prefix=%s" % prefix)
make() make()
make("install") make("install")

View File

@ -6,6 +6,7 @@ class Lua(Package):
homepage = "http://www.lua.org" homepage = "http://www.lua.org"
url = "http://www.lua.org/ftp/lua-5.1.5.tar.gz" url = "http://www.lua.org/ftp/lua-5.1.5.tar.gz"
version('5.3.2', '33278c2ab5ee3c1a875be8d55c1ca2a1')
version('5.3.1', '797adacada8d85761c079390ff1d9961') version('5.3.1', '797adacada8d85761c079390ff1d9961')
version('5.3.0', 'a1b0a7e92d0c85bbff7a8d27bf29f8af') version('5.3.0', 'a1b0a7e92d0c85bbff7a8d27bf29f8af')
version('5.2.4', '913fdb32207046b273fdb17aad70be13') version('5.2.4', '913fdb32207046b273fdb17aad70be13')
@ -18,11 +19,16 @@ class Lua(Package):
version('5.1.3', 'a70a8dfaa150e047866dc01a46272599') version('5.1.3', 'a70a8dfaa150e047866dc01a46272599')
depends_on('ncurses') depends_on('ncurses')
depends_on('readline')
def install(self, spec, prefix): def install(self, spec, prefix):
if spec.satisfies("=darwin-i686") or spec.satisfies("=darwin-x86_64"):
target = 'macosx'
else:
target = 'linux'
make('INSTALL_TOP=%s' % prefix, make('INSTALL_TOP=%s' % prefix,
'MYLDFLAGS="-L%s/lib -Wl,-rpath,%s"' % (spec['ncurses'].prefix,spec['ncurses'].prefix), 'MYLDFLAGS=-L%s -lncurses' % spec['ncurses'].prefix.lib,
'linux') target)
make('INSTALL_TOP=%s' % prefix, make('INSTALL_TOP=%s' % prefix,
'MYLDFLAGS="-L%s/lib -Wl,-rpath,%s"' % (spec['ncurses'].prefix,spec['ncurses'].prefix), 'MYLDFLAGS=-L%s -lncurses' % spec['ncurses'].prefix.lib,
'install') 'install')

View File

@ -1,27 +1,83 @@
##############################################################################
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License (as published by
# the Free Software Foundation) version 2.1 dated February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import * from spack import *
class Metis(Package):
"""METIS is a set of serial programs for partitioning graphs,
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."""
homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview" class Metis(Package):
url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz" """
METIS is a set of serial programs for partitioning graphs, 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.
"""
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') version('5.1.0', '5465e67079419a69e0116de24fce58fe')
depends_on('mpi') variant('shared', default=True, description='Enables the build of shared libraries')
variant('debug', default=False, description='Builds the library in debug mode')
variant('gdb', default=False, description='Enables gdb support')
variant('idx64', default=False, description='Use int64_t as default index type')
variant('double', default=False, description='Use double precision floating point types')
depends_on('cmake @2.8:') # build-time dependency
depends_on('gdb', when='+gdb')
def install(self, spec, prefix): def install(self, spec, prefix):
cmake(".",
'-DGKLIB_PATH=%s/GKlib' % pwd(),
'-DSHARED=1',
'-DCMAKE_C_COMPILER=mpicc',
'-DCMAKE_CXX_COMPILER=mpicxx',
'-DSHARED=1',
*std_cmake_args)
make() options = []
make("install") options.extend(std_cmake_args)
build_directory = join_path(self.stage.path, 'spack-build')
source_directory = self.stage.source_path
options.append('-DGKLIB_PATH:PATH={metis_source}/GKlib'.format(metis_source=source_directory))
if '+shared' in spec:
options.append('-DSHARED:BOOL=ON')
if '+debug' in spec:
options.extend(['-DDEBUG:BOOL=ON',
'-DCMAKE_BUILD_TYPE:STRING=Debug'])
if '+gdb' in spec:
options.append('-DGDB:BOOL=ON')
metis_header = join_path(source_directory, 'include', 'metis.h')
if '+idx64' in spec:
filter_file('IDXTYPEWIDTH 32', 'IDXTYPEWIDTH 64', metis_header)
if '+double' in spec:
filter_file('REALTYPEWIDTH 32', 'REALTYPEWIDTH 64', metis_header)
with working_dir(build_directory, create=True):
cmake(source_directory, *options)
make()
make("install")

View File

@ -17,6 +17,10 @@ class Openssl(Package):
parallel = False parallel = False
def install(self, spec, prefix): def install(self, spec, prefix):
# OpenSSL uses a variable APPS in its Makefile. If it happens to be set
# in the environment, then this will override what is set in the
# Makefile, leading to build errors.
env.pop('APPS', None)
if spec.satisfies("=darwin-x86_64") or spec.satisfies("=ppc64"): if spec.satisfies("=darwin-x86_64") or spec.satisfies("=ppc64"):
# This needs to be done for all 64-bit architectures (except Linux, # This needs to be done for all 64-bit architectures (except Linux,
# where it happens automatically?) # where it happens automatically?)

View File

@ -1,26 +1,95 @@
##############################################################################
# Copyright (c) 2013-2015, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Written by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License (as published by
# the Free Software Foundation) version 2.1 dated February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import * from spack import *
# FIXME : lot of code is duplicated from packages/metis/package.py . Inheriting from there may reduce
# FIXME : the installation rules to just a few lines
class Parmetis(Package): class Parmetis(Package):
"""ParMETIS is an MPI-based parallel library that implements a """
variety of algorithms for partitioning unstructured graphs, ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured
meshes, and for computing fill-reducing orderings of sparse graphs, meshes, and for computing fill-reducing orderings of sparse matrices.
matrices.""" """
homepage = "http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview" homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview'
url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz" url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz'
version('4.0.3', 'f69c479586bf6bb7aff6a9bc0c739628') version('4.0.3', 'f69c479586bf6bb7aff6a9bc0c739628')
variant('shared', default=True, description='Enables the build of shared libraries')
variant('debug', default=False, description='Builds the library in debug mode')
variant('gdb', default=False, description='Enables gdb support')
variant('idx64', default=False, description='Use int64_t as default index type')
variant('double', default=False, description='Use double precision floating point types')
depends_on('cmake @2.8:') # build dependency
depends_on('mpi') depends_on('mpi')
def install(self, spec, prefix): # FIXME : this should conflict with metis as it builds its own version internally
cmake(".",
'-DGKLIB_PATH=%s/metis/GKlib' % pwd(),
'-DMETIS_PATH=%s/metis' % pwd(),
'-DSHARED=1',
'-DCMAKE_C_COMPILER=mpicc',
'-DCMAKE_CXX_COMPILER=mpicxx',
'-DSHARED=1',
*std_cmake_args)
make() depends_on('gdb', when='+gdb')
make("install")
def install(self, spec, prefix):
options = []
options.extend(std_cmake_args)
build_directory = join_path(self.stage.path, 'spack-build')
source_directory = self.stage.source_path
metis_source = join_path(source_directory, 'metis')
# FIXME : Once a contract is defined, MPI compilers should be retrieved indirectly via spec['mpi'] in case
# FIXME : they use a non-standard name
options.extend(['-DGKLIB_PATH:PATH={metis_source}/GKlib'.format(metis_source=metis_source),
'-DMETIS_PATH:PATH={metis_source}'.format(metis_source=metis_source),
'-DCMAKE_C_COMPILER:STRING=mpicc',
'-DCMAKE_CXX_COMPILER:STRING=mpicxx'])
if '+shared' in spec:
options.append('-DSHARED:BOOL=ON')
if '+debug' in spec:
options.extend(['-DDEBUG:BOOL=ON',
'-DCMAKE_BUILD_TYPE:STRING=Debug'])
if '+gdb' in spec:
options.append('-DGDB:BOOL=ON')
metis_header = join_path(metis_source, 'include', 'metis.h')
if '+idx64' in spec:
filter_file('IDXTYPEWIDTH 32', 'IDXTYPEWIDTH 64', metis_header)
if '+double' in spec:
filter_file('REALTYPEWIDTH 32', 'REALTYPEWIDTH 64', metis_header)
with working_dir(build_directory, create=True):
cmake(source_directory, *options)
make()
make("install")
# Parmetis build system doesn't allow for an external metis to be used, but doesn't copy the required
# metis header either
install(metis_header, self.prefix.include)

View File

@ -0,0 +1,16 @@
from spack import *
class Patchelf(Package):
"""PatchELF is a small utility to modify the dynamic linker and RPATH of ELF executables."""
homepage = "https://nixos.org/patchelf.html"
url = "http://nixos.org/releases/patchelf/patchelf-0.8/patchelf-0.8.tar.gz"
list_url = "http://nixos.org/releases/patchelf/"
list_depth = 2
version('0.8', '407b229e6a681ffb0e2cdd5915cb2d01')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
make("install")

View File

@ -25,9 +25,6 @@ class Petsc(Package):
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=%s" % prefix, configure("--prefix=%s" % prefix,
"CC=cc",
"CXX=c++",
"FC=f90",
"--with-blas-lib=%s/libblas.a" % spec['blas'].prefix.lib, "--with-blas-lib=%s/libblas.a" % spec['blas'].prefix.lib,
"--with-lapack-lib=%s/liblapack.a" % spec['lapack'].prefix.lib, "--with-lapack-lib=%s/liblapack.a" % spec['lapack'].prefix.lib,
"--with-boost-dir=%s" % spec['boost'].prefix, "--with-boost-dir=%s" % spec['boost'].prefix,
@ -35,6 +32,7 @@ def install(self, spec, prefix):
"--with-parmetis-dir=%s" % spec['parmetis'].prefix, "--with-parmetis-dir=%s" % spec['parmetis'].prefix,
"--with-metis-dir=%s" % spec['metis'].prefix, "--with-metis-dir=%s" % spec['metis'].prefix,
"--with-hdf5-dir=%s" % spec['hdf5'].prefix, "--with-hdf5-dir=%s" % spec['hdf5'].prefix,
"--with-mpi-dir=%s" % spec['mpi'].prefix,
"--with-shared-libraries=0") "--with-shared-libraries=0")
# PETSc has its own way of doing parallel make. # PETSc has its own way of doing parallel make.

View File

@ -11,15 +11,16 @@
class Python(Package): class Python(Package):
"""The Python programming language.""" """The Python programming language."""
homepage = "http://www.python.org" homepage = "http://www.python.org"
url = "http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.xz" url = "http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz"
extendable = True extendable = True
version('2.7.8', 'd235bdfa75b8396942e360a70487ee00') version('3.5.1', 'be78e48cdfc1a7ad90efff146dce6cfe')
version('2.7.10', 'c685ef0b8e9f27b5e3db5db12b268ac6') version('3.5.0', 'a56c0c0b45d75a0ec9c6dee933c41c36')
version('2.7.11', '1dbcc848b4cd8399a8199d000f9f823c', preferred=True) version('2.7.11', '6b6076ec9e93f05dd63e47eb9c15728b', preferred=True)
version('3.5.0', 'd149d2812f10cbe04c042232e7964171') version('2.7.10', 'd7547558fd673bd9d38e2108c6b42521')
version('3.5.1', 'e9ea6f2623fffcdd871b7b19113fde80') version('2.7.9', '5eebcaa0030dc4061156d3429657fb83')
version('2.7.8', 'd4bca0159acb0b44a781292b5231936f')
depends_on("openssl") depends_on("openssl")
depends_on("bzip2") depends_on("bzip2")

View File

@ -0,0 +1,21 @@
from spack import *
class Szip(Package):
"""Szip is an implementation of the extended-Rice lossless compression algorithm.
It provides lossless compression of scientific data, and is provided with HDF
software products."""
homepage = "https://www.hdfgroup.org/doc_resource/SZIP/"
url = "http://www.hdfgroup.org/ftp/lib-external/szip/2.1/src/szip-2.1.tar.gz"
version('2.1', '902f831bcefb69c6b635374424acbead')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix,
'--enable-production',
'--enable-shared',
'--enable-static',
'--enable-encoding')
make()
make("install")

View File

@ -33,12 +33,12 @@ class Texinfo(Package):
used by many non-GNU projects as well.FIXME: put a proper description of your package here. used by many non-GNU projects as well.FIXME: put a proper description of your package here.
""" """
homepage = "https://www.gnu.org/software/texinfo/" homepage = "https://www.gnu.org/software/texinfo/"
url = "http://ftp.gnu.org/gnu/texinfo/texinfo-6.0.tar.xz" url = "http://ftp.gnu.org/gnu/texinfo/texinfo-6.0.tar.gz"
version('6.0', '02818e62a5b8ae0213a7ff572991bb50') version('6.0', 'e1a2ef5dce5018b53f0f6eed45b247a7')
version('5.2', 'cb489df8a7ee9d10a236197aefdb32c5') version('5.2', '1b8f98b80a8e6c50422125e07522e8db')
version('5.1', '52ee905a3b705020d2a1b6ec36d53ca6') version('5.1', '54e250014fe698fb4832016158747c03')
version('5.0', 'ef2fad34c71ddc95b20c7d6a08c0d7a6') version('5.0', '918432285abe6fe96c98355594c5656a')
def install(self, spec, prefix): def install(self, spec, prefix):
configure('--prefix=%s' % prefix) configure('--prefix=%s' % prefix)

View File

@ -8,9 +8,10 @@ class Wget(Package):
etc.""" etc."""
homepage = "http://www.gnu.org/software/wget/" homepage = "http://www.gnu.org/software/wget/"
url = "http://ftp.gnu.org/gnu/wget/wget-1.16.tar.xz" url = "http://ftp.gnu.org/gnu/wget/wget-1.16.tar.gz"
version('1.16', 'fe102975ab3a6c049777883f1bb9ad07') version('1.17', 'c4c4727766f24ac716936275014a0536')
version('1.16', '293a37977c41b5522f781d3a3a078426')
depends_on("openssl") depends_on("openssl")