Implement review requests

- use two empty lines before `class`
- change version numbering scheme for packages, use `url_for_version` to make things work
- specify dependency types
- add comment about temporarily moved download location
- update two packages to newer versions
This commit is contained in:
Erik Schnetter 2016-08-23 13:52:28 -04:00
parent a2692e4ef5
commit 73cae8d9c4
9 changed files with 50 additions and 18 deletions

View File

@ -25,6 +25,7 @@
from spack import * from spack import *
class Bliss(Package): class Bliss(Package):
"""bliss: A Tool for Computing Automorphism Groups and Canonical """bliss: A Tool for Computing Automorphism Groups and Canonical
Labelings of Graphs""" Labelings of Graphs"""
@ -37,7 +38,7 @@ class Bliss(Package):
# Note: Bliss can also be built without gmp, but we don't support this yet # Note: Bliss can also be built without gmp, but we don't support this yet
depends_on("gmp") depends_on("gmp")
depends_on("libtool") depends_on("libtool", type='build')
patch("Makefile.spack.patch") patch("Makefile.spack.patch")

View File

@ -25,6 +25,7 @@
from spack import * from spack import *
class Cdd(Package): class Cdd(Package):
"""The program cdd+ (cdd, respectively) is a C++ (ANSI C) """The program cdd+ (cdd, respectively) is a C++ (ANSI C)
implementation of the Double Description Method [MRTT53] for implementation of the Double Description Method [MRTT53] for
@ -34,9 +35,13 @@ class Cdd(Package):
homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/cdd.html" homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/cdd.html"
url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-061a.tar.gz" url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-061a.tar.gz"
version('061a', '22c24a7a9349dd7ec0e24531925a02d9') def url_for_version(self, version):
return ("ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-%s.tar.gz" %
str(version.dotted()).replace('.', ''))
depends_on("libtool") version('0.61a', '22c24a7a9349dd7ec0e24531925a02d9')
depends_on("libtool", type="build")
patch("Makefile.spack.patch") patch("Makefile.spack.patch")

View File

@ -25,21 +25,32 @@
from spack import * from spack import *
class Cddlib(Package): class Cddlib(Package):
"""The C-library cddlib is a C implementation of the Double Description """The C-library cddlib is a C implementation of the Double Description
Method of Motzkin et al. for generating all vertices (i.e. extreme points) Method of Motzkin et al. for generating all vertices (i.e. extreme points)
and extreme rays of a general convex polyhedron in R^d given by a system and extreme rays of a general convex polyhedron in R^d given by a system
of linear inequalities""" of linear inequalities"""
homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/" homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/"
# This is the original download url. It is currently down [2016-08-23],
# but should be reinstated or updated once the issue is resolved.
# url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz" # url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz"
url = "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz" url = "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
version('094h', '1467d270860bbcb26d3ebae424690e7c') def url_for_version(self, version):
# Since the commit id is part of the version, we can't
# auto-generate the string, and we need to explicitly list all
# known versions here. Currently, there is only one version.
if str(version) == '0.94h':
return "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
raise InstallError("Unsupported version %s" % str(version))
version('0.94h', '1467d270860bbcb26d3ebae424690e7c')
# Note: It should be possible to build cddlib also without gmp # Note: It should be possible to build cddlib also without gmp
depends_on("gmp") depends_on("gmp")
depends_on("libtool") depends_on("libtool", type="build")
def install(self, spec, prefix): def install(self, spec, prefix):
configure("--prefix=%s" % prefix) configure("--prefix=%s" % prefix)

View File

@ -25,24 +25,28 @@
from spack import * from spack import *
class Lrslib(Package): class Lrslib(Package):
"""lrslib Ver 6.2 is a self-contained ANSI C implementation of the """lrslib Ver 6.2 is a self-contained ANSI C implementation of the
reverse search algorithm for vertex enumeration/convex hull reverse search algorithm for vertex enumeration/convex hull
problems and comes with a choice of three arithmetic packages""" problems and comes with a choice of three arithmetic packages"""
homepage = "http://cgm.cs.mcgill.ca/~avis/C/lrs.html" homepage = "http://cgm.cs.mcgill.ca/~avis/C/lrs.html"
url = "http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-062.tar.gz" url = "http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-062.tar.gz"
def url_for_version(self, version):
return ("http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-%s.tar.gz" %
('0' + str(version).replace('.', '')))
version('062', 'be5da7b3b90cc2be628dcade90c5d1b9') version('6.2', 'be5da7b3b90cc2be628dcade90c5d1b9')
version('061', '0b3687c8693cd7d1f234a3f65e147551') version('6.1', '0b3687c8693cd7d1f234a3f65e147551')
version('060', 'd600a2e62969ad03f7ab2f85f1b3709c') version('6.0', 'd600a2e62969ad03f7ab2f85f1b3709c')
version('051', 'cca323eee8bf76f598a13d7bf67cc13d') version('5.1', 'cca323eee8bf76f598a13d7bf67cc13d')
version('043', '86dd9a45d20a3a0069f77e61be5b46ad') version('4.3', '86dd9a45d20a3a0069f77e61be5b46ad')
# Note: lrslib can also be built with Boost, and probably without gmp # Note: lrslib can also be built with Boost, and probably without gmp
# depends_on("boost") # depends_on("boost")
depends_on("gmp") depends_on("gmp")
depends_on("libtool") depends_on("libtool", type="build")
patch("Makefile.spack.patch") patch("Makefile.spack.patch")

View File

@ -26,14 +26,20 @@
import shutil import shutil
from spack import * from spack import *
class Nauty(Package): class Nauty(Package):
"""nauty and Traces are programs for computing automorphism groups of """nauty and Traces are programs for computing automorphism groups of
graphsq and digraphs""" graphsq and digraphs"""
homepage = "http://pallini.di.uniroma1.it/index.html" homepage = "http://pallini.di.uniroma1.it/index.html"
url = "http://pallini.di.uniroma1.it/nauty26r5.tar.gz" url = "http://pallini.di.uniroma1.it/nauty26r7.tar.gz"
version('26r5', '91b03a7b069962e94fc9aac8831ce8d2') def url_for_version(self, version):
version('25r9', 'e8ecd08b0892a1fb13329c147f08de6d') return ("http://pallini.di.uniroma1.it/nauty%s.tar.gz" %
str(version).replace('.', ''))
version('2.6r7', 'b2b18e03ea7698db3fbe06c5d76ad8fe')
version('2.6r5', '91b03a7b069962e94fc9aac8831ce8d2')
version('2.5r9', 'e8ecd08b0892a1fb13329c147f08de6d')
def install(self, spec, prefix): def install(self, spec, prefix):
configure('--prefix=%s' % prefix) configure('--prefix=%s' % prefix)

View File

@ -25,16 +25,17 @@
from spack import * from spack import *
class Panda(Package): class Panda(Package):
"""PANDA: Parallel AdjaceNcy Decomposition Algorithm""" """PANDA: Parallel AdjaceNcy Decomposition Algorithm"""
homepage = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/index.html" homepage = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/index.html"
url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/current_panda.tar" url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/current_panda.tar"
version('panda', 'b06dc312ee56e13eefea9c915b70fcef') version('current', 'b06dc312ee56e13eefea9c915b70fcef')
# Note: Panda can also be built without MPI support # Note: Panda can also be built without MPI support
depends_on("cmake") depends_on("cmake", type="build")
depends_on("mpi") depends_on("mpi")
def install(self, spec, prefix): def install(self, spec, prefix):

View File

@ -25,11 +25,13 @@
from spack import * from spack import *
class Polymake(Package): class Polymake(Package):
"""polymake is open source software for research in polyhedral geometry""" """polymake is open source software for research in polyhedral geometry"""
homepage = "https://polymake.org/doku.php" homepage = "https://polymake.org/doku.php"
url = "https://polymake.org/lib/exe/fetch.php/download/polymake-3.0r1.tar.bz2" url = "https://polymake.org/lib/exe/fetch.php/download/polymake-3.0r1.tar.bz2"
version('3.0r2', '08584547589f052ea50e2148109202ab')
version('3.0r1', '63ecbecf9697c6826724d8a041d2cac0') version('3.0r1', '63ecbecf9697c6826724d8a041d2cac0')
# Note: Could also be built with nauty instead of bliss # Note: Could also be built with nauty instead of bliss

View File

@ -25,6 +25,7 @@
from spack import * from spack import *
class Porta(Package): class Porta(Package):
"""PORTA is a collection of routines for analyzing polytopes and """PORTA is a collection of routines for analyzing polytopes and
polyhedra""" polyhedra"""
@ -33,7 +34,7 @@ class Porta(Package):
version('1.4.1', '585179bf19d214ed364663a5d17bd5fc') version('1.4.1', '585179bf19d214ed364663a5d17bd5fc')
depends_on("libtool") depends_on("libtool", type="build")
patch("Makefile.spack.patch") patch("Makefile.spack.patch")

View File

@ -25,6 +25,7 @@
from spack import * from spack import *
class Sympol(Package): class Sympol(Package):
"""SymPol is a C++ tool to work with symmetric polyhedra""" """SymPol is a C++ tool to work with symmetric polyhedra"""
homepage = "http://www.math.uni-rostock.de/~rehn/software/sympol.html" homepage = "http://www.math.uni-rostock.de/~rehn/software/sympol.html"