Author: Aaron M. Ucko
Last-Update: 2022-10-10 22:25:50
Description: use soversions

--- a/ngs/ngs-python/ngs/LibManager.py
+++ b/ngs/ngs-python/ngs/LibManager.py
@@ -211,11 +211,11 @@ class LibManager:
         if platform.system() == "Windows":
             return ".dll"
         elif platform.system() == "Darwin":
-            return ".dylib"
+            return ".3.dylib"
         elif platform.system() == "Linux":
-            return ".so"
+            return ".so.3"
         elif platform.system() == "FreeBSD":
-            return ".so"
+            return ".so.3"
         else:
             return ""
 
--- a/build/env.cmake
+++ b/build/env.cmake
@@ -512,20 +512,22 @@ function(MakeLinksShared target name ins
             set( LIBSUFFIX ".${SHLX}.${VERSION}" )
             set( MAJLIBSUFFIX ".${SHLX}.${MAJVERS}" )
         endif()
-        add_custom_command(TARGET ${target}
-            POST_BUILD
-            COMMAND rm -f lib${name}${LIBSUFFIX}
-            COMMAND mv lib${name}.${SHLX} lib${name}${LIBSUFFIX}
-            COMMAND ln -f -s lib${name}${LIBSUFFIX} lib${name}${MAJLIBSUFFIX}
-            COMMAND ln -f -s lib${name}${MAJLIBSUFFIX} lib${name}.${SHLX}
-            WORKING_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
-        )
+        set_target_properties(
+	    ${target} PROPERTIES VERSION ${VERSION} SOVERSION ${MAJVERS})
+        #add_custom_command(TARGET ${target}
+        #    POST_BUILD
+        #    COMMAND rm -f lib${name}${LIBSUFFIX}
+        #    COMMAND mv lib${name}.${SHLX} lib${name}${LIBSUFFIX}
+        #    COMMAND ln -f -s lib${name}${LIBSUFFIX} lib${name}${MAJLIBSUFFIX}
+        #    COMMAND ln -f -s lib${name}${MAJLIBSUFFIX} lib${name}.${SHLX}
+        #    WORKING_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
+        #)
 
-        set_property(
-            TARGET    ${target}
-            APPEND
-            PROPERTY ADDITIONAL_CLEAN_FILES "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}${LIBSUFFIX};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}${MAJLIBSUFFIX};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}.${SHLX}"
-        )
+        #set_property(
+        #    TARGET    ${target}
+        #    APPEND
+        #    PROPERTY ADDITIONAL_CLEAN_FILES "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}${LIBSUFFIX};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}${MAJLIBSUFFIX};${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}.${SHLX}"
+        #)
 
         if ( ${install} )
             install( PROGRAMS  ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/lib${name}${LIBSUFFIX}
