diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
index 4cf812b7faa24f31783368250edb80c3aa36dcc2..b4650b2aeaa1a1fb0846817f0b661788d6a5fae8 100644
--- a/Modules/FindBLAS.cmake
+++ b/Modules/FindBLAS.cmake
@@ -619,8 +619,17 @@ if(BLA_VENDOR STREQUAL "OpenBLAS" OR BLA_VENDOR STREQUAL "All")
     endif()
     set(_threadlibs "${CMAKE_THREAD_LIBS_INIT}")
     if(BLA_STATIC)
-      find_package(OpenMP COMPONENTS C)
-      list(PREPEND _threadlibs "${OpenMP_C_LIBRARIES}")
+      set(_blas_STATIC_CMAKE_FIND_LIBRARY_SUFFIXES "${CMAKE_FIND_LIBRARY_SUFFIXES}")
+      set(CMAKE_FIND_LIBRARY_SUFFIXES "${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}")
+      if (CMAKE_C_COMPILER_LOADED)
+        find_package(OpenMP COMPONENTS C)
+        list(PREPEND _threadlibs "${OpenMP_C_LIBRARIES}")
+      elseif(CMAKE_CXX_COMPILER_LOADED)
+        find_package(OpenMP COMPONENTS CXX)
+        list(PREPEND _threadlibs "${OpenMP_CXX_LIBRARIES}")
+      endif()
+      set(CMAKE_FIND_LIBRARY_SUFFIXES "${_blas_STATIC_CMAKE_FIND_LIBRARY_SUFFIXES}")
+      unset(_blas_STATIC_CMAKE_FIND_LIBRARY_SUFFIXES)
     endif()
     check_blas_libraries(
       BLAS_LIBRARIES