summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Kozhevnikov <toxa81@gmail.com>2022-02-15 18:23:37 +0100
committerGitHub <noreply@github.com>2022-02-15 10:23:37 -0700
commitd61c1f623c7bf2912549811249a867c68f5a0dde (patch)
treeeff532fbadd26533087a4ba333f5c2ea39a7334a
parent55996d3ad4c53b95dbef599d8429beae4743af18 (diff)
downloadspack-d61c1f623c7bf2912549811249a867c68f5a0dde.tar.gz
spack-d61c1f623c7bf2912549811249a867c68f5a0dde.tar.bz2
spack-d61c1f623c7bf2912549811249a867c68f5a0dde.tar.xz
spack-d61c1f623c7bf2912549811249a867c68f5a0dde.zip
SIRIUS: optionlal dependency on Python (#28711)
* depend on Python only when building the module * fixes for shared costa libray * add deprecated=True for old packages
-rw-r--r--var/spack/repos/builtin/packages/costa/package.py6
-rw-r--r--var/spack/repos/builtin/packages/sirius/package.py51
2 files changed, 32 insertions, 25 deletions
diff --git a/var/spack/repos/builtin/packages/costa/package.py b/var/spack/repos/builtin/packages/costa/package.py
index 97f28808c1..38fb2cf9b9 100644
--- a/var/spack/repos/builtin/packages/costa/package.py
+++ b/var/spack/repos/builtin/packages/costa/package.py
@@ -21,9 +21,10 @@ class Costa(CMakePackage):
# note: The default archives produced with github do not have the archives
# of the submodules.
version('master', branch='master', submodules=True)
- version('2.0', sha256='ef283b904b1b77b7d0de401cbdc3d7850c77368f2b57249c6eaee3017794c4b8')
+ version('2.0', sha256='de250197f31f7d23226c6956a687c3ff46fb0ff6c621a932428236c3f7925fe4')
variant('scalapack', default=False, description='Build with ScaLAPACK API')
+ variant('shared', default=False, description="Build shared libraries")
depends_on('cmake@3.12:', type='build')
depends_on('mpi@3:')
@@ -53,5 +54,6 @@ class Costa(CMakePackage):
self.define('COSTA_WITH_APPS', 'OFF'),
self.define('COSTA_WITH_TESTS', 'OFF'),
self.define('COSTA_WITH_PROFILING', 'OFF'),
- self.define('COSTA_SCALAPACK', self.costa_scalapack_cmake_arg())
+ self.define('COSTA_SCALAPACK', self.costa_scalapack_cmake_arg()),
+ self.define('BUILD_SHARED_LIBS', '+shared' in self.spec)
]
diff --git a/var/spack/repos/builtin/packages/sirius/package.py b/var/spack/repos/builtin/packages/sirius/package.py
index 764cc3f022..5097e3f096 100644
--- a/var/spack/repos/builtin/packages/sirius/package.py
+++ b/var/spack/repos/builtin/packages/sirius/package.py
@@ -29,26 +29,26 @@ class Sirius(CMakePackage, CudaPackage):
version('7.2.3', sha256='6c10f0e87e50fcc7cdb4d1b2d35e91dba6144de8f111e36c7d08912e5942a906')
version('7.2.1', sha256='01bf6c9893ff471473e13351ca7fdc2ed6c1f4b1bb7afa151909ea7cd6fa0de7')
version('7.2.0', sha256='537800459db8a7553d7aa251c19f3a31f911930194b068bc5bca2dfb2c9b71db')
- version('7.0.2', sha256='ee613607ce3be0b2c3f69b560b2415ce1b0e015179002aa90739430dbfaa0389')
- version('7.0.1', sha256='cca11433f86e7f4921f7956d6589f27bf0fd5539f3e8f96e66a3a6f274888595')
- version('7.0.0', sha256='da783df11e7b65668e29ba8d55c8a6827e2216ad6d88040f84f42ac20fd1bb99')
- version('6.5.7', sha256='d886c3066163c43666ebac2ea50351df03907b5686671e514a75f131ba51b43c')
- version('6.5.6', sha256='c8120100bde4477545eae489ea7f9140d264a3f88696ec92728616d78f214cae')
- version('6.5.5', sha256='0b23d3a8512682eea67aec57271031c65f465b61853a165015b38f7477651dd1')
- version('6.5.4', sha256='5f731926b882a567d117afa5e0ed33291f1db887fce52f371ba51f014209b85d')
- version('6.5.3', sha256='eae0c303f332425a8c792d4455dca62557931b28a5df8b4c242652d5ffddd580')
- version('6.5.2', sha256='c18adc45b069ebae03f94eeeeed031ee99b3d8171fa6ee73c7c6fb1e42397fe7')
- version('6.5.1', sha256='599dd0fa25a4e83db2a359257a125e855d4259188cf5b0065b8e7e66378eacf3')
- version('6.5.0', sha256='5544f3abbb71dcd6aa08d18aceaf53c38373de4cbd0c3af44fbb39c20cfeb7cc')
- version('6.4.4', sha256='1c5de9565781847658c3cc11edcb404e6e6d1c5a9dfc81e977de7a9a7a162c8a')
- version('6.4.3', sha256='4d1effeadb84b3e1efd7d9ac88018ef567aa2e0aa72e1112f0abf2e493e2a189')
- version('6.4.2', sha256='40b9b66deebb6538fc0f4cd802554d0d763ea6426b9b2f0e8db8dc617e494479')
- version('6.4.1', sha256='86f25c71517952a63e92e0a9bcf66d27e4afb2b0d67cf84af480f116b8e7f53c')
- version('6.4.0', sha256='bc61758b71dd2996e2ff515b8c3560b2c69c00931cb2811a163a31bcfea4436e')
- version('6.3.4', sha256='8839e988b4bb6ef99b6180f7fba03a5537e31fce51bb3e4c2298b513d6a07e0a')
- version('6.3.3', sha256='7ba30a4e5c9a545433251211454ec0d59b74ba8941346057bc7de11e7f6886f7')
- version('6.3.2', sha256='1723e5ad338dad9a816369a6957101b2cae7214425406b12e8712c82447a7ee5')
- version('6.1.5', sha256='379f0a2e5208fd6d91c2bd4939c3a5c40002975fb97652946fa1bfe4a3ef97cb')
+ version('7.0.2', sha256='ee613607ce3be0b2c3f69b560b2415ce1b0e015179002aa90739430dbfaa0389', deprecated=True)
+ version('7.0.1', sha256='cca11433f86e7f4921f7956d6589f27bf0fd5539f3e8f96e66a3a6f274888595', deprecated=True)
+ version('7.0.0', sha256='da783df11e7b65668e29ba8d55c8a6827e2216ad6d88040f84f42ac20fd1bb99', deprecated=True)
+ version('6.5.7', sha256='d886c3066163c43666ebac2ea50351df03907b5686671e514a75f131ba51b43c', deprecated=True)
+ version('6.5.6', sha256='c8120100bde4477545eae489ea7f9140d264a3f88696ec92728616d78f214cae', deprecated=True)
+ version('6.5.5', sha256='0b23d3a8512682eea67aec57271031c65f465b61853a165015b38f7477651dd1', deprecated=True)
+ version('6.5.4', sha256='5f731926b882a567d117afa5e0ed33291f1db887fce52f371ba51f014209b85d', deprecated=True)
+ version('6.5.3', sha256='eae0c303f332425a8c792d4455dca62557931b28a5df8b4c242652d5ffddd580', deprecated=True)
+ version('6.5.2', sha256='c18adc45b069ebae03f94eeeeed031ee99b3d8171fa6ee73c7c6fb1e42397fe7', deprecated=True)
+ version('6.5.1', sha256='599dd0fa25a4e83db2a359257a125e855d4259188cf5b0065b8e7e66378eacf3', deprecated=True)
+ version('6.5.0', sha256='5544f3abbb71dcd6aa08d18aceaf53c38373de4cbd0c3af44fbb39c20cfeb7cc', deprecated=True)
+ version('6.4.4', sha256='1c5de9565781847658c3cc11edcb404e6e6d1c5a9dfc81e977de7a9a7a162c8a', deprecated=True)
+ version('6.4.3', sha256='4d1effeadb84b3e1efd7d9ac88018ef567aa2e0aa72e1112f0abf2e493e2a189', deprecated=True)
+ version('6.4.2', sha256='40b9b66deebb6538fc0f4cd802554d0d763ea6426b9b2f0e8db8dc617e494479', deprecated=True)
+ version('6.4.1', sha256='86f25c71517952a63e92e0a9bcf66d27e4afb2b0d67cf84af480f116b8e7f53c', deprecated=True)
+ version('6.4.0', sha256='bc61758b71dd2996e2ff515b8c3560b2c69c00931cb2811a163a31bcfea4436e', deprecated=True)
+ version('6.3.4', sha256='8839e988b4bb6ef99b6180f7fba03a5537e31fce51bb3e4c2298b513d6a07e0a', deprecated=True)
+ version('6.3.3', sha256='7ba30a4e5c9a545433251211454ec0d59b74ba8941346057bc7de11e7f6886f7', deprecated=True)
+ version('6.3.2', sha256='1723e5ad338dad9a816369a6957101b2cae7214425406b12e8712c82447a7ee5', deprecated=True)
+ version('6.1.5', sha256='379f0a2e5208fd6d91c2bd4939c3a5c40002975fb97652946fa1bfe4a3ef97cb', deprecated=True)
amdgpu_targets = (
'gfx701', 'gfx801', 'gfx802', 'gfx803',
@@ -80,7 +80,6 @@ class Sirius(CMakePackage, CudaPackage):
variant('single_precision', default=False, description="Use single precision arithmetics")
variant('profiler', default=True, description="Use internal profiler to measure execution time")
- depends_on('python', type=('build', 'run'))
depends_on('mpi')
depends_on('gsl')
depends_on('lapack')
@@ -90,6 +89,10 @@ class Sirius(CMakePackage, CudaPackage):
depends_on('spglib')
depends_on('hdf5+hl')
depends_on('pkgconfig', type='build')
+
+ # Python module
+ depends_on('python', when='+python', type=('build', 'run'))
+ depends_on('python', when='@:6', type=('build', 'run'))
depends_on('py-numpy', when='+python', type=('build', 'run'))
depends_on('py-scipy', when='+python', type=('build', 'run'))
depends_on('py-h5py', when='+python', type=('build', 'run'))
@@ -98,6 +101,8 @@ class Sirius(CMakePackage, CudaPackage):
depends_on('py-mpi4py', when='+python', type=('build', 'run'))
depends_on('py-voluptuous', when='+python', type=('build', 'run'))
depends_on('py-pybind11', when='+python', type=('build', 'run'))
+ extends('python', when='+python')
+
depends_on('magma', when='+magma')
depends_on('boost cxxstd=14 +filesystem', when='+boost_filesystem')
@@ -126,8 +131,6 @@ class Sirius(CMakePackage, CudaPackage):
# FindHIP cmake script only works for < 4.1
depends_on('hip@:4.0', when='@:7.2.0 +rocm')
- extends('python', when='+python')
-
conflicts('+shared', when='@6.3.0:6.4')
conflicts('+boost_filesystem', when='~apps')
conflicts('^libxc@5.0.0') # known to produce incorrect results
@@ -144,6 +147,8 @@ class Sirius(CMakePackage, CudaPackage):
depends_on('eigen@3.4.0:', when='@7.4: +tests')
+ depends_on('costa+shared', when='@7.4:')
+
# TODO:
# add support for CRAY_LIBSCI, testing