You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by as...@apache.org on 2009/04/28 23:51:55 UTC

svn commit: r769559 - in /qpid/trunk/qpid/cpp: CMakeLists.txt managementgen/CMakeLists.txt src/CMakeLists.txt src/cluster.cmake src/config.h.cmake src/rdma.cmake src/ssl.cmake

Author: astitcher
Date: Tue Apr 28 21:51:54 2009
New Revision: 769559

URL: http://svn.apache.org/viewvc?rev=769559&view=rev
Log:
Fixed to allow use of cmake 2.4
Fixes to allow cmake to build all the plugin modules as before

Modified:
    qpid/trunk/qpid/cpp/CMakeLists.txt
    qpid/trunk/qpid/cpp/managementgen/CMakeLists.txt
    qpid/trunk/qpid/cpp/src/CMakeLists.txt
    qpid/trunk/qpid/cpp/src/cluster.cmake
    qpid/trunk/qpid/cpp/src/config.h.cmake
    qpid/trunk/qpid/cpp/src/rdma.cmake
    qpid/trunk/qpid/cpp/src/ssl.cmake

Modified: qpid/trunk/qpid/cpp/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/CMakeLists.txt?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/CMakeLists.txt Tue Apr 28 21:51:54 2009
@@ -17,7 +17,11 @@
 # under the License.
 #
 project(qpidc)
-cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
+cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR)
+if(COMMAND cmake_policy)
+  cmake_policy(SET CMP0003 NEW)
+endif(COMMAND cmake_policy)
+
 set (qpidc_version 0.5)
 
 enable_testing()

Modified: qpid/trunk/qpid/cpp/managementgen/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/managementgen/CMakeLists.txt?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/managementgen/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/managementgen/CMakeLists.txt Tue Apr 28 21:51:54 2009
@@ -17,7 +17,7 @@
 # under the License.
 #
 project(qpidc-qmfgen)
-cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
+cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR)
 
 install(PROGRAMS qmf-gen DESTINATION managementgen
         COMPONENT all-source)

Modified: qpid/trunk/qpid/cpp/src/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/CMakeLists.txt?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/CMakeLists.txt (original)
+++ qpid/trunk/qpid/cpp/src/CMakeLists.txt Tue Apr 28 21:51:54 2009
@@ -20,6 +20,7 @@
 include(CheckFunctionExists)
 include(CheckIncludeFileCXX)
 include(CheckIncludeFiles)
+include(CheckIncludeFileCXX)
 include(CheckLibraryExists)
 include(CheckSymbolExists)
 include(FindBoost)
@@ -203,13 +204,13 @@
     message(FATAL_ERROR "XML Exchange support requested but XQilla headers not found")
   endif (NOT HAVE_XQILLA_H)
 
-  add_library (xml SHARED
+  add_library (xml MODULE
                qpid/xml/XmlExchange.cpp
                qpid/xml/XmlExchange.h
                qpid/xml/XmlExchangePlugin.cpp)
-  target_link_libraries (xml xerces-c xqilla qpidbroker)
+  target_link_libraries (xml xerces-c xqilla qpidbroker pthread)
   set_target_properties (xml PROPERTIES
-                         VERSION ${qpidc_version}
+                         PREFIX ""
                          LINK_FLAGS -Wl,--no-undefined)
 endif (QPID_HAS_XML)
 
@@ -223,10 +224,10 @@
      qpid/acl/AclReader.cpp
      qpid/acl/AclReader.h
     )
-  add_library (acl SHARED ${acl_SOURCES})
+  add_library (acl MODULE ${acl_SOURCES})
   target_link_libraries (acl qpidbroker)
   set_target_properties (acl PROPERTIES
-                         VERSION ${qpidc_version}
+                         PREFIX ""
                          LINK_FLAGS -Wl,--no-undefined)
 
 # Check for optional cluster support requirements
@@ -596,14 +597,14 @@
 
 # A queue event listener plugin that creates messages on a replication
 # queue corresponding to enqueue and dequeue events:
-add_library (replicating_listener SHARED
+add_library (replicating_listener MODULE
              qpid/replication/constants.h
              qpid/replication/ReplicatingEventListener.cpp
              qpid/replication/ReplicatingEventListener.h
             )
 target_link_libraries (replicating_listener qpidbroker)
 set_target_properties (replicating_listener PROPERTIES
-                       VERSION ${qpidc_version})
+                       PREFIX "")
 if (CMAKE_COMPILER_IS_GNUCXX)
   set_target_properties(replicating_listener PROPERTIES
                         LINK_FLAGS -Wl,--no-undefined)
@@ -613,14 +614,14 @@
 # can process the messages from a replication queue (populated on the
 # source system by the replicating listener plugin above) and take the
 # corresponding action on the local queues
-add_library (replicating_exchange SHARED
+add_library (replicating_exchange MODULE
              qpid/replication/constants.h
              qpid/replication/ReplicationExchange.cpp
              qpid/replication/ReplicationExchange.h
             )
 target_link_libraries (replicating_exchange qpidbroker)
 set_target_properties (replicating_exchange PROPERTIES
-                       VERSION ${qpidc_version})
+                       PREFIX "")
 if (CMAKE_COMPILER_IS_GNUCXX)
   set_target_properties(replicating_exchange PROPERTIES
                         LINK_FLAGS -Wl,--no-undefined)

Modified: qpid/trunk/qpid/cpp/src/cluster.cmake
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/cluster.cmake?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/cluster.cmake (original)
+++ qpid/trunk/qpid/cpp/src/cluster.cmake Tue Apr 28 21:51:54 2009
@@ -34,9 +34,8 @@
 
 option(BUILD_CPG "Build with CPG support for clustering" ${cluster_default})
 if (BUILD_CPG)
-  CHECK_LIBRARY_EXISTS (cpg cpg_local_get
-                        "-L/usr/lib/openais -L/usr/lib64/openais -L/usr/lib/corosync -L/usr/lib64/corosync"
-                        HAVE_LIBCPG)
+  find_library(LIBCPG cpg /usr/lib/openais /usr/lib64/openais /usr/lib/corosync /usr/lib64/corosync)
+  CHECK_LIBRARY_EXISTS (${LIBCPG} cpg_local_get "" HAVE_LIBCPG)
   CHECK_INCLUDE_FILES (openais/cpg.h HAVE_OPENAIS_CPG_H)
   CHECK_INCLUDE_FILES (corosync/cpg.h HAVE_COROSYNC_CPG_H)
   if (NOT HAVE_LIBCPG)
@@ -108,10 +107,11 @@
        qpid/cluster/types.h
       )
 
-  add_library (cluster SHARED ${cluster_SOURCES})
-  target_link_libraries (cluster cpg ${CMAN_LIB} qpidbroker qpidclient)
+  add_library (cluster MODULE ${cluster_SOURCES})
+  target_link_libraries (cluster ${LIBCPG} ${CMAN_LIB} qpidbroker qpidclient)
 #cluster_la_LDFLAGS = $(PLUGINLDFLAGS)
-  set_target_properties (cluster PROPERTIES VERSION ${qpidc_version})
+  set_target_properties (cluster PROPERTIES
+                         PREFIX "")
 
 endif (BUILD_CPG)
 

Modified: qpid/trunk/qpid/cpp/src/config.h.cmake
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/config.h.cmake?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/config.h.cmake (original)
+++ qpid/trunk/qpid/cpp/src/config.h.cmake Tue Apr 28 21:51:54 2009
@@ -45,6 +45,9 @@
 #  define HAVE_SASL 1
 #endif
 
+#cmakedefine HAVE_OPENAIS_CPG_H ${HAVE_OPENAIS_CPG_H}
+#cmakedefine HAVE_COROSYNC_CPG_H ${HAVE_COROSYNC_CPG_H}
+#cmakedefine HAVE_LIBCMAN_H ${HAVE_LIBCMAN_H}
 #cmakedefine HAVE_LOG_AUTHPRIV
 #cmakedefine HAVE_LOG_FTP
 

Modified: qpid/trunk/qpid/cpp/src/rdma.cmake
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/rdma.cmake?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/rdma.cmake (original)
+++ qpid/trunk/qpid/cpp/src/rdma.cmake Tue Apr 28 21:51:54 2009
@@ -63,18 +63,22 @@
                           LINK_FLAGS -Wl,--no-undefined)
   endif (CMAKE_COMPILER_IS_GNUCXX)
 
-  add_library (rdma SHARED qpid/sys/RdmaIOPlugin.cpp)
+  add_library (rdma MODULE qpid/sys/RdmaIOPlugin.cpp)
   target_link_libraries (rdma qpidbroker rdmawrap)
-  set_target_properties (rdma PROPERTIES VERSION ${qpidc_version})
+  set_target_properties (rdma PROPERTIES
+                         PREFIX "")
+
   if (CMAKE_COMPILER_IS_GNUCXX)
-    set_target_properties(rdmawrap PROPERTIES
+    set_target_properties(rdma PROPERTIES
                           COMPILE_FLAGS -Wno-missing-field-initializers
                           LINK_FLAGS -Wl,--no-undefined)
   endif (CMAKE_COMPILER_IS_GNUCXX)
 
-  add_library (rdmaconnector SHARED qpid/client/RdmaConnector.cpp)
+  add_library (rdmaconnector MODULE qpid/client/RdmaConnector.cpp)
   target_link_libraries (rdmaconnector qpidclient rdmawrap)
-  set_target_properties (rdmaconnector PROPERTIES VERSION ${qpidc_version})
+  set_target_properties (rdmaconnector PROPERTIES
+                         PREFIX "")
+
   if (CMAKE_COMPILER_IS_GNUCXX)
     set_target_properties(rdmaconnector PROPERTIES
                           COMPILE_FLAGS -Wno-missing-field-initializers

Modified: qpid/trunk/qpid/cpp/src/ssl.cmake
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/ssl.cmake?rev=769559&r1=769558&r2=769559&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/ssl.cmake (original)
+++ qpid/trunk/qpid/cpp/src/ssl.cmake Tue Apr 28 21:51:54 2009
@@ -32,35 +32,19 @@
 
 option(BUILD_SSL "Build with support for SSL" ${ssl_default})
 if (BUILD_SSL)
-  find_program (NSPR_CONFIG nspr-config)
-  if (NSPR_CONFIG STREQUAL NSPR_CONFIG-NOTFOUND)
-    message(FATAL_ERROR "libnspr not found, required for SSL support")
-  endif (NSPR_CONFIG STREQUAL NSPR_CONFIG-NOTFOUND)
-  find_program (NSS_CONFIG nss-config)
-  if (NSS_CONFIG STREQUAL NSS_CONFIG-NOTFOUND)
-    message(FATAL_ERROR "libnss not found, required for SSL support")
-  endif (NSS_CONFIG STREQUAL NSS_CONFIG-NOTFOUND)
-  # Output from nss/snpr-config ends with newline, so strip it
-  # Also, sometimes there's no need for additional -I options (or -L) but
-  # the -I is included anyway; in these cases, ignore it.
-  execute_process (COMMAND ${NSPR_CONFIG} --cflags
-                   OUTPUT_VARIABLE get_flags)
-  string (STRIP ${get_flags} NSPR_CFLAGS)
-  if (NSPR_CFLAGS STREQUAL -I)
-    set (NSPR_CFLAGS )
-  endif (NSPR_CFLAGS STREQUAL -I)
-  execute_process (COMMAND ${NSPR_CONFIG} --libs
-                   OUTPUT_VARIABLE get_flags)
-  string (STRIP ${get_flags} NSPR_LIBS)
-  execute_process (COMMAND ${NSS_CONFIG} --cflags
-                   OUTPUT_VARIABLE get_flags)
-  string (STRIP ${get_flags} NSS_CFLAGS)
-  if (NSS_CFLAGS STREQUAL -I)
-    set (NSS_CFLAGS )
-  endif (NSS_CFLAGS STREQUAL -I)
-  execute_process (COMMAND ${NSS_CONFIG} --libs
-                   OUTPUT_VARIABLE get_flags)
-  string (STRIP ${get_flags} NSS_LIBS)
+
+  # According to some cmake docs this is not a reliable way to detect
+  # pkg-configed libraries, but it's no worse than what we did under
+  # autotools
+  pkg_check_modules(NSS REQUIRED nss)
+
+  foreach(f ${NSS_CFLAGS})
+    set (NSS_COMPILE_FLAGS "${NSS_COMPILE_FLAGS} ${f}")
+  endforeach(f)
+
+  foreach(f ${NSS_LDFLAGS})
+    set (NSS_LINK_FLAGS "${NSS_LINK_FLAGS} ${f}")
+  endforeach(f)
 
   set (sslcommon_SOURCES
        qpid/sys/ssl/check.h
@@ -74,29 +58,31 @@
       )
 
   add_library (sslcommon SHARED ${sslcommon_SOURCES})
-  target_link_libraries (sslcommon qpidcommon nss3 ssl3 nspr4)
+  target_link_libraries (sslcommon qpidcommon)
   set_target_properties (sslcommon PROPERTIES
                          VERSION ${qpidc_version}
-                         COMPILE_FLAGS "${NSPR_CFLAGS} ${NSS_CFLAGS}")
+                         COMPILE_FLAGS ${NSS_COMPILE_FLAGS}
+                         LINK_FLAGS ${NSS_LINK_FLAGS})
 
   set (ssl_SOURCES
        qpid/sys/SslPlugin.cpp
        qpid/sys/ssl/SslHandler.h
        qpid/sys/ssl/SslHandler.cpp
       )
-  add_library (ssl SHARED ${ssl_SOURCES})
+  add_library (ssl MODULE ${ssl_SOURCES})
   target_link_libraries (ssl qpidbroker sslcommon)
   set_target_properties (ssl PROPERTIES
-                         VERSION ${qpidc_version}
-                         COMPILE_FLAGS "${NSPR_CFLAGS} ${NSS_CFLAGS}")
+                         PREFIX ""
+                         COMPILE_FLAGS ${NSS_COMPILE_FLAGS})
   if (CMAKE_COMPILER_IS_GNUCXX)
     set_target_properties(ssl PROPERTIES
                           LINK_FLAGS -Wl,--no-undefined)
   endif (CMAKE_COMPILER_IS_GNUCXX)
 
-  add_library (sslconnector SHARED qpid/client/SslConnector.cpp)
+  add_library (sslconnector MODULE qpid/client/SslConnector.cpp)
   target_link_libraries (sslconnector qpidclient sslcommon)
-  set_target_properties (sslconnector PROPERTIES VERSION ${qpidc_version})
+  set_target_properties (sslconnector PROPERTIES
+                         PREFIX "")
   if (CMAKE_COMPILER_IS_GNUCXX)
     set_target_properties(sslconnector PROPERTIES
                           LINK_FLAGS -Wl,--no-undefined)



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org