From 080e76bf8659c08438eec04041450045cb044c2a Mon Sep 17 00:00:00 2001
From: Pietro Incardona <incardon@mpi-cbg.de>
Date: Fri, 30 Nov 2018 16:14:36 +0100
Subject: [PATCH] Fixing umfpack when EIGEN is not present

---
 src/CMakeLists.txt             |  1 +
 src/Solvers/umfpack_solver.hpp | 12 ++++++++++++
 2 files changed, 13 insertions(+)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 21063ee0..23e61c53 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -36,6 +36,7 @@ if(PETSC_FOUND)
 	target_include_directories (numerics PUBLIC ${PETSC_INCLUDES})
 	target_link_libraries(numerics ${PETSC_LIBRARIES})
 endif()
+message("CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC ${SUITESPARSE_LIBRARIES}")
 if(SUITESPARSE_FOUND)
         target_include_directories (numerics PUBLIC ${SUITESPARSE_INCLUDE_DIRS})
         target_link_libraries(numerics ${SUITESPARSE_LIBRARIES})
diff --git a/src/Solvers/umfpack_solver.hpp b/src/Solvers/umfpack_solver.hpp
index 555236a6..7eabf653 100644
--- a/src/Solvers/umfpack_solver.hpp
+++ b/src/Solvers/umfpack_solver.hpp
@@ -151,6 +151,12 @@ public:
 	{
 		std::cerr << __FILE__ << ":" << __LINE__ << " Error Umfpack only support double precision" << "/n";
 	}
+
+	//! stub solve
+	static Vector<double,EIGEN_BASE> try_solve(SparseMatrix<double,int,EIGEN_BASE> & A, const Vector<double,EIGEN_BASE> & b, size_t opt = UMFPACK_NONE)
+	{
+		std::cerr << __FILE__ << ":" << __LINE__ << " Error Umfpack only support double precision" << "/n";
+	}
 };
 
 //! stub when library compiled without eigen
@@ -175,6 +181,12 @@ public:
 	{
 		std::cerr << __FILE__ << ":" << __LINE__ << " Error in order to use umfpack you must compile OpenFPM with linear algebra support" << "/n";
 	}
+
+	//! stub solve
+	static Vector<double,EIGEN_BASE> try_solve(SparseMatrix<double,int,EIGEN_BASE> & A, const Vector<double,EIGEN_BASE> & b, size_t opt = UMFPACK_NONE)
+	{
+		std::cerr << __FILE__ << ":" << __LINE__ << " Error in order to use umfpack you must compile OpenFPM with linear algebra support" << "/n";
+	}
 };
 
 #endif
-- 
GitLab