From 52158d9316aabd9c02a719825928607cb5204377 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" Date: Fri, 21 Oct 2016 09:49:36 -0500 Subject: Add new Version property to handle joined version numbers (#2062) * Add new version property to handle joined version numbers * Add unit test for new joined property * Add documentation on version.up_to() and version.joined --- var/spack/repos/builtin/packages/cdd/package.py | 8 ++++---- var/spack/repos/builtin/packages/cfitsio/package.py | 4 ++-- var/spack/repos/builtin/packages/cryptopp/package.py | 9 ++++----- var/spack/repos/builtin/packages/lrslib/package.py | 8 ++++---- var/spack/repos/builtin/packages/nag/package.py | 6 +++--- var/spack/repos/builtin/packages/nauty/package.py | 8 ++++---- 6 files changed, 21 insertions(+), 22 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/cdd/package.py b/var/spack/repos/builtin/packages/cdd/package.py index bff942af25..4a0a0aefef 100644 --- a/var/spack/repos/builtin/packages/cdd/package.py +++ b/var/spack/repos/builtin/packages/cdd/package.py @@ -35,16 +35,16 @@ class Cdd(Package): 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" - def url_for_version(self, version): - return ("ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-%s.tar.gz" % - str(version.dotted).replace('.', '')) - version('0.61a', '22c24a7a9349dd7ec0e24531925a02d9') depends_on("libtool", type="build") patch("Makefile.spack.patch") + def url_for_version(self, version): + url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-{0}.tar.gz" + return url.format(version.joined) + def install(self, spec, prefix): # The Makefile isn't portable; use our own instead makeargs = ["-f", "Makefile.spack", "PREFIX=%s" % prefix] diff --git a/var/spack/repos/builtin/packages/cfitsio/package.py b/var/spack/repos/builtin/packages/cfitsio/package.py index 35d9662f6f..79af31ae21 100644 --- a/var/spack/repos/builtin/packages/cfitsio/package.py +++ b/var/spack/repos/builtin/packages/cfitsio/package.py @@ -34,9 +34,9 @@ class Cfitsio(Package): version('3.370', 'abebd2d02ba5b0503c633581e3bfa116') - def url_for_version(self, v): + def url_for_version(self, version): url = 'ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio{0}.tar.gz' - return url.format(str(v).replace('.', '')) + return url.format(version.joined) def install(self, spec, prefix): configure('--prefix=' + prefix) diff --git a/var/spack/repos/builtin/packages/cryptopp/package.py b/var/spack/repos/builtin/packages/cryptopp/package.py index e9294a14a6..c92f262a9a 100644 --- a/var/spack/repos/builtin/packages/cryptopp/package.py +++ b/var/spack/repos/builtin/packages/cryptopp/package.py @@ -36,12 +36,15 @@ class Cryptopp(Package): """ homepage = "http://www.cryptopp.com" - base_url = "http://www.cryptopp.com" version('5.6.3', '3c5b70e2ec98b7a24988734446242d07') version('5.6.2', '7ed022585698df48e65ce9218f6c6a67') version('5.6.1', '96cbeba0907562b077e26bcffb483828') + def url_for_version(self, version): + url = "{0}/{1}{2}.zip" + return url.format(self.homepage, self.name, version.joined) + def install(self, spec, prefix): make() @@ -51,7 +54,3 @@ class Cryptopp(Package): mkdirp(prefix.lib) install('libcryptopp.a', prefix.lib) - - def url_for_version(self, version): - version_string = str(version).replace('.', '') - return '%s/cryptopp%s.zip' % (Cryptopp.base_url, version_string) diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py index 68a907ea59..3825867bb6 100644 --- a/var/spack/repos/builtin/packages/lrslib/package.py +++ b/var/spack/repos/builtin/packages/lrslib/package.py @@ -33,10 +33,6 @@ class Lrslib(Package): homepage = "http://cgm.cs.mcgill.ca/~avis/C/lrs.html" 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('6.2', 'be5da7b3b90cc2be628dcade90c5d1b9') version('6.1', '0b3687c8693cd7d1f234a3f65e147551') version('6.0', 'd600a2e62969ad03f7ab2f85f1b3709c') @@ -51,6 +47,10 @@ class Lrslib(Package): patch("Makefile.spack.patch") + def url_for_version(self, version): + url = "http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-0{0}.tar.gz" + return url.format(version.joined) + def install(self, spec, prefix): # The Makefile isn't portable; use our own instead makeargs = ["-f", "Makefile.spack", diff --git a/var/spack/repos/builtin/packages/nag/package.py b/var/spack/repos/builtin/packages/nag/package.py index 792e3fe3c7..66cb2a6a54 100644 --- a/var/spack/repos/builtin/packages/nag/package.py +++ b/var/spack/repos/builtin/packages/nag/package.py @@ -30,7 +30,7 @@ class Nag(Package): """The NAG Fortran Compiler.""" homepage = "http://www.nag.com/nagware/np.asp" - version('6.1', '1e29d9d435b7ccc2842a320150b28ba4') + version('6.1', 'f49bd548e0d5e2458b2dabb3ee01341a') version('6.0', '3fa1e7f7b51ef8a23e6c687cdcad9f96') # Licensing @@ -43,8 +43,8 @@ class Nag(Package): def url_for_version(self, version): # TODO: url and checksum are architecture dependent # TODO: We currently only support x86_64 - return 'http://www.nag.com/downloads/impl/npl6a%sna_amd64.tgz' % str( - version).replace('.', '') + url = 'http://www.nag.com/downloads/impl/npl6a{0}na_amd64.tgz' + return url.format(version.joined) def install(self, spec, prefix): # Set installation directories diff --git a/var/spack/repos/builtin/packages/nauty/package.py b/var/spack/repos/builtin/packages/nauty/package.py index 167edfe896..0d5eed251b 100644 --- a/var/spack/repos/builtin/packages/nauty/package.py +++ b/var/spack/repos/builtin/packages/nauty/package.py @@ -33,14 +33,14 @@ class Nauty(Package): homepage = "http://pallini.di.uniroma1.it/index.html" url = "http://pallini.di.uniroma1.it/nauty26r7.tar.gz" - def url_for_version(self, version): - 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 url_for_version(self, version): + url = "http://pallini.di.uniroma1.it/nauty{0}.tar.gz" + return url.format(version.joined) + def install(self, spec, prefix): configure('--prefix=%s' % prefix) make() -- cgit v1.2.3-70-g09d2