2018-10-08 04:52:23 +08:00
|
|
|
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
|
|
|
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
2017-06-21 19:46:14 +08:00
|
|
|
#
|
2018-10-08 04:52:23 +08:00
|
|
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
|
|
|
|
2017-06-21 19:46:14 +08:00
|
|
|
from spack import *
|
|
|
|
|
|
|
|
|
|
|
|
class H5zZfp(MakefilePackage):
|
|
|
|
"""A highly flexible floating point and integer compression plugin for the
|
|
|
|
HDF5 library using ZFP compression."""
|
|
|
|
|
|
|
|
homepage = "http://h5z-zfp.readthedocs.io/en/latest"
|
2018-07-23 15:00:15 +08:00
|
|
|
git = "https://github.com/LLNL/H5Z-ZFP.git"
|
2017-06-21 19:46:14 +08:00
|
|
|
|
2018-12-20 06:33:58 +08:00
|
|
|
version('develop', branch='master')
|
2018-07-23 15:00:15 +08:00
|
|
|
version('0.8.0', commit='af165c4')
|
|
|
|
version('0.7.0', commit='58ac811')
|
2017-06-21 19:46:14 +08:00
|
|
|
|
|
|
|
variant('fortran', default=True, description='Enable Fortran support')
|
|
|
|
|
2018-02-20 14:13:13 +08:00
|
|
|
depends_on('hdf5+fortran', when='+fortran')
|
|
|
|
depends_on('hdf5', when='~fortran')
|
2017-08-15 18:10:09 +08:00
|
|
|
depends_on('zfp bsws=8')
|
2017-06-21 19:46:14 +08:00
|
|
|
|
|
|
|
@property
|
|
|
|
def make_defs(self):
|
|
|
|
make_defs = [
|
|
|
|
'PREFIX=%s' % prefix,
|
|
|
|
'CC=%s' % spack_cc,
|
|
|
|
'HDF5_HOME=%s' % self.spec['hdf5'].prefix,
|
|
|
|
'ZFP_HOME=%s' % self.spec['zfp'].prefix]
|
|
|
|
|
|
|
|
if '+fortran' in self.spec and spack_fc:
|
|
|
|
make_defs += ['FC=%s' % spack_fc]
|
2018-11-20 10:38:06 +08:00
|
|
|
else:
|
|
|
|
make_defs += ['FC=']
|
2017-06-21 19:46:14 +08:00
|
|
|
|
|
|
|
return make_defs
|
|
|
|
|
|
|
|
@property
|
|
|
|
def build_targets(self):
|
|
|
|
targets = ['all']
|
|
|
|
return self.make_defs + targets
|
|
|
|
|
|
|
|
@property
|
|
|
|
def install_targets(self):
|
|
|
|
make_args = ['install']
|
|
|
|
return make_args + self.make_defs
|