98 lines
3.2 KiB
CMake
Executable File
98 lines
3.2 KiB
CMake
Executable File
# Locate the g2o libraries
|
|
# A general framework for graph optimization.
|
|
#
|
|
# This module defines
|
|
# G2O_FOUND, if false, do not try to link against g2o
|
|
# G2O_LIBRARIES, path to the libg2o
|
|
# G2O_INCLUDE_DIR, where to find the g2o header files
|
|
#
|
|
# Niko Suenderhauf <niko@etit.tu-chemnitz.de>
|
|
# Adapted by Felix Endres <endres@informatik.uni-freiburg.de>
|
|
|
|
IF(UNIX)
|
|
|
|
#IF(G2O_INCLUDE_DIR AND G2O_LIBRARIES)
|
|
# in cache already
|
|
# SET(G2O_FIND_QUIETLY TRUE)
|
|
#ENDIF(G2O_INCLUDE_DIR AND G2O_LIBRARIES)
|
|
|
|
MESSAGE(STATUS "Searching for g2o ...")
|
|
FIND_PATH(G2O_INCLUDE_DIR
|
|
NAMES core math_groups types
|
|
PATHS /usr/local /usr
|
|
PATH_SUFFIXES include/g2o include)
|
|
|
|
IF (G2O_INCLUDE_DIR)
|
|
MESSAGE(STATUS "Found g2o headers in: ${G2O_INCLUDE_DIR}")
|
|
ENDIF (G2O_INCLUDE_DIR)
|
|
|
|
FIND_LIBRARY(G2O_CORE_LIB
|
|
NAMES g2o_core g2o_core_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_STUFF_LIB
|
|
NAMES g2o_stuff g2o_stuff_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_TYPES_SLAM2D_LIB
|
|
NAMES g2o_types_slam2d g2o_types_slam2d_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_TYPES_SLAM3D_LIB
|
|
NAMES g2o_types_slam3d g2o_types_slam3d_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_SOLVER_CHOLMOD_LIB
|
|
NAMES g2o_solver_cholmod g2o_solver_cholmod_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_SOLVER_PCG_LIB
|
|
NAMES g2o_solver_pcg g2o_solver_pcg_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_SOLVER_CSPARSE_LIB
|
|
NAMES g2o_solver_csparse g2o_solver_csparse_rd
|
|
PATHS /usr/local /usr
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_INCREMENTAL_LIB
|
|
NAMES g2o_incremental g2o_incremental_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
FIND_LIBRARY(G2O_CSPARSE_EXTENSION_LIB
|
|
NAMES g2o_csparse_extension g2o_csparse_extension_rd
|
|
PATHS /usr/local /usr ${CMAKE_PREFIX_PATH}
|
|
PATH_SUFFIXES lib)
|
|
|
|
SET(G2O_LIBRARIES ${G2O_CSPARSE_EXTENSION_LIB}
|
|
${G2O_CORE_LIB}
|
|
${G2O_STUFF_LIB}
|
|
${G2O_TYPES_SLAM2D_LIB}
|
|
${G2O_TYPES_SLAM3D_LIB}
|
|
${G2O_SOLVER_CHOLMOD_LIB}
|
|
${G2O_SOLVER_PCG_LIB}
|
|
${G2O_SOLVER_CSPARSE_LIB}
|
|
${G2O_INCREMENTAL_LIB}
|
|
)
|
|
|
|
IF(G2O_LIBRARIES AND G2O_INCLUDE_DIR)
|
|
SET(G2O_FOUND "YES")
|
|
IF(NOT G2O_FIND_QUIETLY)
|
|
MESSAGE(STATUS "Found libg2o: ${G2O_LIBRARIES}")
|
|
ENDIF(NOT G2O_FIND_QUIETLY)
|
|
ELSE(G2O_LIBRARIES AND G2O_INCLUDE_DIR)
|
|
IF(NOT G2O_LIBRARIES)
|
|
IF(G2O_FIND_REQUIRED)
|
|
message(FATAL_ERROR "Could not find libg2o!")
|
|
ENDIF(G2O_FIND_REQUIRED)
|
|
ENDIF(NOT G2O_LIBRARIES)
|
|
|
|
IF(NOT G2O_INCLUDE_DIR)
|
|
IF(G2O_FIND_REQUIRED)
|
|
message(FATAL_ERROR "Could not find g2o include directory!")
|
|
ENDIF(G2O_FIND_REQUIRED)
|
|
ENDIF(NOT G2O_INCLUDE_DIR)
|
|
ENDIF(G2O_LIBRARIES AND G2O_INCLUDE_DIR)
|
|
|
|
ENDIF(UNIX)
|
|
|