From 9105474ccf9747b02bf38586a2e4c0d0b497ce9b Mon Sep 17 00:00:00 2001
From: Florent Pruvost <florent.pruvost@inria.fr>
Date: Thu, 22 Jan 2015 14:31:56 +0000
Subject: [PATCH] avoid to mix lib32 and lib64 path suffixes during detection
 of MKL BLAS/LAPACK

---
 cmake_modules/morse/find/FindBLAS.cmake   | 11 +++++++----
 cmake_modules/morse/find/FindLAPACK.cmake | 22 ++++++++++++++--------
 2 files changed, 21 insertions(+), 12 deletions(-)

diff --git a/cmake_modules/morse/find/FindBLAS.cmake b/cmake_modules/morse/find/FindBLAS.cmake
index 3d8be8a23..722ea9174 100644
--- a/cmake_modules/morse/find/FindBLAS.cmake
+++ b/cmake_modules/morse/find/FindBLAS.cmake
@@ -178,10 +178,13 @@ macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list _thread)
         if (BLAS_DIR)
             list(APPEND _libdir "${BLAS_DIR}")
             list(APPEND _libdir "${BLAS_DIR}/lib")
-            list(APPEND _libdir "${BLAS_DIR}/lib32")
-            list(APPEND _libdir "${BLAS_DIR}/lib64")
-            list(APPEND _libdir "${BLAS_DIR}/lib/ia32")
-            list(APPEND _libdir "${BLAS_DIR}/lib/intel64")
+            if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+                list(APPEND _libdir "${BLAS_DIR}/lib64")
+                list(APPEND _libdir "${BLAS_DIR}/lib/intel64")
+            else()
+                list(APPEND _libdir "${BLAS_DIR}/lib32")
+                list(APPEND _libdir "${BLAS_DIR}/lib/ia32")
+            endif()
         endif ()
         if (BLAS_LIBDIR)
             list(APPEND _libdir "${BLAS_LIBDIR}")
diff --git a/cmake_modules/morse/find/FindLAPACK.cmake b/cmake_modules/morse/find/FindLAPACK.cmake
index 85739163c..c6a014512 100644
--- a/cmake_modules/morse/find/FindLAPACK.cmake
+++ b/cmake_modules/morse/find/FindLAPACK.cmake
@@ -151,10 +151,13 @@ if (NOT _libdir)
   if (BLAS_DIR)
     list(APPEND _libdir "${BLAS_DIR}")
     list(APPEND _libdir "${BLAS_DIR}/lib")
-    list(APPEND _libdir "${BLAS_DIR}/lib32")
-    list(APPEND _libdir "${BLAS_DIR}/lib64")
-    list(APPEND _libdir "${BLAS_DIR}/lib/ia32")
-    list(APPEND _libdir "${BLAS_DIR}/lib/intel64")
+    if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+        list(APPEND _libdir "${BLAS_DIR}/lib64")
+        list(APPEND _libdir "${BLAS_DIR}/lib/intel64")
+    else()
+        list(APPEND _libdir "${BLAS_DIR}/lib32")
+        list(APPEND _libdir "${BLAS_DIR}/lib/ia32")
+    endif()
   endif ()
   if (BLAS_LIBDIR)
     list(APPEND _libdir "${BLAS_LIBDIR}")
@@ -162,10 +165,13 @@ if (NOT _libdir)
   if (LAPACK_DIR)
     list(APPEND _libdir "${LAPACK_DIR}")
     list(APPEND _libdir "${LAPACK_DIR}/lib")
-    list(APPEND _libdir "${LAPACK_DIR}/lib32")
-    list(APPEND _libdir "${LAPACK_DIR}/lib64")
-    list(APPEND _libdir "${LAPACK_DIR}/lib/ia32")
-    list(APPEND _libdir "${LAPACK_DIR}/lib/intel64")
+    if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+        list(APPEND _libdir "${LAPACK_DIR}/lib64")
+        list(APPEND _libdir "${LAPACK_DIR}/lib/intel64")
+    else()
+        list(APPEND _libdir "${LAPACK_DIR}/lib32")
+        list(APPEND _libdir "${LAPACK_DIR}/lib/ia32")
+    endif()
   endif ()
   if (LAPACK_LIBIR)
     list(APPEND _libdir "${LAPACK_LIBIR}")
-- 
GitLab