Provide optional METIS support

* Split `CERES_NO_METIS` into two defines: `CERES_NO_PARTITION` and
  `CERES_NO_METIS`. The former refers to METIS support in SuiteSparse,
  the latter to the Eigen's MetisSupport module. This enables the use of
  sparse matrix reordering independent from SuiteSparse.
* Run Linux, macOS, and macOS Github workflows with METIS enabled
  SuiteSparse.

Fixes #808

Change-Id: I5076b7e1268d32cc3e7e56650edcbaf7fb3b59ce
This commit is contained in:
Sergiu Deitsch
2022-05-15 22:26:18 +02:00
committed by Sameer Agarwal
parent f11c256265
commit 0c88301e66
16 changed files with 123 additions and 38 deletions
+3 -4
View File
@@ -62,10 +62,9 @@ constexpr char kVersion[] =
"-suitesparse-(" CERES_SUITESPARSE_VERSION ")"
#endif
// TODO(sergiud) Capture METIS version
// #ifndef CERES_NO_METIS
// "-metis-(" CERES_METIS_VERSION ")"
// #endif
#ifndef CERES_NO_EIGEN_METIS
"-metis-(" CERES_METIS_VERSION ")"
#endif
#ifndef CERES_NO_ACCELERATE_SPARSE
"-acceleratesparse"