summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/upcxx/package.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/upcxx/package.py b/var/spack/repos/builtin/packages/upcxx/package.py
index 482655464f..bed87b848d 100644
--- a/var/spack/repos/builtin/packages/upcxx/package.py
+++ b/var/spack/repos/builtin/packages/upcxx/package.py
@@ -9,12 +9,14 @@ import re
from spack.package import *
+@llnl.util.lang.memoized
def is_CrayXC():
return spack.platforms.host().name == "linux" and (
os.environ.get("CRAYPE_NETWORK_TARGET") == "aries"
)
+@llnl.util.lang.memoized
def is_CrayEX():
if spack.platforms.host().name == "linux":
target = os.environ.get("CRAYPE_NETWORK_TARGET")
@@ -22,11 +24,15 @@ def is_CrayEX():
return True
elif target is None: # but some systems lack Cray PrgEnv
fi_info = which("fi_info")
- if fi_info and fi_info("-l", output=str).find("cxi") >= 0:
+ if (
+ fi_info
+ and fi_info("-l", output=str, error=str, fail_on_error=False).find("cxi") >= 0
+ ):
return True
return False
+@llnl.util.lang.memoized
def cross_detect():
if is_CrayXC():
if which("srun"):