Warning, /frameworks/kdelibs4support/cmake/modules/FindEigen2.cmake is written in an unsupported language. File is not indexed.
0001 # - Try to find Eigen2 lib 0002 # 0003 # This module supports requiring a minimum version, e.g. you can do 0004 # find_package(Eigen2 2.0.3) 0005 # to require version 2.0.3 to newer of Eigen2. 0006 # 0007 # Once done this will define 0008 # 0009 # EIGEN2_FOUND - system has eigen lib with correct version 0010 # EIGEN2_INCLUDE_DIR - the eigen include directory 0011 # EIGEN2_VERSION - eigen version 0012 0013 # Copyright (c) 2006, 2007 Montel Laurent, <montel@kde.org> 0014 # Copyright (c) 2008, 2009 Gael Guennebaud, <g.gael@free.fr> 0015 # Redistribution and use is allowed according to the terms of the BSD license. 0016 0017 if(NOT Eigen2_FIND_VERSION) 0018 set(Eigen2_FIND_VERSION_MAJOR 2) 0019 set(Eigen2_FIND_VERSION_MINOR 0) 0020 set(Eigen2_FIND_VERSION_PATCH 0) 0021 0022 set(Eigen2_FIND_VERSION "${Eigen2_FIND_VERSION_MAJOR}.${Eigen2_FIND_VERSION_MINOR}.${Eigen2_FIND_VERSION_PATCH}") 0023 endif(NOT Eigen2_FIND_VERSION) 0024 0025 macro(_eigen2_get_version) 0026 file(READ "${EIGEN2_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen2_version_header LIMIT 5000 OFFSET 1000) 0027 0028 string(REGEX MATCH "define *EIGEN_WORLD_VERSION ([0-9]*)" _eigen2_world_version_match "${_eigen2_version_header}") 0029 set(EIGEN2_WORLD_VERSION "${CMAKE_MATCH_1}") 0030 string(REGEX MATCH "define *EIGEN_MAJOR_VERSION ([0-9]*)" _eigen2_major_version_match "${_eigen2_version_header}") 0031 set(EIGEN2_MAJOR_VERSION "${CMAKE_MATCH_1}") 0032 string(REGEX MATCH "define *EIGEN_MINOR_VERSION ([0-9]*)" _eigen2_minor_version_match "${_eigen2_version_header}") 0033 set(EIGEN2_MINOR_VERSION "${CMAKE_MATCH_1}") 0034 0035 set(EIGEN2_VERSION ${EIGEN2_WORLD_VERSION}.${EIGEN2_MAJOR_VERSION}.${EIGEN2_MINOR_VERSION}) 0036 endmacro(_eigen2_get_version) 0037 0038 find_path(EIGEN2_INCLUDE_DIR NAMES Eigen/Core 0039 PATHS 0040 ${INCLUDE_INSTALL_DIR} 0041 ${KDE4_INCLUDE_DIR} 0042 PATH_SUFFIXES eigen2 0043 ) 0044 0045 if(EIGEN2_INCLUDE_DIR) 0046 _eigen2_get_version() 0047 endif(EIGEN2_INCLUDE_DIR) 0048 0049 include(FindPackageHandleStandardArgs) 0050 find_package_handle_standard_args(Eigen2 REQUIRED_VARS EIGEN2_INCLUDE_DIR 0051 VERSION_VAR EIGEN2_VERSION) 0052 0053 mark_as_advanced(EIGEN2_INCLUDE_DIR) 0054 0055