Skip to content

Commit ef21e05

Browse files
committed
fix: update Eigen package finding logic to support version 3.4.0 and improve include directory handling
1 parent 6f6679f commit ef21e05

1 file changed

Lines changed: 13 additions & 3 deletions

File tree

CMakeLists.txt

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,19 @@ if(FES_ENABLE_COVERAGE)
173173
find_package(codecov)
174174
endif()
175175

176-
# Find Eigen
177-
find_package(Eigen3 3.3.1 REQUIRED)
178-
include_directories(${EIGEN3_INCLUDE_DIR})
176+
# Find Eigen.
177+
find_package(Eigen 3.4.0 CONFIG QUIET)
178+
if(NOT TARGET Eigen3::Eigen)
179+
find_package(Eigen3 3.4.0 CONFIG REQUIRED)
180+
endif()
181+
if(NOT EIGEN3_INCLUDE_DIR AND EIGEN3_INCLUDE_DIRS)
182+
set(EIGEN3_INCLUDE_DIR ${EIGEN3_INCLUDE_DIRS})
183+
endif()
184+
if(NOT EIGEN3_INCLUDE_DIR AND TARGET Eigen3::Eigen)
185+
get_target_property(EIGEN3_INCLUDE_DIR Eigen3::Eigen
186+
INTERFACE_INCLUDE_DIRECTORIES)
187+
endif()
188+
include_directories(SYSTEM ${EIGEN3_INCLUDE_DIR})
179189

180190
# Find Google Test, if unit tests are enabled
181191
if(FES_ENABLE_TEST)

0 commit comments

Comments
 (0)