+++ /dev/null
-Description: Set soversions and versions for each library separately
-Author: Rafael Laboissière <rafael@debian.org>
-Forwarded: https://groups.google.com/g/mathgl/c/aCPIFMmKDSs/m/dIX8lfIdDQAJ
-Last-Update: 2022-01-06
-
---- mathgl-8.0.orig/CMakeLists.txt
-+++ mathgl-8.0/CMakeLists.txt
-@@ -29,7 +29,6 @@ set(MathGL_VERSION_MAJOR 8)
- set(MathGL_VERSION_MINOR 0)
- set(MathGL_PATCH_VERSION 0)
- set(MathGL_VERSION ${MathGL_VERSION_MAJOR}.${MathGL_VERSION_MINOR}.${MathGL_PATCH_VERSION})
--set(MathGL_SOVERSION 8.0)
- string(TIMESTAMP MathGL_DATE UTC)
-
- if(CMAKE_BUILD_TYPE STREQUAL "Debug")
-@@ -79,10 +80,13 @@ function(mgl_add_lib mgl_tmp_lib)
- set(mgllib2 mgl2-${mgl_tmp_lib})
- endif(${mgl_tmp_lib} MATCHES mgl)
- set(mgl_src_lst ${ARGV})
-- list(REMOVE_AT mgl_src_lst 0)
-+ list(GET mgl_src_lst 1 soversion)
-+ list(GET mgl_src_lst 2 version)
-+ list(REMOVE_AT mgl_src_lst 0 1 2)
- add_library(${mgllib} SHARED ${mgl_src_lst})
- add_library(${mgllib}-static STATIC ${mgl_src_lst})
-- set_target_properties(${mgllib} PROPERTIES SOVERSION ${MathGL_SOVERSION})
-+ set_target_properties(${mgllib} PROPERTIES SOVERSION ${soversion})
-+ set_target_properties(${mgllib} PROPERTIES VERSION ${version})
- set_target_properties(${mgllib} PROPERTIES DEFINE_SYMBOL "mgl_EXPORTS")
- set_target_properties(${mgllib} PROPERTIES C_VISIBILITY_PRESET hidden)
- set_target_properties(${mgllib} PROPERTIES CXX_VISIBILITY_PRESET hidden)
---- mathgl-8.0.orig/src/CMakeLists.txt
-+++ mathgl-8.0/src/CMakeLists.txt
-@@ -47,7 +47,9 @@ if(MGL_HAVE_OPENGL)
- endif(MGL_HAVE_OPENGL)
-
- include(GenerateExportHeader)
--mgl_add_lib(mgl ${mgl_src} ${mgl_hdr})
-+set(mgl_lib_SOVERSION 8)
-+set(mgl_lib_VERSION 8.0.0)
-+mgl_add_lib(mgl ${mgl_lib_SOVERSION} ${mgl_lib_VERSION} ${mgl_src} ${mgl_hdr})
- generate_export_header(mgl EXPORT_FILE_NAME ../include/mgl2/dllexport.h)
-
- target_link_libraries(mgl ${MGL_DEP_LIBS})
-@@ -56,7 +56,9 @@ target_link_libraries(mgl-static ${MGL_D
- mgl_po_src(${mgl_src} ${mgl_hdr})
-
- if(MGL_HAVE_MPI)
-- mgl_add_lib(mpi mpi.cpp ../include/mgl2/mpi.h)
-+ set(mgl_mpi_SOVERSION 8)
-+ set(mgl_mpi_VERSION 8.0.0)
-+ mgl_add_lib(mpi ${mgl_mpi_SOVERSION} ${mgl_mpi_VERSION} mpi.cpp ../include/mgl2/mpi.h)
- target_link_libraries(mgl-mpi ${MPI_LIBRARIES} )
- target_link_libraries(mgl-mpi-static ${MPI_LIBRARIES} )
- target_include_directories(mgl-mpi SYSTEM PUBLIC ${MPI_CXX_INCLUDE_PATH})
---- mathgl-8.0.orig/widgets/CMakeLists.txt
-+++ mathgl-8.0/widgets/CMakeLists.txt
-@@ -5,7 +5,9 @@ if(MSVC)
- endif(MSVC)
-
- if(MGL_HAVE_FLTK)
-- mgl_add_lib(fltk fltk.cpp image.cpp image.h ../include/mgl2/fltk.h ../include/mgl2/Fl_MathGL.h)
-+ set(mgl_fltk_SOVERSION 8)
-+ set(mgl_fltk_VERSION 8.0.0)
-+ mgl_add_lib(fltk ${mgl_fltk_SOVERSION} ${mgl_fltk_VERSION} fltk.cpp image.cpp image.h ../include/mgl2/fltk.h ../include/mgl2/Fl_MathGL.h)
- target_include_directories(mgl-fltk SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_include_directories(mgl-fltk-static SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_link_libraries(mgl-fltk mgl ${FLTK_LIBRARIES})
-@@ -13,7 +15,9 @@ if(MGL_HAVE_FLTK)
- endif(MGL_HAVE_FLTK)
-
- if(MGL_HAVE_GLUT)
-- mgl_add_lib(glut glut.cpp ../include/mgl2/glut.h)
-+ set(mgl_glut_SOVERSION 8)
-+ set(mgl_glut_VERSION 8.0.0)
-+ mgl_add_lib(glut ${mgl_glut_SOVERSION} ${mgl_glut_VERSION} glut.cpp ../include/mgl2/glut.h)
- target_include_directories(mgl-glut SYSTEM PUBLIC ${GLUT_INCLUDE_DIR})
- target_include_directories(mgl-glut-static SYSTEM PUBLIC ${GLUT_INCLUDE_DIR})
- target_link_libraries(mgl-glut mgl ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES})
-@@ -21,7 +25,9 @@ if(MGL_HAVE_GLUT)
- endif(MGL_HAVE_GLUT)
-
- if(MGL_HAVE_WX)
-- mgl_add_lib(wx wx.cpp ../include/mgl2/wx.h)
-+ set(mgl_wx_SOVERSION 8)
-+ set(mgl_wx_VERSION 8.0.0)
-+ mgl_add_lib(wx ${mgl_wx_SOVERSION} ${mgl_wx_VERSION} wx.cpp ../include/mgl2/wx.h)
- include(${wxWidgets_USE_FILE})
- target_link_libraries(mgl-wx mgl ${wxWidgets_LIBRARIES})
- target_link_libraries(mgl-wx-static mgl-static ${wxWidgets_LIBRARIES})
---- mathgl-8.0.orig/widgets/qt4/CMakeLists.txt
-+++ mathgl-8.0/widgets/qt4/CMakeLists.txt
-@@ -3,17 +3,23 @@ include(GenerateExportHeader)
- if(enable-qt4)
- include(../../scripts/qt4.cmake)
- set(MGL_QT4_FILES ../qt.cpp ../../include/mgl2/qt.h ../../include/mgl2/qmathgl.h)
-- mgl_add_lib(qt4 ${MGL_QT4_FILES})
-+ set(mgl_qt4_SOVERSION 8)
-+ set(mgl_qt4_VERSION 8.0.0)
-+ mgl_add_lib(qt4 $(mgl_qt4_SOVERSION) $(mgl_qt4_VERSION) ${MGL_QT4_FILES})
- target_link_libraries(mgl-qt4 mgl ${MGL_QT4_LIBS})
- target_link_libraries(mgl-qt4-static mgl-static ${MGL_QT4_LIBS})
- if(enable-qt4asqt)
-- mgl_add_lib(qt ${MGL_QT4_FILES})
-+ set(mgl_qt_SOVERSION 8)
-+ set(mgl_qt_VERSION 8.0.0)
-+ mgl_add_lib(mgl_qt $(mgl_qt4_SOVERSION) $(mgl_qt4_VERSION) ${MGL_QT4_FILES})
- target_link_libraries(mgl-qt mgl ${MGL_QT4_LIBS})
- target_link_libraries(mgl-qt-static mgl-static ${MGL_QT4_LIBS})
- endif(enable-qt4asqt)
-
- if(MGL_HAVE_FLTK AND NOT enable-qt5)
-- mgl_add_lib(wnd ${MGL_QT4_FILES} ../fltk.cpp ../../include/mgl2/fltk.h ../image.cpp ../image.h)
-+ set(mgl_wnd_SOVERSION 8)
-+ set(mgl_wnd_VERSION 8.0.0)
-+ mgl_add_lib(wnd $(mgl_wnd_SOVERSION) $(mgl_wnd_VERSION) ${MGL_QT4_FILES} ../fltk.cpp ../../include/mgl2/fltk.h ../image.cpp ../image.h)
- target_include_directories(mgl-wnd SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_include_directories(mgl-wnd-static SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_link_libraries(mgl-wnd mgl ${FLTK_LIBRARIES} ${MGL_QT4_LIBS})
---- mathgl-8.0.orig/widgets/qt5/CMakeLists.txt
-+++ mathgl-8.0/widgets/qt5/CMakeLists.txt
-@@ -3,16 +3,22 @@ include(GenerateExportHeader)
- if(enable-qt5)
- include(../../scripts/qt5.cmake)
- set(MGL_QT5_FILES ../qt.cpp ../../include/mgl2/qt.h ../../include/mgl2/qmathgl.h)
-- mgl_add_lib(qt5 ${MGL_QT5_FILES})
-+ set(mgl_qt5_SOVERSION 8)
-+ set(mgl_qt5_VERSION 8.0.0)
-+ mgl_add_lib(qt5 ${mgl_qt5_SOVERSION} ${mgl_qt5_VERSION} ${MGL_QT5_FILES})
- target_link_libraries(mgl-qt5 mgl ${MGL_QT5_LIBS})
- target_link_libraries(mgl-qt5-static mgl-static ${MGL_QT5_LIBS})
- if(enable-qt5asqt)
-- mgl_add_lib(qt ${MGL_QT5_FILES})
-+ set(mgl_qt_SOVERSION 8)
-+ set(mgl_qt_VERSION 8.0.0)
-+ mgl_add_lib(qt ${mgl_qt_SOVERSION} ${mgl_qt_VERSION} ${MGL_QT5_FILES})
- target_link_libraries(mgl-qt mgl ${MGL_QT5_LIBS})
- target_link_libraries(mgl-qt-static mgl-static ${MGL_QT5_LIBS})
- endif(enable-qt5asqt)
- if(MGL_HAVE_FLTK)
-- mgl_add_lib(wnd ${MGL_QT5_FILES} ../fltk.cpp ../../include/mgl2/fltk.h ../image.cpp ../image.h)
-+ set(mgl_wnd_SOVERSION 8)
-+ set(mgl_wnd_VERSION 8.0.0)
-+ mgl_add_lib(wnd ${mgl_wnd_SOVERSION} ${mgl_wnd_VERSION} ${MGL_QT5_FILES} ../fltk.cpp ../../include/mgl2/fltk.h ../image.cpp ../image.h)
- target_include_directories(mgl-wnd SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_include_directories(mgl-wnd-static SYSTEM PUBLIC ${FLTK_INCLUDE_DIR})
- target_link_libraries(mgl-wnd mgl ${FLTK_LIBRARIES} ${MGL_QT5_LIBS})