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:
Seth R. Johnson 2022-03-21 17:43:01 -04:00 committed by GitHub
parent 3448a4642a
commit 226004b960
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 17 deletions

View file

@ -31,6 +31,7 @@ class Root(CMakePackage):
# Development version (when more recent than production).
# Production version
version('6.26.00', sha256='5fb9be71fdf0c0b5e5951f89c2f03fcb5e74291d043f6240fb86f5ca977d4b31')
version('6.24.06', sha256='907f69f4baca1e4f30eeb4979598ca7599b6aa803ca046e80e25b6bbaa0ef522')
version('6.24.02', sha256='0507e1095e279ccc7240f651d25966024325179fa85a1259b694b56723ad7c1c')
version('6.24.00', sha256='9da30548a289211c3122d47dacb07e85d35e61067fac2be6c5a5ff7bda979989')
@ -294,6 +295,9 @@ class Root(CMakePackage):
# ROOT <6.14 was incompatible with Python 3.7+
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
conflicts('+opengl', when='~x', msg='OpenGL requires X')
conflicts('+tmva', when='~gsl', msg='TVMA requires GSL')

View file

@ -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!")

View file

@ -18,8 +18,6 @@ class Vdt(CMakePackage):
version('0.3.7', sha256='713a7e6d76d98f3b2b56b5216e7d5906e30f17865a5c7c889968e9a0b0664949')
version('0.3.6', sha256='fb8f6386f2cd1eeb03db43f2b5c83a172107949bb5e5e8d4dfa603660a9757b0')
patch('CMakeLists.txt.patch', when='target=aarch64:')
@property
def build_directory(self):
d = join_path(self.stage.path, 'spack-build')
@ -28,10 +26,18 @@ def build_directory(self):
return d
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 = []
for simd_feature in ('sse', 'avx', 'avx2', 'fma', 'neon'):
options.append("-D{0}={1}".format(
simd_feature.upper(),
"ON" if simd_feature in self.spec.target else "OFF"
for f in ['sse', 'avx', 'avx2', 'fma', 'neon']:
options.append(self.define(
f.upper(),
f not in disable_features and f in self.spec.target
))
return options