Fixing issue with CMake >= 2.8.10.2 FindPackageHandleStandardArgs.

- Prior to CMake 2.8.10.2 FindPackageHandleStandardArgs was safe if
  passed <LIBRARY>_FOUND as a variable to validate, this is no longer
  true for newer CMake releases.
- Also adding missing SUITESPARSEQR_FOUND requirement for
  SUITESPARSE_FOUND.

Change-Id: I0fdde56585fc736bdfbf433901ad17ee9f1cc216
diff --git a/cmake/FindSuiteSparse.cmake b/cmake/FindSuiteSparse.cmake
index 53dd038..a0beab9 100644
--- a/cmake/FindSuiteSparse.cmake
+++ b/cmake/FindSuiteSparse.cmake
@@ -428,6 +428,7 @@
     COLAMD_FOUND AND
     CCOLAMD_FOUND AND
     CHOLMOD_FOUND AND
+    SUITESPARSEQR_FOUND AND
     (SUITESPARSE_CONFIG_FOUND OR UFCONFIG_FOUND) AND
     BLAS_FOUND AND
     LAPACK_FOUND)
@@ -501,6 +502,11 @@
 
 # Handle REQUIRED and QUIET arguments to FIND_PACKAGE
 INCLUDE(FindPackageHandleStandardArgs)
+# A change to CMake after release 2.8.10.2 means that
+# FindPackageHandleStandardArgs() unsets <LibraryName>_FOUND without checking
+# if it is one of the variables passed whose existence & validity is verified
+# by FindPackageHandleStandardArgs() in conjunction with handling the REQUIRED
+# and QUIET optional arguments, as such we use an intermediary variable.
+SET(SUITESPARSE_FOUND_COPY ${SUITESPARSE_FOUND})
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(SuiteSparse DEFAULT_MSG
-  SUITESPARSE_FOUND SUITESPARSE_INCLUDE_DIRS SUITESPARSE_LIBRARIES)
-
+  SUITESPARSE_FOUND_COPY SUITESPARSE_INCLUDE_DIRS SUITESPARSE_LIBRARIES)