summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/stage.py20
-rw-r--r--var/spack/repos/builtin/packages/bwa/package.py52
-rw-r--r--var/spack/repos/builtin/packages/cube/package.py9
-rw-r--r--var/spack/repos/builtin/packages/opari2/package.py16
-rw-r--r--var/spack/repos/builtin/packages/scorep/package.py35
-rw-r--r--var/spack/repos/builtin/packages/seqtk/package.py43
-rw-r--r--var/spack/repos/builtin/packages/trilinos/package.py1
7 files changed, 147 insertions, 29 deletions
diff --git a/lib/spack/spack/stage.py b/lib/spack/spack/stage.py
index 553c4ad05f..8fcc331482 100644
--- a/lib/spack/spack/stage.py
+++ b/lib/spack/spack/stage.py
@@ -321,15 +321,19 @@ class Stage(object):
package_name = os.path.dirname(self.mirror_path)
pkg = spack.repo.get(package_name)
if pkg.list_url is not None and pkg.url is not None:
- archive_version = spack.url.parse_version(
- self.default_fetcher.url)
- versions = pkg.fetch_remote_versions()
try:
- url_from_list = versions[Version(archive_version)]
- fetchers.append(fs.URLFetchStrategy(url_from_list, digest))
- except KeyError:
- tty.msg("Can not find version %s in url_list" %
- archive_version)
+ archive_version = spack.url.parse_version(
+ self.default_fetcher.url)
+ versions = pkg.fetch_remote_versions()
+ try:
+ url_from_list = versions[Version(archive_version)]
+ fetchers.append(fs.URLFetchStrategy(
+ url_from_list, digest))
+ except KeyError:
+ tty.msg("Can not find version %s in url_list" %
+ archive_version)
+ except:
+ tty.msg("Could not determine url from list_url.")
for fetcher in fetchers:
try:
diff --git a/var/spack/repos/builtin/packages/bwa/package.py b/var/spack/repos/builtin/packages/bwa/package.py
new file mode 100644
index 0000000000..bb6763629b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bwa/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created 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 Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, 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 Lesser 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 Bwa(Package):
+ """Burrow-Wheeler Aligner for pairwise alignment between DNA sequences."""
+
+ homepage = "http://github.com/lh3/bwa"
+ url = "https://github.com/lh3/bwa/releases/download/v0.7.15/bwa-0.7.15.tar.bz2"
+
+ version('0.7.15', 'fcf470a46a1dbe2f96a1c5b87c530554')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ filter_file(r'^INCLUDES=',
+ "INCLUDES=-I%s" % spec['zlib'].prefix.include, 'Makefile')
+ filter_file(r'^LIBS=', "LIBS=-L%s " % spec['zlib'].prefix.lib,
+ 'Makefile')
+ make()
+
+ mkdirp(prefix.bin)
+ install('bwa', join_path(prefix.bin, 'bwa'))
+ set_executable(join_path(prefix.bin, 'bwa'))
+ mkdirp(prefix.doc)
+ install('README.md', prefix.doc)
+ install('NEWS.md', prefix.doc)
+ mkdirp(prefix.man1)
+ install('bwa.1', prefix.man1)
diff --git a/var/spack/repos/builtin/packages/cube/package.py b/var/spack/repos/builtin/packages/cube/package.py
index 40c2cc6893..09237f87c3 100644
--- a/var/spack/repos/builtin/packages/cube/package.py
+++ b/var/spack/repos/builtin/packages/cube/package.py
@@ -28,8 +28,8 @@ from spack import *
class Cube(Package):
"""
- Cube the profile viewer for Score-P and Scalasca profiles. It displays a multi-dimensional performance space
- consisting of the dimensions:
+ Cube the profile viewer for Score-P and Scalasca profiles. It displays a
+ multi-dimensional performance space consisting of the dimensions:
- performance metric
- call path
- system resource
@@ -38,14 +38,17 @@ class Cube(Package):
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz"
+ version('4.3.4', '50f73060f55311cb12c5b3cb354d59fa',
+ url='http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-4.3.4.tar.gz')
version('4.3.3', '07e109248ed8ffc7bdcce614264a2909',
url='http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-4.3.3.tar.gz')
-
version('4.2.3', '8f95b9531f5a8f8134f279c2767c9b20',
url="http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz")
# TODO : add variant that builds GUI on top of Qt
+ depends_on('zlib')
+
def install(self, spec, prefix):
configure_args = ["--prefix=%s" % prefix,
"--without-paraver",
diff --git a/var/spack/repos/builtin/packages/opari2/package.py b/var/spack/repos/builtin/packages/opari2/package.py
index 510fff9fc2..e901f8ed39 100644
--- a/var/spack/repos/builtin/packages/opari2/package.py
+++ b/var/spack/repos/builtin/packages/opari2/package.py
@@ -25,18 +25,24 @@
from spack import *
+
class Opari2(Package):
"""
- OPARI2 is a source-to-source instrumentation tool for OpenMP and hybrid codes. It surrounds OpenMP directives and
- runtime library calls with calls to the POMP2 measurement interface. OPARI2 will provide you with a new
- initialization method that allows for multi-directory and parallel builds as well as the usage of pre-instrumented
- libraries. Furthermore, an efficient way of tracking parent-child relationships was added. Additionally, we extended
- OPARI2 to support instrumentation of OpenMP 3.0 tied tasks.
+ OPARI2 is a source-to-source instrumentation tool for OpenMP and hybrid
+ codes. It surrounds OpenMP directives and runtime library calls with calls
+ to the POMP2 measurement interface. OPARI2 will provide you with a new
+ initialization method that allows for multi-directory and parallel builds
+ as well as the usage of pre-instrumented libraries. Furthermore, an
+ efficient way of tracking parent-child relationships was added.
+ Additionally, we extended OPARI2 to support instrumentation of OpenMP 3.0
+ tied tasks.
"""
homepage = "http://www.vi-hps.org/projects/score-p"
url = "http://www.vi-hps.org/upload/packages/opari2/opari2-1.1.2.tar.gz"
+ version('2.0', '72350dbdb6139f2e68a5055a4f0ba16c',
+ url='http://www.vi-hps.org/upload/packages/opari2/opari2-2.0.tar.gz')
version('1.1.4', '245d3d11147a06de77909b0805f530c0',
url='http://www.vi-hps.org/upload/packages/opari2/opari2-1.1.4.tar.gz')
version('1.1.2', '9a262c7ca05ff0ab5f7775ae96f3539e')
diff --git a/var/spack/repos/builtin/packages/scorep/package.py b/var/spack/repos/builtin/packages/scorep/package.py
index 633511a15a..d40e08740f 100644
--- a/var/spack/repos/builtin/packages/scorep/package.py
+++ b/var/spack/repos/builtin/packages/scorep/package.py
@@ -28,20 +28,28 @@ from spack import *
class Scorep(Package):
"""
- The Score-P measurement infrastructure is a highly scalable and easy-to-use tool suite for profiling, event
- tracing, and online analysis of HPC applications.
+ The Score-P measurement infrastructure is a highly scalable and easy-to-use
+ tool suite for profiling, event tracing, and online analysis of HPC
+ applications.
"""
homepage = "http://www.vi-hps.org/projects/score-p"
url = "http://www.vi-hps.org/upload/packages/scorep/scorep-1.2.3.tar.gz"
+ version('2.0.2', '8f00e79e1b5b96e511c5ebecd10b2888',
+ url='http://www.vi-hps.org/upload/packages/scorep/scorep-2.0.2.tar.gz')
version('1.4.2', '3b9a042b13bdd5836452354e6567f71e',
url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.4.2.tar.gz')
version('1.3', '9db6f957b7f51fa01377a9537867a55c',
url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.3.tar.gz')
##########
- # Dependencies for SCORE-P are quite tight. See the homepage for more information.
+ # Dependencies for SCORE-P are quite tight. See the homepage for more
+ # information.
+ # SCOREP 2.0.2
+ depends_on('otf2@2.0', when='@2.0.2')
+ depends_on('opari2@2.0', when='@2.0.2')
+ depends_on('cube@4.3:4.4', when='@2.0.2')
# SCOREP 1.4.2
depends_on('otf2@1.5:1.6', when='@1.4.2')
depends_on('opari2@1.1.4', when='@1.4.2')
@@ -56,17 +64,18 @@ class Scorep(Package):
depends_on("papi")
def install(self, spec, prefix):
- configure = Executable( join_path(self.stage.source_path, 'configure') )
+ configure = Executable(join_path(self.stage.source_path, 'configure'))
with working_dir('spack-build', create=True):
- configure_args = ["--prefix=%s" % prefix,
- "--with-otf2=%s" % spec['otf2'].prefix.bin,
- "--with-opari2=%s" % spec['opari2'].prefix.bin,
- "--with-cube=%s" % spec['cube'].prefix.bin,
- "--with-papi-header=%s" % spec['papi'].prefix.include,
- "--with-papi-lib=%s" % spec['papi'].prefix.lib,
- "--enable-shared",
- "CFLAGS=-fPIC",
- "CXXFLAGS=-fPIC"]
+ configure_args = [
+ "--prefix=%s" % prefix,
+ "--with-otf2=%s" % spec['otf2'].prefix.bin,
+ "--with-opari2=%s" % spec['opari2'].prefix.bin,
+ "--with-cube=%s" % spec['cube'].prefix.bin,
+ "--with-papi-header=%s" % spec['papi'].prefix.include,
+ "--with-papi-lib=%s" % spec['papi'].prefix.lib,
+ "--enable-shared",
+ "CFLAGS=-fPIC",
+ "CXXFLAGS=-fPIC"]
configure(*configure_args)
make()
make("install")
diff --git a/var/spack/repos/builtin/packages/seqtk/package.py b/var/spack/repos/builtin/packages/seqtk/package.py
new file mode 100644
index 0000000000..ca168c176c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/seqtk/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created 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 Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, 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 Lesser 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 Seqtk(Package):
+ """Toolkit for processing sequences in FASTA/Q formats."""
+
+ homepage = "https://github.com/lh3/seqtk"
+ url = "https://github.com/lh3/seqtk/archive/v1.1.tar.gz"
+
+ version('1.2', '255ffe05bf2f073dc57abcff97f11a37')
+ version('1.1', 'ebf5cc57698a217150c2250494e039a2')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ make()
+ mkdirp(prefix.bin)
+ install('seqtk', prefix.bin)
+ set_executable(join_path(prefix.bin, 'seqtk'))
diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py
index 4d1d27e74a..1d83e055c9 100644
--- a/var/spack/repos/builtin/packages/trilinos/package.py
+++ b/var/spack/repos/builtin/packages/trilinos/package.py
@@ -45,6 +45,7 @@ class Trilinos(Package):
homepage = "https://trilinos.org/"
url = "http://trilinos.csbsju.edu/download/files/trilinos-12.2.1-Source.tar.gz"
+ version('12.6.4', 'db25056617c688f6f25092376a03200f')
version('12.6.3', '960f5f4d3f7c3da818e5a5fb4684559eff7e0c25f959ef576561b8a52f0e4d1e')
version('12.6.2', '0c076090508170ddee5efeed317745027f9418319720dc40a072e478775279f9')
version('12.6.1', 'adcf2d3aab74cdda98f88fee19cd1442604199b0515ee3da4d80cbe8f37d00e4')