summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/legacystore.cmake
diff options
context:
space:
mode:
authorCharles E. Rolke <chug@apache.org>2013-01-07 19:43:36 +0000
committerCharles E. Rolke <chug@apache.org>2013-01-07 19:43:36 +0000
commite5c8d687df6815d49609fa9bd974c08ac521d2a2 (patch)
treedf4672e69e73d7ce58ba614be7546bb6fe3f2dd9 /qpid/cpp/src/legacystore.cmake
parentdd69131565f955480a790adf8d9c084f752de517 (diff)
downloadqpid-python-e5c8d687df6815d49609fa9bd974c08ac521d2a2.tar.gz
QPID-1726 ASF licensed Qpid store.
Enable legacystore build in normal processing. Rewrite CMake to have look and feel of cpp/src CMake code. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1429980 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/legacystore.cmake')
-rw-r--r--qpid/cpp/src/legacystore.cmake78
1 files changed, 44 insertions, 34 deletions
diff --git a/qpid/cpp/src/legacystore.cmake b/qpid/cpp/src/legacystore.cmake
index d3e161fab4..126d525a26 100644
--- a/qpid/cpp/src/legacystore.cmake
+++ b/qpid/cpp/src/legacystore.cmake
@@ -21,10 +21,28 @@
#
#
-# Find BDB
+# Find required BerkelyDB
#
include (finddb.cmake)
+#
+# Conditionally build legacystore
+#
+set (legacystore_default ${legacystore_force})
+if (UNIX AND DB_FOUND)
+ set (legacystore_default ON)
+endif (UNIX AND DB_FOUND)
+option(BUILD_LEGACYSTORE "Build legacystore persistent store" ${legacystore_default})
+
+if (BUILD_LEGACYSTORE)
+ if (NOT UNIX)
+ message(FATAL_ERROR "Legacystore produced only on Unix platforms")
+ endif (NOT UNIX)
+ if (NOT DB_FOUND)
+ message(STATUS "Legacystore requires BerkeleyDB which is absent.")
+ endif (NOT DB_FOUND)
+endif (BUILD_LEGACYSTORE)
+
# Journal source files
set (legacy_jrnl_SOURCES
qpid/legacystore/jrnl/aio.cpp
@@ -76,39 +94,31 @@ set (legacy_include_DIRECTORIES
${CMAKE_CURRENT_SOURCE_DIR}/qpid/legacystore
)
-if (DB_FOUND)
- if (UNIX)
- if(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/db-inc.h)
- message(STATUS "Including BDB from ${DB_INCLUDE_DIR}/db_cxx.h")
- file(WRITE
- ${CMAKE_CURRENT_BINARY_DIR}/db-inc.h
- "#include <${DB_INCLUDE_DIR}/db_cxx.h>")
- endif()
+if(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/db-inc.h)
+ message(STATUS "Including BDB from ${DB_INCLUDE_DIR}/db_cxx.h")
+ file(WRITE
+ ${CMAKE_CURRENT_BINARY_DIR}/db-inc.h
+ "#include <${DB_INCLUDE_DIR}/db_cxx.h>")
+endif()
- add_library (legacystore SHARED
- ${legacy_jrnl_SOURCES}
- ${legacy_store_SOURCES}
- ${legacy_qmf_SOURCES}
- )
+add_library (legacystore SHARED
+ ${legacy_jrnl_SOURCES}
+ ${legacy_store_SOURCES}
+ ${legacy_qmf_SOURCES}
+)
- set_target_properties (legacystore PROPERTIES
- PREFIX ""
- COMPILE_DEFINITIONS _IN_QPID_BROKER
- OUTPUT_NAME legacystore
- SOVERSION ${legacystore_version}
- INCLUDE_DIRECTORIES "${legacy_include_DIRECTORIES}"
- )
+set_target_properties (legacystore PROPERTIES
+ PREFIX ""
+ COMPILE_DEFINITIONS _IN_QPID_BROKER
+ OUTPUT_NAME legacystore
+ SOVERSION ${legacystore_version}
+ INCLUDE_DIRECTORIES "${legacy_include_DIRECTORIES}"
+)
- target_link_libraries (legacystore
- aio
- rt
- uuid
- qpidcommon qpidtypes qpidbroker
- ${DB_LIBRARY}
- )
- else (UNIX)
- message(STATUS "Legacystore produced only on Unix platforms")
- endif (UNIX)
-else (DB_FOUND)
- message(STATUS "BerkeleyDB not found. Legacystore is not produced")
-endif (DB_FOUND)
+target_link_libraries (legacystore
+ aio
+ rt
+ uuid
+ qpidcommon qpidtypes qpidbroker
+ ${DB_LIBRARY}
+)