From d5e8cabe7565fc92f1b64375958146ef57fbd18c Mon Sep 17 00:00:00 2001
From: Massimiliano Culpo <massimiliano.culpo@gmail.com>
Date: Fri, 22 Jun 2018 15:03:47 +0200
Subject: [PATCH] Fixed linking of R with MKL + configure issue in a dep
 (pixman) (#8449)

---
 .../repos/builtin/packages/pixman/package.py  | 19 +++++++++++++++++++
 var/spack/repos/builtin/packages/r/package.py |  2 +-
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/var/spack/repos/builtin/packages/pixman/package.py b/var/spack/repos/builtin/packages/pixman/package.py
index 7107148688..7714120049 100644
--- a/var/spack/repos/builtin/packages/pixman/package.py
+++ b/var/spack/repos/builtin/packages/pixman/package.py
@@ -47,6 +47,25 @@ class Pixman(AutotoolsPackage):
     # Patch is obtained from above link.
     patch('clang.patch', when='%clang@9.1.0-apple:')
 
+    @run_before('build')
+    def patch_config_h_for_intel(self):
+        config_h = join_path(self.stage.source_path, 'config.h')
+
+        # Intel disguises itself as GNU, but doesn't implement
+        # the same builtin functions. This causes in this case
+        # a positive detection of GCC vector extensions, which
+        # is bound to fail at compile time because Intel has no
+        # __builtin_shuffle. See also:
+        #
+        # https://software.intel.com/en-us/forums/intel-c-compiler/topic/758013
+        #
+        if '%intel' in self.spec:
+            filter_file(
+                '#define HAVE_GCC_VECTOR_EXTENSIONS /\*\*/',
+                '/* #undef HAVE_GCC_VECTOR_EXTENSIONS */',
+                config_h
+            )
+
     def configure_args(self):
         args = [
             '--enable-libpng',
diff --git a/var/spack/repos/builtin/packages/r/package.py b/var/spack/repos/builtin/packages/r/package.py
index 46c56787aa..b1c9f49eb8 100644
--- a/var/spack/repos/builtin/packages/r/package.py
+++ b/var/spack/repos/builtin/packages/r/package.py
@@ -119,7 +119,7 @@ def configure_args(self):
 
         if '+external-lapack' in spec:
             config_args.extend([
-                '--with-blas',
+                '--with-blas={0}'.format(spec['blas'].libs),
                 '--with-lapack'
             ])
 
-- 
GitLab