summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarryl L. Pierce <mcpierce@apache.org>2013-05-10 08:21:47 +0000
committerDarryl L. Pierce <mcpierce@apache.org>2013-05-10 08:21:47 +0000
commitfd29bcaa4483a9961b94e19860abfb26eac2a0f7 (patch)
tree5769c9d41421f0fc3247ee1246b06068cbc68761
parent9b2bcff0a85ab36c547da2001616a2b0dd13146a (diff)
downloadqpid-python-fd29bcaa4483a9961b94e19860abfb26eac2a0f7.tar.gz
QPID-4825: Add SOVERSION link to shared libraries
Contributed by Irina Boverman <iboverma@redhat.com> git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1480927 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/src/CMakeLists.txt31
-rw-r--r--qpid/cpp/src/rdma.cmake3
-rw-r--r--qpid/cpp/src/ssl.cmake1
-rw-r--r--qpid/cpp/src/versions.cmake13
4 files changed, 38 insertions, 10 deletions
diff --git a/qpid/cpp/src/CMakeLists.txt b/qpid/cpp/src/CMakeLists.txt
index 68610c4c40..66c9e6284c 100644
--- a/qpid/cpp/src/CMakeLists.txt
+++ b/qpid/cpp/src/CMakeLists.txt
@@ -991,7 +991,8 @@ target_link_libraries (qpidcommon qpidtypes
${qpidcommon_platform_LIBS}
${qpidcommon_sasl_lib})
set_target_properties (qpidcommon PROPERTIES
- VERSION ${qpidcommon_version})
+ VERSION ${qpidcommon_version}
+ SOVERSION ${qpidcommon_version_major})
install (TARGETS qpidcommon
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_COMMON})
@@ -1006,7 +1007,9 @@ set(qpidtypes_SOURCES
add_msvc_version (qpidtypes library dll)
add_library(qpidtypes SHARED ${qpidtypes_SOURCES})
target_link_libraries(qpidtypes ${qpidtypes_platform_LIBS})
-set_target_properties (qpidtypes PROPERTIES VERSION ${qpidtypes_version})
+set_target_properties (qpidtypes PROPERTIES
+ VERSION ${qpidtypes_version}
+ SOVERSION ${qpidtypes_version_major})
install(TARGETS qpidtypes
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_COMMON})
@@ -1053,7 +1056,8 @@ add_msvc_version (qpidclient library dll)
add_library (qpidclient SHARED ${qpidclient_SOURCES})
target_link_libraries (qpidclient qpidcommon ${qpidclient_platform_LIBS})
-set_target_properties (qpidclient PROPERTIES VERSION ${qpidclient_version})
+set_target_properties (qpidclient PROPERTIES VERSION ${qpidclient_version}
+SOVERSION ${qpidclient_version_major})
install (TARGETS qpidclient
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_CLIENT})
@@ -1120,7 +1124,9 @@ add_msvc_version (qpidmessaging library dll)
add_library (qpidmessaging SHARED ${qpidmessaging_SOURCES})
target_link_libraries (qpidmessaging qpidclient)
-set_target_properties (qpidmessaging PROPERTIES VERSION ${qpidmessaging_version})
+set_target_properties (qpidmessaging PROPERTIES
+ VERSION ${qpidmessaging_version}
+ SOVERSION ${qpidmessaging_version_major})
install (TARGETS qpidmessaging
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_CLIENT})
@@ -1247,7 +1253,10 @@ set (qpidbroker_SOURCES
add_msvc_version (qpidbroker library dll)
add_library (qpidbroker SHARED ${qpidbroker_SOURCES})
target_link_libraries (qpidbroker qpidcommon ${qpidbroker_platform_LIBS})
-set_target_properties (qpidbroker PROPERTIES VERSION ${qpidbroker_version} COMPILE_DEFINITIONS _IN_QPID_BROKER)
+set_target_properties (qpidbroker PROPERTIES
+ VERSION ${qpidbroker_version}
+ SOVERSION ${qpidbroker_version_major}
+ COMPILE_DEFINITIONS _IN_QPID_BROKER)
if (MSVC)
set_target_properties (qpidbroker PROPERTIES COMPILE_FLAGS /wd4290)
endif (MSVC)
@@ -1293,7 +1302,8 @@ add_msvc_version (qmf library dll)
add_library (qmf SHARED ${qmf_SOURCES})
target_link_libraries (qmf qmfengine)
set_target_properties (qmf PROPERTIES
- VERSION ${qmf_version})
+ VERSION ${qmf_version}
+ SOVERSION ${qmf_version_major})
install (TARGETS qmf OPTIONAL
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_QMF})
@@ -1374,7 +1384,8 @@ if(NOT WIN32)
add_library (qmf2 SHARED ${qmf2_SOURCES})
target_link_libraries (qmf2 qpidmessaging qpidtypes qpidclient qpidcommon)
set_target_properties (qmf2 PROPERTIES
- VERSION ${qmf2_version})
+ VERSION ${qmf2_version}
+ SOVERSION ${qmf2_version_major})
install (TARGETS qmf2 OPTIONAL
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_QMF})
@@ -1439,7 +1450,8 @@ add_msvc_version (qmfengine library dll)
add_library (qmfengine SHARED ${qmfengine_SOURCES})
target_link_libraries (qmfengine qpidclient)
set_target_properties (qmfengine PROPERTIES
- VERSION ${qmfengine_version})
+ VERSION ${qmfengine_version}
+ SOVERSION ${qmfengine_version_major})
install (TARGETS qmfengine OPTIONAL
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_QMF})
@@ -1477,7 +1489,8 @@ add_msvc_version (qmfconsole library dll)
add_library (qmfconsole SHARED ${qmfconsole_SOURCES})
target_link_libraries (qmfconsole qpidclient)
set_target_properties (qmfconsole PROPERTIES
- VERSION ${qmfconsole_version})
+ VERSION ${qmfconsole_version}
+ SOVERSION ${qmfconsole_version_major})
install (TARGETS qmfconsole
DESTINATION ${QPID_INSTALL_LIBDIR}
COMPONENT ${QPID_COMPONENT_QMF})
diff --git a/qpid/cpp/src/rdma.cmake b/qpid/cpp/src/rdma.cmake
index 1d355e7ae6..8c019020f1 100644
--- a/qpid/cpp/src/rdma.cmake
+++ b/qpid/cpp/src/rdma.cmake
@@ -66,7 +66,8 @@ if (BUILD_RDMA)
target_link_libraries (rdmawrap qpidcommon rdmacm ibverbs)
set_target_properties (rdmawrap PROPERTIES
LINK_FLAGS "${CATCH_UNDEFINED}"
- VERSION ${rdmawrap_version})
+ VERSION ${rdmawrap_version}
+ SOVERSION ${rdmawrap_version_major})
if (CMAKE_COMPILER_IS_GNUCXX)
set_target_properties(rdmawrap PROPERTIES
COMPILE_FLAGS -Wno-missing-field-initializers)
diff --git a/qpid/cpp/src/ssl.cmake b/qpid/cpp/src/ssl.cmake
index ca0a059258..609cd151b4 100644
--- a/qpid/cpp/src/ssl.cmake
+++ b/qpid/cpp/src/ssl.cmake
@@ -78,6 +78,7 @@ if (BUILD_SSL)
target_link_libraries (sslcommon qpidcommon)
set_target_properties (sslcommon PROPERTIES
VERSION ${sslcommon_version}
+ SOVERSION ${sslcommon_version_major}
COMPILE_FLAGS ${NSS_COMPILE_FLAGS}
LINK_FLAGS -L${NSS_LIBDIR})
diff --git a/qpid/cpp/src/versions.cmake b/qpid/cpp/src/versions.cmake
index f7e42e3688..ac20e9ed7f 100644
--- a/qpid/cpp/src/versions.cmake
+++ b/qpid/cpp/src/versions.cmake
@@ -36,3 +36,16 @@ set (qpidtypes_version 1.0.0)
set (rdmawrap_version 2.0.0)
set (sslcommon_version 2.0.0)
set (legacystore_version 1.0.0)
+
+string(REGEX MATCH "[0-9]*" qmf_version_major ${qmf_version})
+string(REGEX MATCH "[0-9]*" qmf2_version_major ${qmf2_version})
+string(REGEX MATCH "[0-9]*" qmfconsole_version_major ${qmfconsole_version})
+string(REGEX MATCH "[0-9]*" qmfengine_version_major ${qmfengine_version})
+string(REGEX MATCH "[0-9]*" qpidbroker_version_major ${qpidbroker_version})
+string(REGEX MATCH "[0-9]*" qpidclient_version_major ${qpidclient_version})
+string(REGEX MATCH "[0-9]*" qpidcommon_version_major ${qpidcommon_version})
+string(REGEX MATCH "[0-9]*" qpidmessaging_version_major ${qpidmessaging_version})
+string(REGEX MATCH "[0-9]*" qpidtypes_version_major ${qpidtypes_version})
+string(REGEX MATCH "[0-9]*" rdmawrap_version_major ${rdmawrap_version})
+string(REGEX MATCH "[0-9]*" sslcommon_version_major ${sslcommon_version})
+string(REGEX MATCH "[0-9]*" legacystore_version_major ${legacystore_version})