From 8849326c69c6b1a22f4f13726a08567986d24e8a Mon Sep 17 00:00:00 2001
From: Julien Malik <julien.malik@c-s.fr>
Date: Tue, 14 Dec 2010 16:10:02 +0100
Subject: [PATCH] ENH: add versioning of .so for ossim and ossimplugins

---
 Utilities/otbossim/CMakeLists.txt        | 18 +++++++++++++-----
 Utilities/otbossimplugins/CMakeLists.txt |  9 ++++++++-
 2 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/Utilities/otbossim/CMakeLists.txt b/Utilities/otbossim/CMakeLists.txt
index 8b0609d812..992968fa05 100644
--- a/Utilities/otbossim/CMakeLists.txt
+++ b/Utilities/otbossim/CMakeLists.txt
@@ -6,6 +6,11 @@ SET(OSSIM_PATCH_VERSION_NUMBER "4")
 SET(OSSIM_RELEASE_NUMBER "?")
 SET(OSSIM_VERSION "${OSSIM_MAJOR_VERSION_NUMBER}-${OSSIM_MINOR_VERSION_NUMBER}-${OSSIM_PATCH_VERSION_NUMBER}" )
 
+# svn revision number of this ossim fork (used for .so versioning)
+SET(OSSIM_SVN_REVISION "18162")
+# patch number for OTB modifications applied on top of OSSIM_SVN_REVISION (used for .so versioning)
+SET(OSSIM_OTB_PATCH "1")
+
 INCLUDE(CheckIncludeFile)
 CHECK_INCLUDE_FILE("dirent.h" CMAKE_HAVE_DIRENT_H)
 CHECK_INCLUDE_FILE("unistd.h" CMAKE_HAVE_UNISTD_H)
@@ -106,12 +111,15 @@ IF(NOT OTB_DISABLE_UTILITIES_COMPILATION)
 #  )
   #TARGET_LINK_LIBRARIES(otbossim ${GDAL_LIBRARY})#To make sure that gdal appear before geotiff
   TARGET_LINK_LIBRARIES(otbossim  ${GEOTIFF_LIBRARY} ${TIFF_LIBRARY} ${JPEG_LIBRARY} ${GDAL_LIBRARY} ${OPENTHREADS_LIBRARY})
+  SET_TARGET_PROPERTIES(otbossim 
+                        PROPERTIES VERSION "${OSSIM_SVN_REVISION}.${OSSIM_OTB_PATCH}.0"
+                                   SOVERSION "${OSSIM_SVN_REVISION}.${OSSIM_OTB_PATCH}")
 
   IF(NOT OTB_INSTALL_NO_LIBRARIES)
   INSTALL(TARGETS otbossim
-  RUNTIME DESTINATION ${OTB_INSTALL_BIN_DIR_CM24} COMPONENT RuntimeLibraries
-  LIBRARY DESTINATION ${OTB_INSTALL_LIB_DIR_CM24} COMPONENT RuntimeLibraries
-  ARCHIVE DESTINATION ${OTB_INSTALL_LIB_DIR_CM24} COMPONENT Development)
+          RUNTIME DESTINATION ${OTB_INSTALL_BIN_DIR_CM24} COMPONENT RuntimeLibraries
+          LIBRARY DESTINATION ${OTB_INSTALL_LIB_DIR_CM24} COMPONENT RuntimeLibraries
+          ARCHIVE DESTINATION ${OTB_INSTALL_LIB_DIR_CM24} COMPONENT Development)
   ENDIF(NOT OTB_INSTALL_NO_LIBRARIES)
 
 ENDIF(NOT OTB_DISABLE_UTILITIES_COMPILATION)
@@ -175,7 +183,7 @@ INSTALL(FILES ${ossim_vpfutil_HDRS}
 SET(ossim_config_HDR "${OTB_BINARY_DIR}/Utilities/otbossim/include/ossim/ossimConfig.h" )
 
 INSTALL(FILES ${ossim_config_HDR}
-    DESTINATION ${OTB_INSTALL_INCLUDE_DIR_CM24}/Utilities/otbossim/include/ossim
-    COMPONENT Development)
+        DESTINATION ${OTB_INSTALL_INCLUDE_DIR_CM24}/Utilities/otbossim/include/ossim
+        COMPONENT Development)
 
 ENDIF(NOT OTB_INSTALL_NO_DEVELOPMENT)
diff --git a/Utilities/otbossimplugins/CMakeLists.txt b/Utilities/otbossimplugins/CMakeLists.txt
index 5d3eb14162..0caecb0370 100644
--- a/Utilities/otbossimplugins/CMakeLists.txt
+++ b/Utilities/otbossimplugins/CMakeLists.txt
@@ -4,6 +4,11 @@ SET(ossimplugins_VERSION_MAJOR "1")
 SET(ossimplugins_VERSION_MINOR "8")
 SET(ossimplugins_VERSION_PATCH "4")
 
+# svn revision number of ossim (used for .so versioning)
+SET(OSSIMPLUGINS_SVN_REVISION "18162")
+# patch number for OTB modifications applied on top of OSSIM_SVN_REVISION (used for .so versioning)
+SET(OSSIMPLUGINS_OTB_PATCH "1")
+
 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} 
   ${CMAKE_CURRENT_SOURCE_DIR}/ossim 
   ${OTB_SOURCE_DIR}/Utilities/otbossim/include
@@ -23,7 +28,9 @@ SET(ossimplugins_SOURCES
 
 ADD_LIBRARY(otbossimplugins ${ossimplugins_SOURCES} )
 TARGET_LINK_LIBRARIES(otbossimplugins ${GEOTIFF_LIBRARY} ${GDAL_LIBRARY} ${OGR_LIBRARY} otbossim)
-#TARGET_LINK_LIBRARIES(otbossimplugins otbossim)
+SET_TARGET_PROPERTIES(otbossimplugins
+                      PROPERTIES VERSION "${OSSIMPLUGINS_SVN_REVISION}.${OSSIMPLUGINS_OTB_PATCH}.0"
+                                 SOVERSION "${OSSIMPLUGINS_SVN_REVISION}.${OSSIMPLUGINS_OTB_PATCH}")
 
 IF(OTB_LIBRARY_PROPERTIES)
   SET_TARGET_PROPERTIES(otbossimplugins PROPERTIES ${OTB_LIBRARY_PROPERTIES})
-- 
GitLab