diff -ruN cmake-2.8.7.orig/Modules/FindBLAS.cmake cmake-2.8.7/Modules/FindBLAS.cmake
--- cmake-2.8.7.orig/Modules/FindBLAS.cmake	2011-12-30 17:49:56.000000000 +0100
+++ cmake-2.8.7/Modules/FindBLAS.cmake	2012-03-08 05:38:47.000000000 +0100
@@ -1,3 +1,9 @@
+#
+# Version modified for Gentoo Linux
+# If a valid PkgConfig configuration for blas is found, this overrides and cancels
+# all further checks.
+#
+
 # - Find BLAS library
 # This module finds an installed fortran library that implements the BLAS
 # linear-algebra interface (see http://www.netlib.org/blas/).
@@ -39,6 +45,24 @@
 # (To distribute this file outside of CMake, substitute the full
 #  License text for the above reference.)
 
+#
+# first, try PkgConfig
+#
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(PC_BLAS blas)
+if(PC_BLAS_FOUND)
+  foreach(PC_LIB ${PC_BLAS_LIBRARIES})
+    find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS ${PC_BLAS_LIBRARY_DIRS} )
+    if (NOT ${PC_LIB}_LIBRARY)
+      message(FATAL_ERROR "Something is wrong in your pkg-config file - lib ${PC_LIB} not found in ${PC_BLAS_LIBRARY_DIRS}")
+    endif (NOT ${PC_LIB}_LIBRARY)
+    list(APPEND BLAS_LIBRARIES ${${PC_LIB}_LIBRARY}) 
+  endforeach(PC_LIB)
+  find_package_handle_standard_args(BLAS DEFAULT_MSG BLAS_LIBRARIES)
+  mark_as_advanced(BLAS_LIBRARIES)
+else(PC_BLAS_FOUND)
+message(STATUS "No PkgConfig configuration for BLAS found; starting more extensive search.")
+
 include(CheckFunctionExists)
 include(CheckFortranFunctionExists)
 
@@ -622,3 +646,6 @@
 endif(BLA_F95)
 
 set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
+
+endif(PC_BLAS_FOUND)
+
