From b85803ae6c6d92f755ac84d2dc264edae327cd06 Mon Sep 17 00:00:00 2001 From: Elliott Slaughter Date: Fri, 21 Jul 2023 13:59:04 -0700 Subject: legion: Update Python dependencies. Fix variant requirements. Remove TLS. (#39003) * legion: Missing Python dependency. Fix variant dependencies. Remove TLS. * Update Python version bound and add NumPy dependency. * Update requires syntax. --- var/spack/repos/builtin/packages/legion/package.py | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/legion/package.py b/var/spack/repos/builtin/packages/legion/package.py index 5bbd3788f0..a06af2ce7a 100644 --- a/var/spack/repos/builtin/packages/legion/package.py +++ b/var/spack/repos/builtin/packages/legion/package.py @@ -100,7 +100,10 @@ class Legion(CMakePackage, ROCmPackage): depends_on("kokkos@3.3.01:+rocm", when="+kokkos+rocm") - depends_on("python@3", when="+python") + # https://github.com/StanfordLegion/legion/#dependencies + depends_on("python@3.8:", when="+python") + depends_on("py-cffi", when="+python") + depends_on("py-numpy", when="+python") depends_on("papi", when="+papi") depends_on("zlib", when="+zlib") @@ -111,8 +114,6 @@ class Legion(CMakePackage, ROCmPackage): cpp_stds = ["11", "14", "17", "20"] variant("cxxstd", default="11", values=cpp_stds, multi=False) - # TODO: Need a AMD/HIP variant to match support landing in 21.03.0. - # Network transport layer: the underlying data transport API should be used for # distributed data movement. For Legion, gasnet is the currently the most # mature. We have many users that default to using no network layer for @@ -184,12 +185,6 @@ class Legion(CMakePackage, ROCmPackage): description="Enable runtime privildge checks in Legion accessors.", ) - variant( - "enable_tls", - default=False, - description="Enable thread-local-storage of the Legion context.", - ) - variant( "output_level", default="warning", @@ -223,6 +218,7 @@ class Legion(CMakePackage, ROCmPackage): conflicts("+cuda_hijack", when="~cuda") variant("fortran", default=False, description="Enable Fortran bindings.") + requires("+bindings", when="+fortran") variant("hdf5", default=False, description="Enable support for HDF5.") @@ -245,6 +241,8 @@ class Legion(CMakePackage, ROCmPackage): variant("papi", default=False, description="Enable PAPI performance measurements.") variant("python", default=False, description="Enable Python support.") + requires("+bindings", when="+python") + requires("+shared", when="+python") variant("zlib", default=True, description="Enable zlib support.") @@ -321,9 +319,6 @@ class Legion(CMakePackage, ROCmPackage): if "+privilege_checks" in spec: # default is off. options.append("-DLegion_PRIVILEGE_CHECKS=ON") - if "+enable_tls" in spec: - # default is off. - options.append("-DLegion_ENABLE_TLS=ON") if "output_level" in spec: level = str.upper(spec.variants["output_level"].value) options.append("-DLegion_OUTPUT_LEVEL=%s" % level) @@ -400,7 +395,6 @@ class Legion(CMakePackage, ROCmPackage): # default is off. options.append("-DLegion_BUILD_BINDINGS=ON") options.append("-DLegion_REDOP_COMPLEX=ON") # required for bindings - options.append("-DLegion_USE_Fortran=ON") if spec.variants["build_type"].value == "Debug": cmake_cxx_flags.extend(["-DDEBUG_REALM", "-DDEBUG_LEGION", "-ggdb"]) -- cgit v1.2.3-60-g2f50