summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/rdma.cmake
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2009-04-30 17:16:06 +0000
committerAndrew Stitcher <astitcher@apache.org>2009-04-30 17:16:06 +0000
commit07f0da3849c5351b76808cee17b9b85b8075b234 (patch)
tree9a98cf679e5b1dbbbf6cdd2a8f24eca1300fcbde /qpid/cpp/src/rdma.cmake
parent78026c144698090e1d018bf9b80515165949c6ce (diff)
downloadqpid-python-07f0da3849c5351b76808cee17b9b85b8075b234.tar.gz
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@770330 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/rdma.cmake')
-rw-r--r--qpid/cpp/src/rdma.cmake18
1 files changed, 13 insertions, 5 deletions
diff --git a/qpid/cpp/src/rdma.cmake b/qpid/cpp/src/rdma.cmake
index 30fbe9d279..ab8ed6303c 100644
--- a/qpid/cpp/src/rdma.cmake
+++ b/qpid/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)