diff --git a/cmake_modules/morse/find/FindBLAS.cmake b/cmake_modules/morse/find/FindBLAS.cmake
index 3d8be8a2362b9eab605f68d31fe2ee217a08f46d..722ea91741605ff4fc5859ee3004610b0267a737 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 85739163c39d9555963f20786325b62ebbbbbca3..c6a0145122c6b4878688dbd153e04bb8dd208c16 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}")