summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/octave/package.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/var/spack/repos/builtin/packages/octave/package.py b/var/spack/repos/builtin/packages/octave/package.py
index ba6709c822..172ec2af79 100644
--- a/var/spack/repos/builtin/packages/octave/package.py
+++ b/var/spack/repos/builtin/packages/octave/package.py
@@ -3,6 +3,7 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
import os.path
+import re
import shutil
import sys
import tempfile
@@ -160,10 +161,19 @@ class Octave(AutotoolsPackage, GNUMirrorPackage):
config_args = []
# Required dependencies
- config_args.extend([
- "--with-blas=%s" % spec['blas'].libs.ld_flags,
- "--with-lapack=%s" % spec['lapack'].libs.ld_flags
- ])
+ if '^mkl' in spec and 'gfortran' in self.compiler.fc:
+ mkl_re = re.compile(r'(mkl_)intel(_i?lp64\b)')
+ config_args.extend([
+ mkl_re.sub(r'\g<1>gf\g<2>',
+ '--with-blas={0}'.format(
+ spec['blas'].libs.ld_flags)),
+ '--with-lapack'
+ ])
+ else:
+ config_args.extend([
+ '--with-blas={0}'.format(spec['blas'].libs.ld_flags),
+ '--with-lapack={0}'.format(spec['lapack'].libs.ld_flags)
+ ])
# Strongly recommended dependencies
if '+readline' in spec: