From c769e99eda84921c3cfa9bb95e60bfc20eb655da Mon Sep 17 00:00:00 2001 From: "Mark C. Miller" Date: Fri, 25 Aug 2017 15:08:49 -0700 Subject: Zfp shared libs (#5212) --- var/spack/repos/builtin/packages/zfp/package.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/var/spack/repos/builtin/packages/zfp/package.py b/var/spack/repos/builtin/packages/zfp/package.py index b51426347f..b5e3c7c2bc 100644 --- a/var/spack/repos/builtin/packages/zfp/package.py +++ b/var/spack/repos/builtin/packages/zfp/package.py @@ -35,8 +35,8 @@ class Zfp(MakefilePackage): of zfp 0.5.1 or newer also support compression of integer data. """ - homepage = "http://computation.llnl.gov/projects/floating-point-compression" - url = "http://computation.llnl.gov/projects/floating-point-compression/download/zfp-0.5.1.tar.gz" + homepage = 'http://computation.llnl.gov/projects/floating-point-compression' + url = 'http://computation.llnl.gov/projects/floating-point-compression/download/zfp-0.5.1.tar.gz' version('0.5.1', '0ed7059a9b480635e0dd33745e213d17') version('0.5.0', '2ab29a852e65ad85aae38925c5003654') @@ -45,8 +45,11 @@ class Zfp(MakefilePackage): default='64', values=('8', '16', '32', '64'), multi=False, - description='Bit stream word size: use smaller for finer \ - rate granularity. Use 8 for H5Z-ZFP filter.') + description='Bit stream word size: use smaller for finer ' \ + 'rate granularity. Use 8 for H5Z-ZFP filter.') + + variant('shared', default=True, + description='Build shared versions of the library') def edit(self, spec, prefix): config_file = FileFilter('Config') @@ -56,15 +59,23 @@ class Zfp(MakefilePackage): spec.variants['bsws'].value) def build(self, spec, prefix): - make("shared") + with working_dir('src'): + if '~shared' in spec: + make('static') + else: + make('shared') def install(self, spec, prefix): incdir = 'include' if spec.satisfies('@0.5.1:') else 'inc' - # No install provided + # Note: ZFP package does not provide an install target mkdirp(prefix.lib) mkdirp(prefix.include) - install('lib/libzfp.so', prefix.lib) + # Note: ZFP package builds .so files even on OSX + if '~shared' in spec: + install('lib/libzfp.a', prefix.lib) + else: + install('lib/libzfp.so', prefix.lib) install('%s/zfp.h' % incdir, prefix.include) install('%s/bitstream.h' % incdir, prefix.include) if spec.satisfies('@0.5.1:'): -- cgit v1.2.3-70-g09d2