diff options
author | Andrew Stitcher <astitcher@apache.org> | 2014-03-16 04:15:02 +0000 |
---|---|---|
committer | Andrew Stitcher <astitcher@apache.org> | 2014-03-16 04:15:02 +0000 |
commit | a2d25c48d3be684640c22b7ca786aec90d091db6 (patch) | |
tree | 06f6f02c3e62072c72a77aafdda6bf17ad3a61bd | |
parent | 38563ea3945b6973e35bab7b9537188c5271bdc5 (diff) | |
download | qpid-python-a2d25c48d3be684640c22b7ca786aec90d091db6.tar.gz |
QPID-5632: Added cmake config files to the install area
For use by other projects using cmake that want to simply detect qpid libraries
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1577981 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | qpid/cpp/src/CMakeLists.txt | 22 | ||||
-rw-r--r-- | qpid/cpp/src/QpidConfig.cmake.in | 30 | ||||
-rw-r--r-- | qpid/cpp/src/QpidConfigVersion.cmake.in | 30 |
3 files changed, 81 insertions, 1 deletions
diff --git a/qpid/cpp/src/CMakeLists.txt b/qpid/cpp/src/CMakeLists.txt index d8b823fc8e..bf16c95919 100644 --- a/qpid/cpp/src/CMakeLists.txt +++ b/qpid/cpp/src/CMakeLists.txt @@ -1373,7 +1373,7 @@ set (prefix ${CMAKE_INSTALL_PREFIX}) set (exec_prefix ${CMAKE_INSTALL_PREFIX}) set_absolute_install_path (libdir ${QPID_INSTALL_LIBDIR}) set_absolute_install_path (includedir ${QPID_INSTALL_INCLUDEDIR}) -set (VERSION ${QPID_VERSION}) +set (VERSION ${QPID_VERSION_FULL}) #add_custom_target(pkgconfig ALL echo DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/qpid.pc) #add_dependencies(pkgconfig ${CMAKE_CURRENT_BINARY_DIR}/qmf2.pc) @@ -1382,3 +1382,23 @@ configure_file(qmf2.pc.in ${CMAKE_CURRENT_BINARY_DIR}/qmf2.pc @ONLY) install (FILES ${CMAKE_CURRENT_BINARY_DIR}/qpid.pc ${CMAKE_CURRENT_BINARY_DIR}/qmf2.pc DESTINATION ${QPID_INSTALL_LIBDIR}/pkgconfig COMPONENT ${QPID_COMPONENT_COMMON}) + +if (DEFINED CMAKE_IMPORT_LIBRARY_PREFIX) +set(QPIDMSGLIB ${CMAKE_IMPORT_LIBRARY_PREFIX}qpidmessaging${CMAKE_IMPORT_LIBRARY_SUFFIX}) +set(QPIDMSGLIBDEBUG ${CMAKE_IMPORT_LIBRARY_PREFIX}qpidmessaging${CMAKE_DEBUG_POSTFIX}${CMAKE_IMPORT_LIBRARY_SUFFIX}) +set(QPIDTYPESLIB ${CMAKE_IMPORT_LIBRARY_PREFIX}qpidtypes${CMAKE_IMPORT_LIBRARY_SUFFIX}) +set(QPIDTYPESLIBDEBUG ${CMAKE_IMPORT_LIBRARY_PREFIX}qpidtypes${CMAKE_DEBUG_POSTFIX}${CMAKE_IMPORT_LIBRARY_SUFFIX}) +else () +set(QPIDMSGLIB ${CMAKE_SHARED_LIBRARY_PREFIX}qpidmessaging${CMAKE_SHARED_LIBRARY_SUFFIX}) +set(QPIDMSGLIBDEBUG ${CMAKE_SHARED_LIBRARY_PREFIX}qpidmessaging${CMAKE_DEBUG_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}) +set(QPIDTYPESLIB ${CMAKE_SHARED_LIBRARY_PREFIX}qpidtypes${CMAKE_SHARED_LIBRARY_SUFFIX}) +set(QPIDTYPESLIBDEBUG ${CMAKE_SHARED_LIBRARY_PREFIX}qpidtypes${CMAKE_DEBUG_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}) +endif () + +configure_file(QpidConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/QpidConfig.cmake @ONLY) +configure_file(QpidConfigVersion.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/QpidConfigVersion.cmake @ONLY) +install (FILES + ${CMAKE_CURRENT_BINARY_DIR}/QpidConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/QpidConfigVersion.cmake + DESTINATION ${QPID_INSTALL_LIBDIR}/cmake/Qpid + COMPONENT ${QPID_COMPONENT_COMMON}) diff --git a/qpid/cpp/src/QpidConfig.cmake.in b/qpid/cpp/src/QpidConfig.cmake.in new file mode 100644 index 0000000000..3f84e3b6b0 --- /dev/null +++ b/qpid/cpp/src/QpidConfig.cmake.in @@ -0,0 +1,30 @@ +# +# 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. +# + +# Name: Qpid +# Description: Qpid Client C library +# Version: @VERSION@ +# URL: http://qpid.apache.org/ + +set (Qpid_VERSION @VERSION@) + +set (Qpid_INCLUDE_DIRS @includedir@) +set (Qpid_LIBRARIES optimized @libdir@/@QPIDMSGLIB@ @libdir@/@QPIDTYPESLIB@ debug @libdir@/@QPIDMSGLIBDEBUG@ @libdir@/@QPIDTYPESLIBDEBUG@) + +set (Qpid_FOUND True) diff --git a/qpid/cpp/src/QpidConfigVersion.cmake.in b/qpid/cpp/src/QpidConfigVersion.cmake.in new file mode 100644 index 0000000000..d85924ab7e --- /dev/null +++ b/qpid/cpp/src/QpidConfigVersion.cmake.in @@ -0,0 +1,30 @@ +# This is a basic version file for the Config-mode of find_package(). +# It is used by write_basic_package_version_file() as input file for configure_file() +# to create a version-file which can be installed along a config.cmake file. +# +# The created file sets PACKAGE_VERSION_EXACT if the current version string and +# the requested version string are exactly the same and it sets +# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version. + +set(PACKAGE_VERSION "@VERSION@") + +if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() + +# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it: +if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "@CMAKE_SIZEOF_VOID_P@" STREQUAL "") + return() +endif() + +# check that the installed version has the same 32/64bit-ness as the one which is currently searching: +if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "@CMAKE_SIZEOF_VOID_P@") + math(EXPR installedBits "@CMAKE_SIZEOF_VOID_P@ * 8") + set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)") + set(PACKAGE_VERSION_UNSUITABLE TRUE) +endif() |