diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/amdlibm/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/amdlibm/package.py | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/var/spack/repos/builtin/packages/amdlibm/package.py b/var/spack/repos/builtin/packages/amdlibm/package.py index c38c98fd1e..fa88f3bf56 100644 --- a/var/spack/repos/builtin/packages/amdlibm/package.py +++ b/var/spack/repos/builtin/packages/amdlibm/package.py @@ -25,6 +25,7 @@ class Amdlibm(SConsPackage): # of master branch. # To install amdlibm from latest master branch: # spack install amdlibm ^amdlibm@master + version("3.1", branch="aocl-3.1") version("3.0", branch="aocl-3.0") version("2.2", commit="4033e022da428125747e118ccd6fdd9cee21c470") @@ -32,6 +33,7 @@ class Amdlibm(SConsPackage): description="Building with verbosity") # Mandatory dependencies + depends_on("python@3.6.2", when="%aocc@3.2.0:", type=("build", "run")) depends_on("python@3.6.1:", type=("build", "run")) depends_on("scons@3.1.2:", type=("build")) depends_on("mpfr", type=("link")) @@ -39,25 +41,35 @@ class Amdlibm(SConsPackage): patch("0001-libm-ose-Scripts-cleanup-pyc-files.patch", when="@2.2") patch("0002-libm-ose-prevent-log-v3.c-from-building.patch", when="@2.2") - conflicts("%gcc@:9.1", msg="Minimum required GCC version is 9.2.0") + conflicts( + '%gcc@:9.1.0', + msg='Minimum required GCC version is 9.2.0') + conflicts( + '%gcc@11.2.0:', + msg='Maximum required GCC version is 11.1.0') + conflicts( + '%aocc@3.2.0', + when='@2.2:3.0', + msg='amdlibm 2.2 and 3.0 versions are not supported with AOCC 3.2.0') def build_args(self, spec, prefix): """Setting build arguments for amdlibm """ args = ["--prefix={0}".format(prefix)] - if "%aocc" in spec: - args.append("--compiler=aocc") - # we are circumventing the use of # Spacks compiler wrappers because # SCons wipes out all environment variables. - args.append("CC={0}".format(self.compiler.cc)) - args.append("CXX={0}".format(self.compiler.cxx)) + if spec.satisfies("@:3.0 %aocc"): + args.append("--compiler=aocc") + + var_prefix = '' if spec.satisfies("@:3.0") else 'ALM_' + args.append("{0}CC={1}".format(var_prefix, self.compiler.cc)) + args.append("{0}CXX={1}".format(var_prefix, self.compiler.cxx)) if "+verbose" in spec: - args.append("verbose=1") + args.append("--verbose=1") else: - args.append("verbose=0") + args.append("--verbose=0") return args |