diff options
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/packages/SAMRAI/no-tool-build.patch | 20 | ||||
-rw-r--r-- | var/spack/packages/SAMRAI/package.py | 51 | ||||
-rw-r--r-- | var/spack/packages/hdf5/package.py | 39 | ||||
-rw-r--r-- | var/spack/packages/openmpi/package.py | 2 | ||||
-rw-r--r-- | var/spack/packages/zlib/package.py | 18 |
5 files changed, 130 insertions, 0 deletions
diff --git a/var/spack/packages/SAMRAI/no-tool-build.patch b/var/spack/packages/SAMRAI/no-tool-build.patch new file mode 100644 index 0000000000..1adf0cf721 --- /dev/null +++ b/var/spack/packages/SAMRAI/no-tool-build.patch @@ -0,0 +1,20 @@ +--- SAMRAI/Makefile.in 2013-05-31 11:04:32.000000000 -0700 ++++ SAMRAI/Makefile.in.notools 2014-05-30 10:31:15.135979900 -0700 +@@ -8,7 +8,7 @@ + ## + ######################################################################### + +-default: library tools ++default: library + + SAMRAI = @top_srcdir@ + SUBDIR = . +@@ -135,7 +135,7 @@ + done + $(MAKE) archive_remove_obj_names + +-install: library tools ++install: library + $(INSTALL) -d -m 755 $(INSTDIR)/config + $(INSTALL) -d -m 755 $(INSTDIR)/lib + $(INSTALL) -d -m 755 $(INSTDIR)/bin diff --git a/var/spack/packages/SAMRAI/package.py b/var/spack/packages/SAMRAI/package.py new file mode 100644 index 0000000000..bb88ec3292 --- /dev/null +++ b/var/spack/packages/SAMRAI/package.py @@ -0,0 +1,51 @@ +from spack import * + +class Samrai(Package): + """SAMRAI (Structured Adaptive Mesh Refinement Application Infrastructure) + is an object-oriented C++ software library enables exploration of numerical, + algorithmic, parallel computing, and software issues associated with applying + structured adaptive mesh refinement (SAMR) technology in large-scale parallel + application development. + """ + homepage = "https://computation-rnd.llnl.gov/SAMRAI/confirm.php" + url = "https://computation-rnd.llnl.gov/SAMRAI/download/SAMRAI-v3.7.3.tar.gz" + list_url = homepage + + versions = { + '3.7.3' : '12d574eacadf8c9a70f1bb4cd1a69df6', + '3.7.2' : 'f6a716f171c9fdbf3cb12f71fa6e2737', + '3.6.3-beta' : 'ef0510bf2893042daedaca434e5ec6ce', + '3.5.2-beta' : 'd072d9d681eeb9ada15ce91bea784274', + '3.5.0-beta' : '1ad18a319fc573e12e2b1fbb6f6b0a19', + '3.4.1-beta' : '00814cbee2cb76bf8302aff56bbb385b', + '3.3.3-beta' : '1db3241d3e1cab913dc310d736c34388', + '3.3.2-beta' : 'e598a085dab979498fcb6c110c4dd26c', + '2.4.4' : '04fb048ed0efe7c531ac10c81cc5f6ac', + } + + depends_on("mpi") + depends_on("zlib") + depends_on("hdf5") + depends_on("boost@1.52.0") + + # don't build tools with gcc + patch('no-tool-build.patch', when='%gcc') + + # TODO: currently hard-coded to use openmpi - be careful! + def install(self, spec, prefix): + configure( + "--prefix=%s" % prefix, + "--with-CXX=%s" % spec['openmpi'].prefix.bin + "/mpic++", + "--with-CC=%s" % spec['openmpi'].prefix.bin + "/mpicc", + "--with-hdf5=%s" % spec['hdf5'].prefix, + "--with-boost=%s" % spec['boost'].prefix, + "--with-zlib=%s" % spec['zlib'].prefix, + "--disable-blas", + "--disable-lapack", + "--with-hypre=no", + "--with-petsc=no", + "--enable-opt", + "--disable-debug") + + make() + make("install") diff --git a/var/spack/packages/hdf5/package.py b/var/spack/packages/hdf5/package.py new file mode 100644 index 0000000000..7705676dba --- /dev/null +++ b/var/spack/packages/hdf5/package.py @@ -0,0 +1,39 @@ +from spack import * + +class Hdf5(Package): + """HDF5 is a data model, library, and file format for storing and managing + data. It supports an unlimited variety of datatypes, and is designed for + flexible and efficient I/O and for high volume and complex data. + """ + + homepage = "http://www.hdfgroup.org/HDF5/" + url = "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.13/src/hdf5-1.8.13.tar.gz" + list_url = "http://www.hdfgroup.org/ftp/HDF5/releases" + list_depth = 3 + + versions = { '1.8.13' : 'c03426e9e77d7766944654280b467289', } + + depends_on("mpi") + depends_on("zlib") + + # TODO: currently hard-coded to use OpenMPI + def install(self, spec, prefix): + configure( + "--prefix=%s" % prefix, + "--with-zlib=%s" % spec['zlib'].prefix, + "--enable-parallel", + "CC=%s" % spec['openmpi'].prefix.bin + "/mpicc", + "CXX=%s" % spec['openmpi'].prefix.bin + "/mpic++") + + make() + make("install") + + def url_for_version(self, version): + v = str(version) + + if version == Version("1.2.2"): + return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + v + ".tar.gz" + elif version < Version("1.7"): + return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + version.up_to(2) + "/hdf5-" + v + ".tar.gz" + else: + return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + v + "/src/hdf5-" + v + ".tar.gz" diff --git a/var/spack/packages/openmpi/package.py b/var/spack/packages/openmpi/package.py index f24a66c12e..5ac231a33f 100644 --- a/var/spack/packages/openmpi/package.py +++ b/var/spack/packages/openmpi/package.py @@ -14,6 +14,8 @@ class Openmpi(Package): versions = { '1.6.5' : '03aed2a4aa4d0b27196962a2a65fc475', } + provides('mpi@:2') + patch('ad_lustre_rwcontig_open_source.patch') patch('llnl-platforms.patch') diff --git a/var/spack/packages/zlib/package.py b/var/spack/packages/zlib/package.py new file mode 100644 index 0000000000..608b27ddd3 --- /dev/null +++ b/var/spack/packages/zlib/package.py @@ -0,0 +1,18 @@ +from spack import * + +class Zlib(Package): + """zlib is designed to be a free, general-purpose, legally unencumbered -- + that is, not covered by any patents -- lossless data-compression library for + use on virtually any computer hardware and operating system. + """ + + homepage = "http://zlib.net" + url = "http://zlib.net/zlib-1.2.8.tar.gz" + + versions = { '1.2.8' : '44d667c142d7cda120332623eab69f40', } + + def install(self, spec, prefix): + configure("--prefix=%s" % prefix) + + make() + make("install") |