Add conflicts/updates for HEP tools on Summit (#29556)
* Fix bad `-mfma` flag on summit * ROOT: new version and ppc conflict See https://github.com/root-project/root/issues/9297
This commit is contained in:
parent
3448a4642a
commit
226004b960
@ -31,6 +31,7 @@ class Root(CMakePackage):
|
|||||||
# Development version (when more recent than production).
|
# Development version (when more recent than production).
|
||||||
|
|
||||||
# Production version
|
# Production version
|
||||||
|
version('6.26.00', sha256='5fb9be71fdf0c0b5e5951f89c2f03fcb5e74291d043f6240fb86f5ca977d4b31')
|
||||||
version('6.24.06', sha256='907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522')
|
version('6.24.06', sha256='907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522')
|
||||||
version('6.24.02', sha256='0507e1095e279ccc7240f651d25966024325179fa85a1259b694b56723ad7c1c')
|
version('6.24.02', sha256='0507e1095e279ccc7240f651d25966024325179fa85a1259b694b56723ad7c1c')
|
||||||
version('6.24.00', sha256='9da30548a289211c3122d47dacb07e85d35e61067fac2be6c5a5ff7bda979989')
|
version('6.24.00', sha256='9da30548a289211c3122d47dacb07e85d35e61067fac2be6c5a5ff7bda979989')
|
||||||
@ -294,6 +295,9 @@ class Root(CMakePackage):
|
|||||||
# ROOT <6.14 was incompatible with Python 3.7+
|
# ROOT <6.14 was incompatible with Python 3.7+
|
||||||
conflicts('^python@3.7:', when='@:6.13 +python')
|
conflicts('^python@3.7:', when='@:6.13 +python')
|
||||||
|
|
||||||
|
# See https://github.com/root-project/root/issues/9297
|
||||||
|
conflicts('target=ppc64le:', when='@:6.24')
|
||||||
|
|
||||||
# Incompatible variants
|
# Incompatible variants
|
||||||
conflicts('+opengl', when='~x', msg='OpenGL requires X')
|
conflicts('+opengl', when='~x', msg='OpenGL requires X')
|
||||||
conflicts('+tmva', when='~gsl', msg='TVMA requires GSL')
|
conflicts('+tmva', when='~gsl', msg='TVMA requires GSL')
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
--- spack-src/CMakeLists.txt.bak 2019-02-05 19:20:28.000000000 +0900
|
|
||||||
+++ spack-src/CMakeLists.txt 2020-08-17 16:54:33.476417139 +0900
|
|
||||||
@@ -51,7 +51,7 @@
|
|
||||||
# SIMD and FMA instructions set-------------------------------------------------
|
|
||||||
if (NEON)
|
|
||||||
message(STATUS "Using NEON instructions!")
|
|
||||||
- set(PACKED_INSTR "-mfpu=neon ")
|
|
||||||
+ set(PACKED_INSTR " ")
|
|
||||||
else()
|
|
||||||
if (SSE AND (NOT (AVX OR AVX2) ))
|
|
||||||
message(STATUS "Using SSE instructions!")
|
|
@ -18,8 +18,6 @@ class Vdt(CMakePackage):
|
|||||||
version('0.3.7', sha256='713a7e6d76d98f3b2b56b5216e7d5906e30f17865a5c7c889968e9a0b0664949')
|
version('0.3.7', sha256='713a7e6d76d98f3b2b56b5216e7d5906e30f17865a5c7c889968e9a0b0664949')
|
||||||
version('0.3.6', sha256='fb8f6386f2cd1eeb03db43f2b5c83a172107949bb5e5e8d4dfa603660a9757b0')
|
version('0.3.6', sha256='fb8f6386f2cd1eeb03db43f2b5c83a172107949bb5e5e8d4dfa603660a9757b0')
|
||||||
|
|
||||||
patch('CMakeLists.txt.patch', when='target=aarch64:')
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def build_directory(self):
|
def build_directory(self):
|
||||||
d = join_path(self.stage.path, 'spack-build')
|
d = join_path(self.stage.path, 'spack-build')
|
||||||
@ -28,10 +26,18 @@ def build_directory(self):
|
|||||||
return d
|
return d
|
||||||
|
|
||||||
def cmake_args(self):
|
def cmake_args(self):
|
||||||
|
spec = self.spec
|
||||||
|
|
||||||
|
disable_features = set()
|
||||||
|
if spec.satisfies('target=aarch64:'):
|
||||||
|
disable_features.add('neon')
|
||||||
|
elif spec.satisfies('target=ppc64le:'):
|
||||||
|
disable_features.add('fma')
|
||||||
|
|
||||||
options = []
|
options = []
|
||||||
for simd_feature in ('sse', 'avx', 'avx2', 'fma', 'neon'):
|
for f in ['sse', 'avx', 'avx2', 'fma', 'neon']:
|
||||||
options.append("-D{0}={1}".format(
|
options.append(self.define(
|
||||||
simd_feature.upper(),
|
f.upper(),
|
||||||
"ON" if simd_feature in self.spec.target else "OFF"
|
f not in disable_features and f in self.spec.target
|
||||||
))
|
))
|
||||||
return options
|
return options
|
||||||
|
Loading…
Reference in New Issue
Block a user