Skip to content
Snippets Groups Projects
Commit ebe9a826 authored by Rashad Kanavath's avatar Rashad Kanavath
Browse files

ENH: report ossim version number and library from cmake

parent f30cf608
No related branches found
No related tags found
No related merge requests found
......@@ -2,7 +2,7 @@
# Find the native Ossim includes and library
#
# OSSIM_FOUND - True if Ossim found.
# OSSIM_INCLUDE_DIRS - where to find tinyxml.h, etc.
# OSSIM_INCLUDE_DIRS - where to find ossim/init/ossimInit.h, etc.
# OSSIM_LIBRARIES - List of libraries when using Ossim.
#
......@@ -15,6 +15,16 @@ find_path( OSSIM_INCLUDE_DIR
NAMES ossim/init/ossimInit.h
PATHS $ENV{OSSIM_INCLUDE_DIR} /usr/local )
file(READ "${OSSIM_INCLUDE_DIR}/ossim/ossimVersion.h" _ossim_version_h_CONTENTS)
string(REGEX REPLACE ".*# *define OSSIM_VERSION *\"([0-9.]+)\".*" "\\1" OSSIM_VERSION "${_ossim_version_h_CONTENTS}")
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1" OSSIM_MAJOR_VERSION_NUMBER "${OSSIM_VERSION}")
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\2" OSSIM_MINOR_VERSION_NUMBER "${OSSIM_VERSION}")
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\3" OSSIM_PATCH_VERSION_NUMBER "${OSSIM_VERSION}")
set(OSSIM_VERSION "${OSSIM_VERSION}" CACHE STRING "OSSIM version" FORCE)
math(EXPR OSSIM_VERSION_NUMBER
"((${OSSIM_MAJOR_VERSION_NUMBER})*100+${OSSIM_MINOR_VERSION_NUMBER})*100+${OSSIM_PATCH_VERSION_NUMBER}")
mark_as_advanced(OSSIM_VERSION)
find_library(OSSIM_LIBRARY
NAMES ossim
PATHS /usr/local/lib/ossim)
......@@ -25,12 +35,3 @@ include( FindPackageHandleStandardArgs )
FIND_PACKAGE_HANDLE_STANDARD_ARGS( Ossim DEFAULT_MSG OSSIM_LIBRARY OSSIM_INCLUDE_DIR )
mark_as_advanced( OSSIM_INCLUDE_DIR OSSIM_LIBRARY )
if(OSSIM_FOUND)
set(OSSIM_INCLUDE_DIRS ${OSSIM_INCLUDE_DIR})
set(OSSIM_LIBRARIES ${OSSIM_LIBRARY})
else()
set(OSSIM_INCLUDE_DIRS)
set(OSSIM_LIBRARIES)
endif()
......@@ -13,10 +13,23 @@ mark_as_advanced(OTB_USE_EXTERNAL_OSSIM)
if(OTB_USE_EXTERNAL_OSSIM)
find_package(Ossim REQUIRED)
if(OSSIM_FOUND)
set(OSSIM_INCLUDE_DIRS ${OSSIM_INCLUDE_DIR})
set(OSSIM_LIBRARIES ${OSSIM_LIBRARY})
message(STATUS " Found OSSIM library at ${OSSIM_LIBRARY}")
message(STATUS " OSSIM version is " ${OSSIM_VERSION})
message(STATUS " Using OSSIM external version")
else()
set(OSSIM_INCLUDE_DIRS)
set(OSSIM_LIBRARIES)
#No external ossim found
message(FATAL_ERROR "OSSIM library is required but not found. "
"Turn OTB_USE_EXTERNAL_OSSIM to OFF to use the internal version.")
endif()
else()
set(OSSIM_LIBRARIES otbossim)
if(WIN32 AND NOT BUILD_SHARED_LIBS)
add_definitions(-DOSSIM_STATIC)
endif()
message(STATUS " Using Ossim internal version")
message(STATUS " Using OSSIM internal version")
endif()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment