summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen D. Huston <shuston@apache.org>2009-10-07 23:43:27 +0000
committerStephen D. Huston <shuston@apache.org>2009-10-07 23:43:27 +0000
commitb4a8deeb520451eb429fe5360752a9918c49ff1a (patch)
tree18d8e2bf67c5f342f467aab975971ae1303ac2e7
parent1a9abcee4301801d57e428cd92eae7bbc61a2095 (diff)
downloadqpid-python-b4a8deeb520451eb429fe5360752a9918c49ff1a.tar.gz
Added more install-related content to the CMake structure.
Adds changes requested in QPID-2123, modified somewhat. Also adds Windows-specific installer content in cpp/packaging. Other specific packaging things can be added there as well. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@822965 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/CMakeLists.txt140
-rw-r--r--qpid/cpp/etc/CMakeLists.txt20
-rw-r--r--qpid/cpp/managementgen/CMakeLists.txt19
-rw-r--r--qpid/cpp/packaging/NSIS/qpid-icon.icobin0 -> 52972 bytes
-rw-r--r--qpid/cpp/packaging/NSIS/qpid-icon.pngbin0 -> 97992 bytes
-rw-r--r--qpid/cpp/packaging/NSIS/qpid-install-banner.bmpbin0 -> 7342 bytes
-rw-r--r--qpid/cpp/src/CMakeLists.txt186
7 files changed, 310 insertions, 55 deletions
diff --git a/qpid/cpp/CMakeLists.txt b/qpid/cpp/CMakeLists.txt
index 77c4b2283f..8f04a21e51 100644
--- a/qpid/cpp/CMakeLists.txt
+++ b/qpid/cpp/CMakeLists.txt
@@ -23,10 +23,131 @@ if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
+set (QPID_VERSION_MAJOR 0)
+set (QPID_VERSION_MINOR 6)
+set (qpidc_version ${QPID_VERSION_MAJOR}.${QPID_VERSION_MINOR})
+
enable_testing()
include (CTest)
-set (qpidc_version 0.5)
+# When doing installs, there are a number of components that the item can
+# be associated with. Since there may be different sets of components desired
+# for the various platforms, the component names are defined here. When
+# setting the COMPONENT in an install directive, use these to ensure that
+# the item is installed correctly.
+#
+# This section also has all the setup for various packaging-specific options.
+if (WIN32)
+
+ set (CPACK_PACKAGE_INSTALL_DIRECTORY "Qpid ${qpidc_version}")
+ set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
+ set (CPACK_NSIS_MUI_ICON "${CMAKE_CURRENT_SOURCE_DIR}/packaging/NSIS\\\\qpid-icon.ico")
+ set (CPACK_NSIS_MUI_UNIICON "${CMAKE_CURRENT_SOURCE_DIR}/packaging/NSIS\\\\qpid-icon.ico")
+ set (CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}/packaging/NSIS\\\\qpid-install-banner.bmp")
+
+ # Install types; these defines the component sets that are installed.
+ # Each component (below) indicates which of these install type(s) it is
+ # included in. The user can refine the components at install time.
+ set (CPACK_ALL_INSTALL_TYPES Broker Development Full)
+
+ set (QPID_COMPONENT_COMMON Common)
+ set (CPACK_COMPONENT_COMMON_INSTALL_TYPES Broker Development Full)
+ set (CPACK_COMPONENT_COMMON_DISPLAY_NAME "Required common runtime items")
+ set (CPACK_COMPONENT_COMMON_DESCRIPTION
+ "Run-time library common to all runtime components in Qpid.\n
+ This item is required by both broker and client components.")
+
+ set (QPID_COMPONENT_BROKER Broker)
+ set (CPACK_COMPONENT_BROKER_DEPENDS Common)
+ set (CPACK_COMPONENT_BROKER_INSTALL_TYPES Broker Full)
+ set (CPACK_COMPONENT_BROKER_DISPLAY_NAME "Broker")
+ set (CPACK_COMPONENT_BROKER_DESCRIPTION
+ "Messaging broker; controls message flow within the system.\n
+ At least one broker is required to run any messaging application.")
+
+ set (QPID_COMPONENT_CLIENT Client)
+ set (CPACK_COMPONENT_CLIENT_DEPENDS Common)
+ set (CPACK_COMPONENT_CLIENT_INSTALL_TYPES Development Full)
+ set (CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client runtime libraries")
+ set (CPACK_COMPONENT_CLIENT_DESCRIPTION
+ "Runtime library components required to build and execute a client application.")
+
+ set (QPID_COMPONENT_CLIENT_INCLUDE ClientInclude)
+ set (CPACK_COMPONENT_CLIENTINCLUDE_INSTALL_TYPES Development Full)
+ set (CPACK_COMPONENT_CLIENTINCLUDE_DISPLAY_NAME
+ "Client programming header files")
+ set (CPACK_COMPONENT_CLIENTINCLUDE_DESCRIPTION
+ "C++ header files required to build any Qpid messaging application.")
+
+ set (QPID_COMPONENT_QMF QMF)
+ set (CPACK_COMPONENT_QMF_INSTALL_TYPES Development Full)
+ set (CPACK_COMPONENT_QMF_DISPLAY_NAME
+ "Qpid Management Framework (QMF)")
+ set (CPACK_COMPONENT_QMF_DESCRIPTION
+ "QMF Agent allows you to embed QMF management in your program.\n
+ QMF Console allows you to build management programs using QMF.")
+
+ set (QPID_INSTALL_BINDIR bin CACHE STRING
+ "Directory to install user executables")
+ set (QPID_INSTALL_CONFDIR conf CACHE STRING
+ "Directory to install configuration files")
+ set (QPID_INSTALL_DATADIR conf CACHE STRING
+ "Directory to install read-only arch.-independent data root")
+ set (QPID_INSTALL_INCLUDEDIR include CACHE STRING
+ "Directory to install programming header files")
+ set (QPID_INSTALL_LIBDIR bin CACHE STRING
+ "Directory to install library files")
+ set (QPID_INSTALL_SBINDIR bin CACHE STRING
+ "Directory to install system admin executables")
+ set (QPIDC_MODULE_DIR plugins/client CACHE STRING
+ "Directory to load client plug-in modules from")
+ set (QPIDD_MODULE_DIR plugins/broker CACHE STRING
+ "Directory to load broker plug-in modules from")
+endif (WIN32)
+if (CMAKE_SYSTEM_NAME STREQUAL Linux)
+ # Set up install locations. Since the Linux install puts some files in
+ # /etc and most in the install location, we need to use a DESTDIR build
+ # rather than the usual simple use of CPACK_INSTALL_PREFIX.
+ set (CPACK_SET_DESTDIR ON)
+
+ set (QPID_COMPONENT_BROKER runtime)
+ set (QPID_COMPONENT_CLIENT runtime)
+ set (QPID_COMPONENT_COMMON runtime)
+ set (CPACK_COMPONENT_RUNTIME_DISPLAY_NAME
+ "Items required to run broker and/or client programs")
+ set (QPID_COMPONENT_CLIENT_INCLUDE development)
+ set (QPID_COMPONENT_QMF development)
+ set (CPACK_COMPONENT_DEVELOPMENT_DISPLAY_NAME
+ "Items required to build new C++ Qpid client programs")
+
+
+ set (QPID_INSTALL_BINDIR bin CACHE STRING
+ "Directory to install user executables")
+ set (QPID_INSTALL_CONFDIR /etc/qpid CACHE STRING
+ "Directory to install configuration files")
+ set (QPID_INSTALL_DATADIR share/qpid CACHE STRING
+ "Directory to install read-only arch.-independent data root")
+ set (QPID_INSTALL_INCLUDEDIR include CACHE STRING
+ "Directory to install programming header files")
+ set (QPID_INSTALL_LIBDIR lib CACHE STRING
+ "Directory to install library files")
+ set (QPID_INSTALL_SBINDIR sbin CACHE STRING
+ "Directory to install system admin executables")
+ set (QPIDC_MODULE_DIR ${QPID_INSTALL_LIBDIR}/qpid/client CACHE STRING
+ "Directory to load client plug-in modules from")
+ set (QPIDD_MODULE_DIR ${QPID_INSTALL_LIBDIR}/qpid/daemon CACHE STRING
+ "Directory to load broker plug-in modules from")
+endif (CMAKE_SYSTEM_NAME STREQUAL Linux)
+
+set (QPIDC_CONF_FILE ${QPID_INSTALL_CONFDIR}/qpidc.conf CACHE STRING
+ "Name of the Qpid client configuration file")
+set (QPIDD_CONF_FILE ${QPID_INSTALL_CONFDIR}/qpidd.conf CACHE STRING
+ "Name of the Qpid broker configuration file")
+
+
+install(FILES LICENSE NOTICE README SSL RELEASE_NOTES DESIGN
+ xml/cluster.xml INSTALL-WINDOWS
+ DESTINATION ${QPID_INSTALL_DATADIR})
if (WIN32)
set (CMAKE_DEBUG_POSTFIX "d")
@@ -35,14 +156,19 @@ endif (WIN32)
# set(CMAKE_INCLUDE_CURRENT_DIR ON)
add_subdirectory(managementgen)
-# add_subdirectory(etc)
+add_subdirectory(etc)
add_subdirectory(src)
# add_subdirectory(docs/api)
# add_subdirectory(docs/man)
+add_subdirectory(examples)
+set(CPACK_PACKAGE_NAME "Qpid")
+set(CPACK_PACKAGE_VENDOR "Apache Software Foundation")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Apache Qpid C++")
+set(CPACK_PACKAGE_VERSION "0.6.0")
+set(CPACK_PACKAGE_VERSION_MAJOR "0")
+set(CPACK_PACKAGE_VERSION_MINOR "6")
+set(CPACK_PACKAGE_VERSION_PATCH "0")
+set(CPACK_PACKAGE_INSTALL_DIRECTORY "qpidc-0.6")
-install(FILES LICENSE NOTICE README SSL RELEASE_NOTES DESIGN
- xml/cluster.xml INSTALL-WINDOWS
- DESTINATION .)
-
-add_subdirectory(examples)
+include (CPack)
diff --git a/qpid/cpp/etc/CMakeLists.txt b/qpid/cpp/etc/CMakeLists.txt
new file mode 100644
index 0000000000..03121b364a
--- /dev/null
+++ b/qpid/cpp/etc/CMakeLists.txt
@@ -0,0 +1,20 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+install(FILES qpidd.conf qpidc.conf DESTINATION ${QPID_INSTALL_CONFDIR})
diff --git a/qpid/cpp/managementgen/CMakeLists.txt b/qpid/cpp/managementgen/CMakeLists.txt
index 8d053e3e08..2511b745a3 100644
--- a/qpid/cpp/managementgen/CMakeLists.txt
+++ b/qpid/cpp/managementgen/CMakeLists.txt
@@ -20,18 +20,7 @@ project(qpidc-qmfgen)
cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR)
install(PROGRAMS qmf-gen DESTINATION managementgen
- COMPONENT all-source)
-install(FILES qmfgen/__init__.py
- qmfgen/generate.py
- qmfgen/schema.py
- qmfgen/templates/Args.h
- qmfgen/templates/Class.cpp
- qmfgen/templates/Class.h
- qmfgen/templates/Event.cpp
- qmfgen/templates/Event.h
- qmfgen/templates/Makefile.mk
- qmfgen/templates/Package.cpp
- qmfgen/templates/Package.h
- qmfgen/management-types.xml
- DESTINATION managementgen
- COMPONENT all-source)
+ COMPONENT ${QPID_COMPONENT_QMF})
+install(DIRECTORY qmfgen DESTINATION managementgen
+ COMPONENT ${QPID_COMPONENT_QMF}
+ PATTERN ".svn" EXCLUDE PATTERN "*.pyc" EXCLUDE)
diff --git a/qpid/cpp/packaging/NSIS/qpid-icon.ico b/qpid/cpp/packaging/NSIS/qpid-icon.ico
new file mode 100644
index 0000000000..112f5d8f1f
--- /dev/null
+++ b/qpid/cpp/packaging/NSIS/qpid-icon.ico
Binary files differ
diff --git a/qpid/cpp/packaging/NSIS/qpid-icon.png b/qpid/cpp/packaging/NSIS/qpid-icon.png
new file mode 100644
index 0000000000..d9bcc5657f
--- /dev/null
+++ b/qpid/cpp/packaging/NSIS/qpid-icon.png
Binary files differ
diff --git a/qpid/cpp/packaging/NSIS/qpid-install-banner.bmp b/qpid/cpp/packaging/NSIS/qpid-install-banner.bmp
new file mode 100644
index 0000000000..e12c2e97c9
--- /dev/null
+++ b/qpid/cpp/packaging/NSIS/qpid-install-banner.bmp
Binary files differ
diff --git a/qpid/cpp/src/CMakeLists.txt b/qpid/cpp/src/CMakeLists.txt
index f4bdb197ef..5795654986 100644
--- a/qpid/cpp/src/CMakeLists.txt
+++ b/qpid/cpp/src/CMakeLists.txt
@@ -118,19 +118,6 @@ if (ENABLE_VALGRIND AND NOT VALGRIND)
message(STATUS "Can't locate the valgrind command; no run-time error detection")
endif (ENABLE_VALGRIND AND NOT VALGRIND)
-set(QPIDC_INSTALL_LIBDIR ${CMAKE_INSTALL_PREFIX}/lib CACHE STRING
- "Directory to install library files")
-set(QPIDC_INSTALL_CONFDIR ${CMAKE_INSTALL_PREFIX}/etc CACHE STRING
- "Directory to install configuration files")
-set(QPIDC_MODULE_DIR ${QPIDC_INSTALL_LIBDIR}/qpid/client CACHE STRING
- "Directory to load client plug-in modules from")
-set(QPIDD_MODULE_DIR ${QPIDC_INSTALL_LIBDIR}/qpid/daemon CACHE STRING
- "Directory to load broker plug-in modules from")
-set(QPIDC_CONF_FILE ${QPIDC_INSTALL_CONFDIR}/qpid/qpidc.conf CACHE STRING
- "Name of the Qpid client configuration file")
-set(QPIDD_CONF_FILE ${QPIDC_INSTALL_CONFDIR}/qpid/qpidd.conf CACHE STRING
- "Name of the Qpid broker configuration file")
-
option(ENABLE_WARNINGS "Enable lots of compiler warnings (recommended)" ON)
if (ENABLE_WARNINGS AND CMAKE_COMPILER_IS_GNUCXX)
# Warnings: Enable as many as possible, keep the code clean. Please
@@ -272,6 +259,9 @@ if (BUILD_XML)
PREFIX ""
LINK_FLAGS -Wl,--no-undefined)
endif (CMAKE_COMPILER_IS_GNUCXX)
+ install (TARGETS xml RUNTIME
+ DESTINATION ${QPIDD_MODULE_DIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
set(xml_tests XmlClientSessionTest)
@@ -301,6 +291,9 @@ if (BUILD_ACL)
PREFIX ""
LINK_FLAGS -Wl,--no-undefined)
endif (CMAKE_COMPILER_IS_GNUCXX)
+ install (TARGETS acl RUNTIME
+ DESTINATION ${QPIDD_MODULE_DIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
endif (BUILD_ACL)
# Check for optional cluster support requirements
@@ -329,7 +322,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows)
)
endif (MSVC)
- set (libqpidcommon_platform_SOURCES
+ set (qpidcommon_platform_SOURCES
qpid/log/windows/SinkOptions.cpp
qpid/sys/windows/AsynchIO.cpp
qpid/sys/windows/FileSysDir.cpp
@@ -346,15 +339,22 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows)
qpid/sys/windows/Time.cpp
qpid/sys/windows/uuid.cpp
)
- set (libqpidcommon_platform_LIBS
+ set (qpidcommon_platform_LIBS
rpcrt4 ws2_32
)
- set (libqpidbroker_platform_SOURCES
+ set (qpidcommon_platform_INSTALL_HEADERS
+ ../include/qpid/sys/windows/Condition.h
+ ../include/qpid/sys/windows/IntegerTypes.h
+ ../include/qpid/sys/windows/Mutex.h
+ ../include/qpid/sys/windows/Time.h
+ ../include/qpid/sys/windows/check.h
+ )
+ set (qpidbroker_platform_SOURCES
qpid/broker/windows/BrokerDefaults.cpp
qpid/broker/windows/SaslAuthenticator.cpp
)
- set (libqpidclient_platform_SOURCES
+ set (qpidclient_platform_SOURCES
qpid/client/windows/SaslFactory.cpp
)
@@ -375,7 +375,7 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
set (qpid_poller_module qpid/sys/solaris/ECFPoller.cpp)
endif (CMAKE_SYSTEM_NAME STREQUAL SunOS)
- set (libqpidcommon_platform_SOURCES
+ set (qpidcommon_platform_SOURCES
qpid/sys/posix/AsynchIO.cpp
qpid/sys/posix/Fork.cpp
qpid/sys/posix/FileSysDir.cpp
@@ -394,14 +394,22 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
${qpid_poller_module}
)
- set (libqpidcommon_platform_LIBS
+ set (qpidcommon_platform_LIBS
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_FILESYSTEM_LIBRARY}
uuid
${CMAKE_DL_LIBS}
)
+ set (qpidcommon_platform_INSTALL_HEADERS
+ ../include/qpid/sys/posix/Condition.h
+ ../include/qpid/sys/posix/IntegerTypes.h
+ ../include/qpid/sys/posix/Mutex.h
+ ../include/qpid/sys/posix/PrivatePosix.h
+ ../include/qpid/sys/posix/Time.h
+ ../include/qpid/sys/posix/check.h
+ )
- set (libqpidbroker_platform_SOURCES
+ set (qpidbroker_platform_SOURCES
qpid/broker/Daemon.cpp
qpid/broker/SaslAuthenticator.cpp
qpid/broker/SignalHandler.h
@@ -409,7 +417,7 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
qpid/broker/posix/BrokerDefaults.cpp
)
- set (libqpidclient_platform_SOURCES
+ set (qpidclient_platform_SOURCES
qpid/client/SaslFactory.cpp
)
@@ -418,9 +426,9 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
)
endif (CMAKE_SYSTEM_NAME STREQUAL Windows)
-set (libqpidcommon_SOURCES
+set (qpidcommon_SOURCES
${rgen_framing_srcs}
- ${libqpidcommon_platform_SOURCES}
+ ${qpidcommon_platform_SOURCES}
${qpidcommon_sasl_source}
qpid/assert.cpp
qpid/Address.cpp
@@ -476,19 +484,23 @@ set (libqpidcommon_SOURCES
qpid/sys/Shlib.cpp
qpid/sys/Timer.cpp
)
-add_library (qpidcommon SHARED ${libqpidcommon_SOURCES})
+
+add_library (qpidcommon SHARED ${qpidcommon_SOURCES})
if (CLOCK_GETTIME_IN_RT)
- set (libqpidcommon_platform_LIBS ${libqpidcommon_platform_LIBS} rt)
+ set (qpidcommon_platform_LIBS ${qpidcommon_platform_LIBS} rt)
endif (CLOCK_GETTIME_IN_RT)
target_link_libraries (qpidcommon
- ${libqpidcommon_platform_LIBS}
+ ${qpidcommon_platform_LIBS}
${qpidcommon_sasl_lib})
set_target_properties (qpidcommon PROPERTIES
VERSION ${qpidc_version})
+install (TARGETS qpidcommon
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_COMMON})
-set (libqpidclient_SOURCES
+set (qpidclient_SOURCES
${rgen_client_srcs}
- ${libqpidclient_platform_SOURCES}
+ ${qpidclient_platform_SOURCES}
qpid/client/Bounds.cpp
qpid/client/Completion.cpp
qpid/client/Connection.cpp
@@ -562,13 +574,100 @@ set (libqpidclient_SOURCES
qpid/client/amqp0_10/SenderImpl.h
qpid/client/amqp0_10/SenderImpl.cpp
)
-add_library (qpidclient SHARED ${libqpidclient_SOURCES})
+set (qpidclient_INSTALL_HEADERS
+ ../include/qpid/Address.h
+ ../include/qpid/CommonImportExport.h
+ ../include/qpid/Exception.h
+ ../include/qpid/InlineAllocator.h
+ ../include/qpid/InlineVector.h
+ ../include/qpid/Msg.h
+ ../include/qpid/Options.h
+ ../include/qpid/RangeSet.h
+ ../include/qpid/SessionId.h
+ ../include/qpid/Url.h
+ ../include/qpid/client/AsyncSession.h
+ ../include/qpid/client/ClientImportExport.h
+ ../include/qpid/client/Completion.h
+ ../include/qpid/client/Connection.h
+ ../include/qpid/client/ConnectionSettings.h
+ ../include/qpid/client/FailoverManager.h
+ ../include/qpid/client/FlowControl.h
+ ../include/qpid/client/Future.h
+ ../include/qpid/client/FutureCompletion.h
+ ../include/qpid/client/FutureResult.h
+ ../include/qpid/client/Handle.h
+ ../include/qpid/client/LocalQueue.h
+ ../include/qpid/client/Message.h
+ ../include/qpid/client/MessageListener.h
+ ../include/qpid/client/MessageReplayTracker.h
+ ../include/qpid/client/QueueOptions.h
+ ../include/qpid/client/Session.h
+ ../include/qpid/client/SessionBase_0_10.h
+ ../include/qpid/client/Subscription.h
+ ../include/qpid/client/SubscriptionManager.h
+ ../include/qpid/client/SubscriptionSettings.h
+ ../include/qpid/client/TypedResult.h
+ ../include/qpid/framing/Array.h
+ ../include/qpid/framing/Buffer.h
+ ../include/qpid/framing/FieldTable.h
+ ../include/qpid/framing/FieldValue.h
+ ../include/qpid/framing/List.h
+ ../include/qpid/framing/ProtocolVersion.h
+ ../include/qpid/framing/SequenceNumber.h
+ ../include/qpid/framing/SequenceSet.h
+ ../include/qpid/framing/StructHelper.h
+ ../include/qpid/framing/Uuid.h
+ ../include/qpid/framing/amqp_types.h
+ ../include/qpid/framing/amqp_types_full.h
+ ../include/qpid/log/Logger.h
+ ../include/qpid/log/Options.h
+ ../include/qpid/log/Selector.h
+ ../include/qpid/log/SinkOptions.h
+ ../include/qpid/log/Statement.h
+ ../include/qpid/management/Args.h
+ ../include/qpid/management/Manageable.h
+ ../include/qpid/management/ManagementEvent.h
+ ../include/qpid/management/ManagementObject.h
+ ../include/qpid/sys/Condition.h
+ ../include/qpid/sys/IOHandle.h
+ ../include/qpid/sys/IntegerTypes.h
+ ../include/qpid/sys/Monitor.h
+ ../include/qpid/sys/Mutex.h
+ ../include/qpid/sys/Runnable.h
+ ../include/qpid/sys/StrError.h
+ ../include/qpid/sys/SystemInfo.h
+ ../include/qpid/sys/Thread.h
+ ../include/qpid/sys/Time.h
+ ../include/qpid/messaging/Address.h
+ ../include/qpid/messaging/Connection.h
+ ../include/qpid/messaging/Codec.h
+ ../include/qpid/messaging/Filter.h
+ ../include/qpid/messaging/ListContent.h
+ ../include/qpid/messaging/ListView.h
+ ../include/qpid/messaging/MapContent.h
+ ../include/qpid/messaging/MapView.h
+ ../include/qpid/messaging/Message.h
+ ../include/qpid/messaging/MessageListener.h
+ ../include/qpid/messaging/Sender.h
+ ../include/qpid/messaging/Receiver.h
+ ../include/qpid/messaging/Session.h
+ ../include/qpid/messaging/Variant.h
+ ../include/qpid/client/amqp0_10/Codecs.h
+)
+
+add_library (qpidclient SHARED ${qpidclient_SOURCES})
target_link_libraries (qpidclient qpidcommon)
set_target_properties (qpidclient PROPERTIES VERSION ${qpidc_version})
-
-set (libqpidbroker_SOURCES
+install (TARGETS qpidclient
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_CLIENT})
+install (DIRECTORY ../include/qpid DESTINATION ${QPID_INSTALL_INCLUDEDIR}
+ COMPONENT ${QPID_COMPONENT_CLIENT_INCLUDE}
+ PATTERN ".svn" EXCLUDE)
+
+set (qpidbroker_SOURCES
${mgen_broker_cpp}
- ${libqpidbroker_platform_SOURCES}
+ ${qpidbroker_platform_SOURCES}
qpid/amqp_0_10/Connection.h
qpid/amqp_0_10/Connection.cpp
qpid/broker/Broker.cpp
@@ -633,12 +732,15 @@ set (libqpidbroker_SOURCES
qpid/management/ManagementExchange.cpp
qpid/sys/TCPIOPlugin.cpp
)
-add_library (qpidbroker SHARED ${libqpidbroker_SOURCES})
+add_library (qpidbroker SHARED ${qpidbroker_SOURCES})
target_link_libraries (qpidbroker qpidcommon)
set_target_properties (qpidbroker PROPERTIES VERSION ${qpidc_version})
if (MSVC)
set_target_properties (qpidbroker PROPERTIES COMPILE_FLAGS /wd4290)
endif (MSVC)
+install (TARGETS qpidbroker RUNTIME
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
set (qpidd_SOURCES
${qpidd_platform_SOURCES}
@@ -648,6 +750,9 @@ set (qpidd_SOURCES
add_executable (qpidd ${qpidd_SOURCES})
target_link_libraries (qpidd qpidbroker qpidcommon ${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_FILESYSTEM_LIBRARY})
+install (TARGETS qpidd RUNTIME
+ DESTINATION ${QPID_INSTALL_BINDIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
# QMF library
# Library Version Information (CURRENT.REVISION.AGE):
@@ -667,6 +772,9 @@ add_library (qmf SHARED ${qmf_SOURCES})
target_link_libraries (qmf qmfengine)
set_target_properties (qmf PROPERTIES
VERSION ${qmf_version})
+install (TARGETS qmf RUNTIME
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_QMF})
set (qmfengine_SOURCES
qmf/engine/Agent.cpp
@@ -698,6 +806,9 @@ add_library (qmfengine SHARED ${qmfengine_SOURCES})
target_link_libraries (qmfengine qpidclient)
set_target_properties (qmfengine PROPERTIES
VERSION ${qmfengine_version})
+install (TARGETS qmfengine
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_QMF})
# QMF console library
#module_hdr += \
@@ -744,6 +855,9 @@ add_library (qmfconsole SHARED ${qmfconsole_SOURCES})
target_link_libraries (qmfconsole qpidclient)
set_target_properties (qmfconsole PROPERTIES
VERSION ${qpidc_version})
+install (TARGETS qmfconsole
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_QMF})
# A queue event listener plugin that creates messages on a replication
# queue corresponding to enqueue and dequeue events:
@@ -759,6 +873,9 @@ if (CMAKE_COMPILER_IS_GNUCXX)
set_target_properties(replicating_listener PROPERTIES
LINK_FLAGS -Wl,--no-undefined)
endif (CMAKE_COMPILER_IS_GNUCXX)
+install (TARGETS replicating_listener
+ DESTINATION ${QPIDD_MODULE_DIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
# A custom exchange plugin that allows an exchange to be created that
# can process the messages from a replication queue (populated on the
@@ -776,6 +893,9 @@ if (CMAKE_COMPILER_IS_GNUCXX)
set_target_properties(replicating_exchange PROPERTIES
LINK_FLAGS -Wl,--no-undefined)
endif (CMAKE_COMPILER_IS_GNUCXX)
+install (TARGETS replicating_exchange
+ DESTINATION ${QPIDD_MODULE_DIR}
+ COMPONENT ${QPID_COMPONENT_BROKER})
# This is only really needed until all the trunk builds (Linux, UNIX, Windows)
# are all on cmake only. This is because cmake builds always have a config.h