From 7d3ffcb4234632dc51ee84c8a509d9428263070b Mon Sep 17 00:00:00 2001 From: Alex Stewart Date: Sun, 26 Jul 2020 19:42:16 +0100 Subject: [PATCH] Remove forced CONFIG from find_package(Eigen3) - Ceres will fail to configure if Eigen3::Eigen target is not found, and the minimum required Eigen version specified (3.3) exports Eigen as a CMake package and this is reflected in the default Ubuntu 18.04 packages. - This permits users to specify their own Eigen3 detection should they choose to do so, but they must do so via an imported target. Change-Id: I5edff117c8001770004f49012ac1ae63b66ec9c1 --- CMakeLists.txt | 3 +-- cmake/CeresConfig.cmake.in | 2 +- docs/source/installation.rst | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7354c43a0..33e98b105 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -239,8 +239,7 @@ message("-- Building with C++${CMAKE_CXX_STANDARD}") # Eigen. # Eigen delivers Eigen3Config.cmake since v3.3.3 -find_package(Eigen3 3.3 CONFIG REQUIRED - HINTS ${HOMEBREW_INCLUDE_DIR_HINTS}) +find_package(Eigen3 3.3 REQUIRED HINTS ${HOMEBREW_INCLUDE_DIR_HINTS}) if (EIGEN3_FOUND) message("-- Found Eigen version ${EIGEN3_VERSION_STRING}: ${EIGEN3_INCLUDE_DIRS}") if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64.*|AARCH64.*)" AND diff --git a/cmake/CeresConfig.cmake.in b/cmake/CeresConfig.cmake.in index ae94833b4..e5e297604 100644 --- a/cmake/CeresConfig.cmake.in +++ b/cmake/CeresConfig.cmake.in @@ -191,7 +191,7 @@ set(CERES_EIGEN_VERSION @EIGEN3_VERSION_STRING@) # Search quietly to control the timing of the error message if not found. The # search should be for an exact match, but for usability reasons do a soft # match and reject with an explanation below. -find_package(Eigen3 ${CERES_EIGEN_VERSION} CONFIG QUIET) +find_package(Eigen3 ${CERES_EIGEN_VERSION} QUIET) if (EIGEN3_FOUND) if (NOT EIGEN3_VERSION_STRING VERSION_EQUAL CERES_EIGEN_VERSION) # CMake's VERSION check in FIND_PACKAGE() will accept any version >= the diff --git a/docs/source/installation.rst b/docs/source/installation.rst index db12ccea4..d727c3133 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -444,7 +444,6 @@ dependencies. #. Try running ``Configure``. It won't work. It'll show a bunch of options. You'll need to set: - #. ``EIGEN_INCLUDE_DIR_HINTS`` #. ``GLOG_INCLUDE_DIR_HINTS`` #. ``GLOG_LIBRARY_DIR_HINTS`` #. (Optional) ``SUITESPARSE_INCLUDE_DIR_HINTS``