diff --git a/var/spack/repos/builtin/packages/eckit/package.py b/var/spack/repos/builtin/packages/eckit/package.py index fdfe2eab6961d5..f389e2b4d50ba3 100644 --- a/var/spack/repos/builtin/packages/eckit/package.py +++ b/var/spack/repos/builtin/packages/eckit/package.py @@ -174,6 +174,21 @@ def cmake_args(self): # (the LAPACK backend is still built though): args.append(self.define("ENABLE_LAPACK", "linalg=lapack" in self.spec)) + if self.spec.satisfies("linalg=lapack"): + lapack_vendors = { + "amdlibflame": "AOCL", + "atlas": "ATLAS", + "essl": "IBMESSL", + "flexiblas": "FlexiBLAS", + "fujitsu-ssl2": "Fujitsu_SSL2", + "netlib-lapack": "Generic", + "nvhpc": "NVHPC", + "openblas": "OpenBLAS", + } + if self.spec["lapack"].name in lapack_vendors.keys(): + vendor = lapack_vendors[self.spec["lapack"].name] + args.append(self.define("BLA_VENDOR", vendor)) + if "+admin" in self.spec and "+termlib" in self.spec["ncurses"]: # Make sure that libeckit_cmd is linked to a library that resolves 'setupterm', # 'tputs', etc. That is either libncurses (when 'ncurses~termlib') or libtinfo (when