diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/sz/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/sz/package.py | 195 |
1 files changed, 111 insertions, 84 deletions
diff --git a/var/spack/repos/builtin/packages/sz/package.py b/var/spack/repos/builtin/packages/sz/package.py index 9d7cf3932c..e16657a6b6 100644 --- a/var/spack/repos/builtin/packages/sz/package.py +++ b/var/spack/repos/builtin/packages/sz/package.py @@ -10,63 +10,66 @@ class Sz(CMakePackage): """Error-bounded Lossy Compressor for HPC Data""" homepage = "https://szcompressor.org" - url = "https://github.com/szcompressor/SZ/releases/download/v2.1.11/SZ-2.1.11.tar.gz" - git = "https://github.com/szcompressor/sz" - maintainers = ['disheng222', 'robertu94'] - - tags = ['e4s'] - - version('master', branch='master') - version('2.1.12.2', sha256='427e263e1fed1b0a56e13e0aff8e6a19c6d78d5f35dd16856876c70ab6066dc6') - version('2.1.12', sha256='3712b2cd7170d1511569e48a208f02dfb72ecd7ad053c321e2880b9083e150de') - version('2.1.11.1', sha256='e6fa5c969b012782b1e5e9fbd1cd7d1c0ace908d9ec982e78b2910ec5c2161ac') - version('2.1.11', sha256='85b8ef99344a3317ba9ee63ca4b9d99a51d1832d4d8880e01c7c56b3a69cacc9') - version('2.1.10', sha256='3aba7619bdb5412218f162696f946c9d3a3df5acf128ddc685b21e45c11f6ae3', - url="https://github.com/szcompressor/SZ/releases/download/v2.1.10/sz-2.1.10.tar.gz") - version('2.1.9', sha256='491724ff1c0eaaab5e1a7a28e36aba6da9dcbeddb29d8d21a6d1388383d4891e') - version('2.1.8.3', sha256='be94f3c8ab03d6849c59a98e0ebf80816a6b8d07a1d762a4b285498acb2f3871') - version('2.1.8.1', sha256='a27c9c9da16c9c4232c54813ba79178945f47609043f11501d49a171e47d3f46') - version('2.1.8.0', sha256='8d6bceb59a03d52e601e29d9b35c21b146c248abae352f9a4828e91d8d26aa24') - version('2.0.2.0', sha256='176c65b421bdec8e91010ffbc9c7bf7852c799972101d6b66d2a30d9702e59b0') - version('1.4.13.5', sha256='b5e37bf3c377833eed0a7ca0471333c96cd2a82863abfc73893561aaba5f18b9') - version('1.4.13.4', sha256='c99b95793c48469cac60e6cf82f921babf732ca8c50545a719e794886289432b') - version('1.4.13.3', sha256='9d80390f09816bf01b7a817e07339030d596026b00179275616af55ed3c1af98') - version('1.4.13.2', sha256='bc45329bf54876ed0f721998940855dbd5fda54379ef35dad8463325488ea4c6') - version('1.4.13.0', sha256='baaa7fa740a47e152c319b8d7b9a69fe96b4fea5360621cdc96cb250635f946f') - version('1.4.12.3', sha256='c1413e1c260fac7a48cb11c6dd705730525f134b9f9b244af59885d564ac7a6f') - version('1.4.12.1', sha256='98289d75481a6e407e4027b5e23013ae83b4aed88b3f150327ea711322cd54b6') - version('1.4.11.1', sha256='6cbc5b233a3663a166055f1874f17c96ba29aa5a496d352707ab508288baa65c') - version('1.4.11.0', sha256='52ff03c688522ebe085caa7a5f73ace28d8eaf0eb9a161a34a9d90cc5672ff8c') - version('1.4.10.0', sha256='cf23cf1ffd7c69c3d3128ae9c356b6acdc03a38f92c02db5d9bfc04f3fabc506') - version('1.4.9.2', sha256='9dc785274d068d04c2836955fc93518a9797bfd409b46fea5733294b7c7c18f8') - - variant('python', default=False, description="builds the python wrapper") - variant('netcdf', default=False, description="build the netcdf reader") - variant('hdf5', default=False, description="build the hdf5 filter") - variant('pastri', default=False, description="build the pastri mode") - variant('time_compression', default=False, description="build the time based compression mode") - variant('random_access', default=False, description="build the random access compression mode") - variant('fortran', default=False, description='Enable fortran compilation') - variant('shared', default=True, description="build shared versions of the libraries") - variant('stats', default=False, description="build profiling statistics for compression") + url = "https://github.com/szcompressor/SZ/releases/download/v2.1.11/SZ-2.1.11.tar.gz" + git = "https://github.com/szcompressor/sz" + maintainers = ["disheng222", "robertu94"] + + tags = ["e4s"] + + version("master", branch="master") + version("2.1.12.2", sha256="427e263e1fed1b0a56e13e0aff8e6a19c6d78d5f35dd16856876c70ab6066dc6") + version("2.1.12", sha256="3712b2cd7170d1511569e48a208f02dfb72ecd7ad053c321e2880b9083e150de") + version("2.1.11.1", sha256="e6fa5c969b012782b1e5e9fbd1cd7d1c0ace908d9ec982e78b2910ec5c2161ac") + version("2.1.11", sha256="85b8ef99344a3317ba9ee63ca4b9d99a51d1832d4d8880e01c7c56b3a69cacc9") + version( + "2.1.10", + sha256="3aba7619bdb5412218f162696f946c9d3a3df5acf128ddc685b21e45c11f6ae3", + url="https://github.com/szcompressor/SZ/releases/download/v2.1.10/sz-2.1.10.tar.gz", + ) + version("2.1.9", sha256="491724ff1c0eaaab5e1a7a28e36aba6da9dcbeddb29d8d21a6d1388383d4891e") + version("2.1.8.3", sha256="be94f3c8ab03d6849c59a98e0ebf80816a6b8d07a1d762a4b285498acb2f3871") + version("2.1.8.1", sha256="a27c9c9da16c9c4232c54813ba79178945f47609043f11501d49a171e47d3f46") + version("2.1.8.0", sha256="8d6bceb59a03d52e601e29d9b35c21b146c248abae352f9a4828e91d8d26aa24") + version("2.0.2.0", sha256="176c65b421bdec8e91010ffbc9c7bf7852c799972101d6b66d2a30d9702e59b0") + version("1.4.13.5", sha256="b5e37bf3c377833eed0a7ca0471333c96cd2a82863abfc73893561aaba5f18b9") + version("1.4.13.4", sha256="c99b95793c48469cac60e6cf82f921babf732ca8c50545a719e794886289432b") + version("1.4.13.3", sha256="9d80390f09816bf01b7a817e07339030d596026b00179275616af55ed3c1af98") + version("1.4.13.2", sha256="bc45329bf54876ed0f721998940855dbd5fda54379ef35dad8463325488ea4c6") + version("1.4.13.0", sha256="baaa7fa740a47e152c319b8d7b9a69fe96b4fea5360621cdc96cb250635f946f") + version("1.4.12.3", sha256="c1413e1c260fac7a48cb11c6dd705730525f134b9f9b244af59885d564ac7a6f") + version("1.4.12.1", sha256="98289d75481a6e407e4027b5e23013ae83b4aed88b3f150327ea711322cd54b6") + version("1.4.11.1", sha256="6cbc5b233a3663a166055f1874f17c96ba29aa5a496d352707ab508288baa65c") + version("1.4.11.0", sha256="52ff03c688522ebe085caa7a5f73ace28d8eaf0eb9a161a34a9d90cc5672ff8c") + version("1.4.10.0", sha256="cf23cf1ffd7c69c3d3128ae9c356b6acdc03a38f92c02db5d9bfc04f3fabc506") + version("1.4.9.2", sha256="9dc785274d068d04c2836955fc93518a9797bfd409b46fea5733294b7c7c18f8") + + variant("python", default=False, description="builds the python wrapper") + variant("netcdf", default=False, description="build the netcdf reader") + variant("hdf5", default=False, description="build the hdf5 filter") + variant("pastri", default=False, description="build the pastri mode") + variant("time_compression", default=False, description="build the time based compression mode") + variant("random_access", default=False, description="build the random access compression mode") + variant("fortran", default=False, description="Enable fortran compilation") + variant("shared", default=True, description="build shared versions of the libraries") + variant("stats", default=False, description="build profiling statistics for compression") # Part of latest sources don't support -O3 optimization # with Fujitsu compiler. - patch('fix_optimization.patch', when='@2.0.2.0:%fj') + patch("fix_optimization.patch", when="@2.0.2.0:%fj") - depends_on('zlib') - depends_on('zstd') + depends_on("zlib") + depends_on("zstd") - extends('python', when="+python") - depends_on('python@3:', when="+python", type=('build', 'link', 'run')) - depends_on('swig@3.12:', when="+python", type='build') - depends_on('py-numpy', when="+python", type=('build', 'link', 'run')) - depends_on('hdf5', when="+hdf5") - depends_on('netcdf-c', when="+netcdf") - depends_on('cmake@3.13:', type='build') - depends_on('cunit', type="test") + extends("python", when="+python") + depends_on("python@3:", when="+python", type=("build", "link", "run")) + depends_on("swig@3.12:", when="+python", type="build") + depends_on("py-numpy", when="+python", type=("build", "link", "run")) + depends_on("hdf5", when="+hdf5") + depends_on("netcdf-c", when="+netcdf") + depends_on("cmake@3.13:", type="build") + depends_on("cunit", type="test") - patch('ctags-only-if-requested.patch', when='@2.1.8.1:2.1.8.3') + patch("ctags-only-if-requested.patch", when="@2.1.8.1:2.1.8.3") @property def build_directory(self): @@ -143,61 +146,85 @@ class Sz(CMakePackage): return args - @run_after('build') + @run_after("build") @on_package_attributes(run_tests=True) def test_build(self): - make('test') + make("test") def _test_2d_float(self): """This test performs simple 2D compression/decompression (float)""" test_data_dir = self.test_suite.current_test_data_dir - filename = 'testfloat_8_8_128.dat' + filename = "testfloat_8_8_128.dat" orifile = test_data_dir.join(filename) - exe = 'sz' - reason = 'testing 2D compression of {0}'.format(exe) - options = ['-z', '-f', '-i', orifile, '-M', - 'REL', '-R', '1E-3', '-2', '8', '1024'] - - self.run_test(exe, options, [], installed=True, - purpose=reason, skip_missing=True, work_dir=test_data_dir) - - filename = 'testfloat_8_8_128.dat.sz' + exe = "sz" + reason = "testing 2D compression of {0}".format(exe) + options = ["-z", "-f", "-i", orifile, "-M", "REL", "-R", "1E-3", "-2", "8", "1024"] + + self.run_test( + exe, + options, + [], + installed=True, + purpose=reason, + skip_missing=True, + work_dir=test_data_dir, + ) + + filename = "testfloat_8_8_128.dat.sz" decfile = test_data_dir.join(filename) - reason = 'testing 2D decompression of {0}'.format(exe) - options = ['-x', '-f', '-i', orifile, '-s', decfile, - '-2', '8', '1024', '-a'] + reason = "testing 2D decompression of {0}".format(exe) + options = ["-x", "-f", "-i", orifile, "-s", decfile, "-2", "8", "1024", "-a"] - self.run_test(exe, options, [], installed=True, purpose=reason, - skip_missing=True, work_dir=test_data_dir) + self.run_test( + exe, + options, + [], + installed=True, + purpose=reason, + skip_missing=True, + work_dir=test_data_dir, + ) def _test_3d_float(self): """This test performs simple 3D compression/decompression (float)""" test_data_dir = self.test_suite.current_test_data_dir - filename = 'testfloat_8_8_128.dat' + filename = "testfloat_8_8_128.dat" orifile = test_data_dir.join(filename) - exe = 'sz' - reason = 'testing 3D compression of {0}'.format(exe) - options = ['-z', '-f', '-i', orifile, '-M', 'REL', - '-R', '1E-3', '-3', '8', '8', '128'] - - self.run_test(exe, options, [], installed=True, purpose=reason, - skip_missing=True, work_dir=test_data_dir) - - filename = 'testfloat_8_8_128.dat.sz' + exe = "sz" + reason = "testing 3D compression of {0}".format(exe) + options = ["-z", "-f", "-i", orifile, "-M", "REL", "-R", "1E-3", "-3", "8", "8", "128"] + + self.run_test( + exe, + options, + [], + installed=True, + purpose=reason, + skip_missing=True, + work_dir=test_data_dir, + ) + + filename = "testfloat_8_8_128.dat.sz" decfile = test_data_dir.join(filename) - reason = 'testing 3D decompression of {0}'.format(exe) - options = ['-x', '-f', '-i', orifile, '-s', decfile, - '-3', '8', '8', '128', '-a'] - - self.run_test(exe, options, [], installed=True, purpose=reason, - skip_missing=True, work_dir=test_data_dir) + reason = "testing 3D decompression of {0}".format(exe) + options = ["-x", "-f", "-i", orifile, "-s", decfile, "-3", "8", "8", "128", "-a"] + + self.run_test( + exe, + options, + [], + installed=True, + purpose=reason, + skip_missing=True, + work_dir=test_data_dir, + ) def test(self): """Perform smoke tests on the installed package""" |