summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2010-06-17 16:55:54 +0000
committerAlan Conway <aconway@apache.org>2010-06-17 16:55:54 +0000
commitdce1ceb9d553ac8c264a36d58e7007e41bcbcfd9 (patch)
treef8893393a0b686b375836a50a3589122417a0032 /cpp/src
parentc289c16084d7f81d0ab848a9d0e0a024e231b81b (diff)
downloadqpid-python-dce1ceb9d553ac8c264a36d58e7007e41bcbcfd9.tar.gz
Allow libraries to be independently versioned in the autotools build.
Each library libfoo or plugin foo has a variable FOO_VERSION_INFO with a value passed as -version-info to libtool. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@955672 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/Makefile.am28
-rw-r--r--cpp/src/acl.mk4
-rw-r--r--cpp/src/cluster.mk6
-rw-r--r--cpp/src/qmf.mk20
-rw-r--r--cpp/src/qmfc.mk3
-rw-r--r--cpp/src/replication.mk11
-rw-r--r--cpp/src/ssl.mk10
-rw-r--r--cpp/src/xml.mk4
8 files changed, 52 insertions, 34 deletions
diff --git a/cpp/src/Makefile.am b/cpp/src/Makefile.am
index 41ce861131..b364b46e17 100644
--- a/cpp/src/Makefile.am
+++ b/cpp/src/Makefile.am
@@ -107,7 +107,6 @@ include $(srcdir)/managementgen.mk
## Compiler flags
AM_CXXFLAGS = $(WARNING_CFLAGS)
-AM_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO_ARG)
INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include -I$(srcdir) -I=$(builddir)
#
@@ -224,8 +223,8 @@ librdmawrap_la_CXXFLAGS = \
$(AM_CXXFLAGS) -Wno-missing-field-initializers
lib_LTLIBRARIES += \
librdmawrap.la
-librdmawrap_la_LDFLAGS = \
- -no-undefined
+RDMAWRAP_VERSION_INFO = 2:0:0
+librdmawrap_la_LDFLAGS = -version-info $(RDMAWRAP_VERSION_INFO) -no-undefined
rdma_la_SOURCES = \
qpid/sys/RdmaIOPlugin.cpp
@@ -233,7 +232,8 @@ rdma_la_LIBADD = \
libqpidbroker.la \
librdmawrap.la \
-libverbs
-rdma_la_LDFLAGS = $(PLUGINLDFLAGS)
+RDMA_VERSION_INFO = 2:0:0
+rdma_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(RDMA_VERSION_INFO)
rdma_la_CXXFLAGS = \
$(AM_CXXFLAGS) -Wno-missing-field-initializers
dmodule_LTLIBRARIES += \
@@ -245,7 +245,8 @@ rdmaconnector_la_LIBADD = \
libqpidclient.la \
librdmawrap.la \
-libverbs
-rdmaconnector_la_LDFLAGS = $(PLUGINLDFLAGS)
+RDMACONNECTOR_VERSION_INFO = 2:0:0
+rdmaconnector_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(RDMACONNECTOR_VERSION_INFO)
rdmaconnector_la_CXXFLAGS = \
$(AM_CXXFLAGS) -Wno-missing-field-initializers
cmodule_LTLIBRARIES += \
@@ -268,9 +269,6 @@ if SSL
include ssl.mk
endif
-
-# New 0-10 codec, to be integrated in future.
-# libqpidamqp_0_10_la_SOURCES=
EXTRA_DIST +=\
CMakeLists.txt \
cluster.cmake \
@@ -492,6 +490,9 @@ libqpidcommon_la_SOURCES += qpid/sys/cyrus/CyrusSecurityLayer.cpp
libqpidcommon_la_LIBADD += -lsasl2
endif
+QPIDCOMMON_VERSION_INFO = 2:0:0
+libqpidcommon_la_LDFLAGS=-version-info $(QPIDCOMMON_VERSION_INFO)
+
libqpidbroker_la_LIBADD = libqpidcommon.la -luuid
libqpidbroker_la_SOURCES = \
@@ -649,6 +650,9 @@ libqpidbroker_la_SOURCES = \
qpid/management/ManagementTopicExchange.h \
qpid/sys/TCPIOPlugin.cpp
+# Library Version Information:
+QPIDBROKER_VERSION_INFO = 2:0:0
+libqpidbroker_la_LDFLAGS = -version-info $(QPIDBROKER_VERSION_INFO)
libqpidclient_la_LIBADD = libqpidcommon.la -luuid
@@ -710,6 +714,10 @@ libqpidclient_la_SOURCES = \
qpid/client/TCPConnector.cpp \
qpid/client/TCPConnector.h
+# Library Version Information:
+QPIDCLIENT_VERSION_INFO = 2:0:0
+libqpidclient_la_LDFLAGS = -version-info $(QPIDCLIENT_VERSION_INFO)
+
libqpidmessaging_la_LIBADD = libqpidclient.la
libqpidmessaging_la_SOURCES = \
@@ -752,6 +760,10 @@ libqpidmessaging_la_SOURCES = \
qpid/client/amqp0_10/SimpleUrlParser.h \
qpid/client/amqp0_10/SimpleUrlParser.cpp
+# Library Version Information:
+QPIDMESSAGING_VERSION_INFO = 2:0:0
+libqpidmessaging_la_LDFLAGS = -version-info $(QPIDMESSAGING_VERSION_INFO)
+
# NOTE: only public header files (which should be in ../include)
# should go in this list. Private headers should go in the SOURCES
# list for one of the libraries or executables that includes it.
diff --git a/cpp/src/acl.mk b/cpp/src/acl.mk
index cedac7d881..0450905902 100644
--- a/cpp/src/acl.mk
+++ b/cpp/src/acl.mk
@@ -37,4 +37,6 @@ if SUNOS
acl_la_LIBADD += libqmfagent.la libqmfconsole.la libqpidcommon.la -lboost_program_options $(SUNCC_RUNTIME_LIBS)
endif
-acl_la_LDFLAGS = $(PLUGINLDFLAGS)
+ACL_VERSION_INFO = 2:0:0
+acl_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(ACL_VERSION_INFO)
+
diff --git a/cpp/src/cluster.mk b/cpp/src/cluster.mk
index 2a648e968c..2e4942dfdf 100644
--- a/cpp/src/cluster.mk
+++ b/cpp/src/cluster.mk
@@ -97,13 +97,15 @@ cluster_la_SOURCES = \
cluster_la_LIBADD= -lcpg $(libcman) libqpidbroker.la libqpidclient.la
cluster_la_CXXFLAGS = $(AM_CXXFLAGS) -fno-strict-aliasing
-cluster_la_LDFLAGS = $(PLUGINLDFLAGS)
+CLUSTER_VERSION_INFO = 2:0:0
+cluster_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(CLUSTER_VERSION_INFO)
# The watchdog plugin and helper executable
dmodule_LTLIBRARIES += watchdog.la
watchdog_la_SOURCES = qpid/cluster/WatchDogPlugin.cpp
watchdog_la_LIBADD = libqpidbroker.la
-watchdog_la_LDFLAGS = $(PLUGINLDFLAGS)
+WATCHDOG_VERSION_INFO = 2:0:0
+watchdog_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(WATCHDOG_VERSION_INFO)
qpidexec_PROGRAMS += qpidd_watchdog
qpidd_watchdog_SOURCES = qpid/cluster/qpidd_watchdog.cpp
diff --git a/cpp/src/qmf.mk b/cpp/src/qmf.mk
index 1e4c59b19e..93f18179ca 100644
--- a/cpp/src/qmf.mk
+++ b/cpp/src/qmf.mk
@@ -96,20 +96,8 @@ libqmfengine_la_SOURCES = \
libqmf_la_LIBADD = libqmfengine.la
libqmfengine_la_LIBADD = libqpidclient.la
-# Library Version Information:
-#
-# CURRENT => API/ABI version. Bump this if the interface changes
-# REVISION => Version of underlying implementation.
-# Bump if implementation changes but API/ABI doesn't
-# AGE => Number of API/ABI versions this is backward compatible with
-#
-QMF_CURRENT = 1
-QMF_REVISION = 0
-QMF_AGE = 0
-
-QMF_ENGINE_CURRENT = 1
-QMF_ENGINE_REVISION = 1
-QMF_ENGINE_AGE = 0
+QMF_VERSION_INFO = 1:0:0
+QMFENGINE_VERSION_INFO = 1:1:0
-libqmf_la_LDFLAGS = -version-info $(QMF_CURRENT):$(QMF_REVISION):$(QMF_AGE)
-libqmfengine_la_LDFLAGS = -version-info $(QMF_ENGINE_CURRENT):$(QMF_ENGINE_REVISION):$(QMF_ENGINE_AGE)
+libqmf_la_LDFLAGS = -version-info $(QMF_VERSION_INFO)
+libqmfengine_la_LDFLAGS = -version-info $(QMFENGINE_VERSION_INFO)
diff --git a/cpp/src/qmfc.mk b/cpp/src/qmfc.mk
index f3e6dc259d..9e8078f364 100644
--- a/cpp/src/qmfc.mk
+++ b/cpp/src/qmfc.mk
@@ -53,3 +53,6 @@ libqmfconsole_la_SOURCES = \
libqmfconsole_la_LIBADD = libqpidclient.la
+# Library Version Information:
+QMFCONSOLE_VERSION_INFO = 2:0:0
+libqmfconsole_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(QMFCONSOLE_VERSION_INFO)
diff --git a/cpp/src/replication.mk b/cpp/src/replication.mk
index 4a51fb9c7d..e27920d2ee 100644
--- a/cpp/src/replication.mk
+++ b/cpp/src/replication.mk
@@ -33,7 +33,10 @@ if SUNOS
replicating_listener_la_LIBADD += libqpidcommon.la -lboost_program_options -luuid $(SUNCC_RUNTIME_LIBS)
endif
-replicating_listener_la_LDFLAGS = $(PLUGINLDFLAGS)
+# Library Version Information:
+REPLICATING_LISTENER_VERSION_INFO = 2:0:0
+replicating_listener_la_LDFLAGS = $(PLUGINLDFLAGS) \
+ -version-info $(REPLICATING_LISTENER_VERSION_INFO)
# a custom exchange plugin that allows an exchange to be created that
# can process the messages from a replication queue (populated on the
@@ -49,4 +52,8 @@ replication_exchange_la_LIBADD = libqpidbroker.la
if SUNOS
replication_exchange_la_LIBADD += libqpidcommon.la -lboost_program_options $(SUNCC_RUNTIME_LIBS) -luuid
endif
-replication_exchange_la_LDFLAGS = $(PLUGINLDFLAGS)
+# Library Version Information:
+REPLICATION_EXCHANGE_VERSION_INFO = 2:0:0
+replication_exchange_la_LDFLAGS = $(PLUGINLDFLAGS) \
+ -version-info $(REPLICATION_EXCHANGE_VERSION_INFO)
+
diff --git a/cpp/src/ssl.mk b/cpp/src/ssl.mk
index f7fba7bd35..40cb9d021a 100644
--- a/cpp/src/ssl.mk
+++ b/cpp/src/ssl.mk
@@ -29,8 +29,9 @@ libsslcommon_la_SOURCES = \
qpid/sys/ssl/SslIo.h \
qpid/sys/ssl/SslIo.cpp
+SSLCOMMON_VERSION_INFO = 2:0:0
+libsslcommon_la_LDFLAGS = -version-info $(SSLCOMMON_VERSION_INFO)
libsslcommon_la_LIBADD= -lnss3 -lssl3 -lnspr4 libqpidcommon.la
-
libsslcommon_la_CXXFLAGS=$(AM_CXXFLAGS) $(SSL_CFLAGS)
lib_LTLIBRARIES += libsslcommon.la
@@ -44,11 +45,11 @@ ssl_la_LIBADD= libqpidbroker.la libsslcommon.la
ssl_la_CXXFLAGS=$(AM_CXXFLAGS) $(SSL_CFLAGS)
-ssl_la_LDFLAGS = $(PLUGINLDFLAGS)
+SSL_VERSION_INFO = 2:0:0
+ssl_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(SSL_VERSION_INFO)
dmodule_LTLIBRARIES += ssl.la
-
sslconnector_la_SOURCES = \
qpid/client/SslConnector.cpp
@@ -58,7 +59,8 @@ sslconnector_la_LIBADD = \
sslconnector_la_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" $(SSL_CFLAGS)
-sslconnector_la_LDFLAGS = $(PLUGINLDFLAGS)
+SSLCONNECTOR_VERSION_INFO = 2:0:0
+sslconnector_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(SSLCONNECTOR_VERSION_INFO)
cmodule_LTLIBRARIES += \
sslconnector.la
diff --git a/cpp/src/xml.mk b/cpp/src/xml.mk
index 957a18efde..237220291e 100644
--- a/cpp/src/xml.mk
+++ b/cpp/src/xml.mk
@@ -25,4 +25,6 @@ xml_la_SOURCES = \
xml_la_LIBADD = -lxerces-c -lxqilla libqpidbroker.la
-xml_la_LDFLAGS = $(PLUGINLDFLAGS)
+XML_VERSION_INFO = 2:0:0
+xml_la_LDFLAGS = $(PLUGINLDFLAGS) -version-info $(XML_VERSION_INFO)
+