From 5af5eef7eeff6cb26e34b1755471b4ee621d5edd Mon Sep 17 00:00:00 2001 From: Andrew Stitcher Date: Thu, 30 Apr 2009 17:16:06 +0000 Subject: Made cmake config more like the autotools version - By default if it detects a dependency it will build the module that needs it, otherwise it won't - It can be forced to build modules so that automated builds that have required outputs can fail config git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@770330 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/rdma.cmake | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'cpp/src/rdma.cmake') diff --git a/cpp/src/rdma.cmake b/cpp/src/rdma.cmake index 30fbe9d279..ab8ed6303c 100644 --- a/cpp/src/rdma.cmake +++ b/cpp/src/rdma.cmake @@ -25,12 +25,20 @@ include(CheckIncludeFiles) include(CheckLibraryExists) -option(BUILD_RDMA "Build with support for Remote DMA protocols" OFF) +CHECK_LIBRARY_EXISTS (ibverbs ibv_create_qp "" HAVE_IBVERBS) +CHECK_LIBRARY_EXISTS (rdmacm rdma_create_id "" HAVE_RDMACM) +CHECK_INCLUDE_FILES (infiniband/verbs.h HAVE_IBVERBS_H) +CHECK_INCLUDE_FILES (rdma/rdma_cma.h HAVE_RDMACM_H) + +set (rdma_default ${rdma_force}) +if (HAVE_IBVERBS AND HAVE_IBVERBS_H) + if (HAVE_RDMACM AND HAVE_RDMACM_H) + set (rdma_default ON) + endif (HAVE_RDMACM AND HAVE_RDMACM_H) +endif (HAVE_IBVERBS AND HAVE_IBVERBS_H) + +option(BUILD_RDMA "Build with support for Remote DMA protocols" ${rdma_default}) if (BUILD_RDMA) - CHECK_LIBRARY_EXISTS (ibverbs ibv_create_qp "" HAVE_IBVERBS) - CHECK_LIBRARY_EXISTS (rdmacm rdma_create_id "" HAVE_RDMACM) - CHECK_INCLUDE_FILES (infiniband/verbs.h HAVE_IBVERBS_H) - CHECK_INCLUDE_FILES (rdma/rdma_cma.h HAVE_RDMACM_H) if (NOT HAVE_IBVERBS) message(FATAL_ERROR "libibverbs not found, required for RDMA support") endif (NOT HAVE_IBVERBS) -- cgit v1.2.1