]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: Added #defines to config-h.in.cmake
authorAli Maredia <amaredia@redhat.com>
Mon, 2 May 2016 22:21:32 +0000 (18:21 -0400)
committerAli Maredia <amaredia@redhat.com>
Thu, 26 May 2016 21:26:48 +0000 (17:26 -0400)
Signed-off-by: Ali Maredia <amaredia@redhat.com>
CMakeLists.txt
cmake/modules/FindOpenLdap.cmake
cmake/modules/Findbabeltrace.cmake
cmake/modules/Findfcgi.cmake
src/CMakeLists.txt
src/erasure-code/CMakeLists.txt
src/include/config-h.in.cmake

index 8dbdcb510b166af4e7568348d48ea71ccee075da..53399c7dc719a3c23262e905bf171bf20870a0f4 100644 (file)
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 2.8.11)
 
 project(Ceph)
-set(VERSION "0.90")
+set(VERSION "10.2.1")
 
 if (NOT (CMAKE_MAJOR_VERSION LESS 3))
   # Tweak policies (this one disables "missing" dependency warning)
@@ -70,6 +70,7 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 
+
 CHECK_FUNCTION_EXISTS(fallocate CEPH_HAVE_FALLOCATE)
 CHECK_FUNCTION_EXISTS(posix_fadvise HAVE_POSIX_FADVISE)
 CHECK_FUNCTION_EXISTS(posix_fallocate HAVE_POSIX_FALLOCATE)
@@ -77,64 +78,75 @@ CHECK_FUNCTION_EXISTS(syncfs HAVE_SYS_SYNCFS)
 CHECK_FUNCTION_EXISTS(sync_file_range HAVE_SYNC_FILE_RANGE)
 CHECK_FUNCTION_EXISTS(mallinfo HAVE_MALLINFO)
 CHECK_FUNCTION_EXISTS(pwritev HAVE_PWRITEV)
-CHECK_INCLUDE_FILES("arpa/inet.h" HAVE_ARPA_INET_H)
-CHECK_INCLUDE_FILES("boost/random/discrete_distribution.hpp" HAVE_BOOST_RANDOM_DISCRETE_DISTRIBUTION)
+CHECK_FUNCTION_EXISTS(splice CEPH_HAVE_SPLICE)
+CHECK_FUNCTION_EXISTS(getgrouplist HAVE_GETGROUPLIST)
+CHECK_FUNCTION_EXISTS(fdatasync HAVE_FDATASYNC)
+CHECK_FUNCTION_EXISTS(strerror_r HAVE_STRERROR_R)
+CHECK_FUNCTION_EXISTS(name_to_handle_at HAVE_NAME_TO_HANDLE_AT)
+CHECK_FUNCTION_EXISTS(pipe2 HAVE_PIPE2)
+set(CMAKE_REQUIRED_LIBRARIES pthread)
+CHECK_FUNCTION_EXISTS(pthread_spin_init HAVE_PTHREAD_SPINLOCK)
+CHECK_FUNCTION_EXISTS(eventfd HAVE_EVENTFD)
+
 CHECK_INCLUDE_FILE_CXX("boost/asio/coroutine.hpp" HAVE_BOOST_ASIO_COROUTINE)
-CHECK_INCLUDE_FILES("dirent.h" HAVE_DIRENT_H)
-CHECK_INCLUDE_FILES("dlfcn.h" HAVE_DLFCN_H)
 CHECK_INCLUDE_FILES("inttypes.h" HAVE_INTTYPES_H)
 CHECK_INCLUDE_FILES("linux/types.h" HAVE_LINUX_TYPES_H)
-CHECK_INCLUDE_FILES("memory.h" HAVE_MEMORY_H)
-CHECK_INCLUDE_FILES("ndir.h" HAVE_NDIR_H)
-CHECK_INCLUDE_FILES("netdb.h" HAVE_NETDB_H)
-CHECK_INCLUDE_FILES("netinet/in.h" HAVE_NETINET_IN_H)
+CHECK_INCLUDE_FILES("linux/version.h" HAVE_LINUX_VERSION_H)
 CHECK_INCLUDE_FILES("stdint.h" HAVE_STDINT_H)
-CHECK_INCLUDE_FILES("stdlib.h" HAVE_STDLIB_H)
-CHECK_INCLUDE_FILES("arpa/inet.h" HAVE_ARPA_INET_H)
-CHECK_INCLUDE_FILES("strings.h" HAVE_STRINGS_H)
-CHECK_INCLUDE_FILES("string.h" HAVE_STRING_H)
-CHECK_INCLUDE_FILES("syslog.h" HAVE_SYSLOG_H)
-CHECK_INCLUDE_FILES("sys/dir.h" HAVE_SYS_DIR_H)
-CHECK_INCLUDE_FILES("sys/file.h" HAVE_SYS_FILE_H)
-CHECK_INCLUDE_FILES("sys/ioctl.h" HAVE_SYS_IOCTL_H)
+CHECK_INCLUDE_FILES("arpa/nameser_compat.h" HAVE_ARPA_NAMESER_COMPAT_H)
 CHECK_INCLUDE_FILES("sys/mount.h" HAVE_SYS_MOUNT_H)
-CHECK_INCLUDE_FILES("sys/ndir.h" HAVE_SYS_NDIR_H)
 CHECK_INCLUDE_FILES("sys/param.h" HAVE_SYS_PARAM_H)
-CHECK_INCLUDE_FILES("sys/socket.h" HAVE_SYS_SOCKET_H)
-CHECK_INCLUDE_FILES("sys/statvfs.h" HAVE_SYS_STATVFS_H)
-CHECK_INCLUDE_FILES("sys/stat.h" HAVE_SYS_STAT_H)
-CHECK_INCLUDE_FILES("sys/time.h" HAVE_SYS_TIME_H)
 CHECK_INCLUDE_FILES("sys/types.h" HAVE_SYS_TYPES_H)
 CHECK_INCLUDE_FILES("sys/vfs.h" HAVE_SYS_VFS_H)
-CHECK_INCLUDE_FILES("sys/wait.h" HAVE_SYS_WAIT_H)
-CHECK_INCLUDE_FILES("sys/xattr.h" HAVE_SYS_XATTR_H)
-CHECK_INCLUDE_FILES("unistd.h" HAVE_UNISTD_H)
-CHECK_INCLUDE_FILES("utime.h" HAVE_UTIME_H)
-CHECK_INCLUDE_FILES("${CMAKE_SOURCE_DIR}/src/include/fiemap.h" HAVE_FIEMAP_H)
-CHECK_INCLUDE_FILES("fuse/fuse_lowlevel.h" HAVE_FUSE_LOWLEVEL_H)
-CHECK_INCLUDE_FILES("fuse/fuse.h" HAVE_FUSE_H)
-CHECK_INCLUDE_FILES("fcgi_config.h"  HAVE_FASTCGI_CONFIG_H)
-CHECK_INCLUDE_FILES("fastcgi.h" HAVE_FASTCGI_H)
-CHECK_INCLUDE_FILES("fcgiapp.h" FASTCGI_FASTCGI_APP_DIR)
-CHECK_INCLUDE_FILES("fcgimisc.h" HAVE_FASTCGI_MISC_H)
-CHECK_INCLUDE_FILES("fcgio.h" HAVE_FASTCGIO_H)
-CHECK_INCLUDE_FILES("fcgios.h" FASTCGI_FASTCGIOS_DIR)
-CHECK_INCLUDE_FILES("fcgi_stdio.h" HAVE_FASTCGI_STDIO_H)
-CHECK_INCLUDE_FILES("keyutils.h" HAVE_KEYUTILS_H)
+CHECK_INCLUDE_FILES("sys/prctl.h" HAVE_SYS_PRCTL_H)
 CHECK_INCLUDE_FILES("execinfo.h" HAVE_EXECINFO_H)
+CHECK_INCLUDE_FILES("sched.h" HAVE_SCHED)
+CHECK_INCLUDE_FILES("valgrind/helgrind.h" HAVE_VALGRIND_HELGRIND_H)
+
+include(CheckTypeSize)
+set(CMAKE_EXTRA_INCLUDE_FILES "linux/types.h")
+CHECK_TYPE_SIZE(__be16 __BE16) 
+CHECK_TYPE_SIZE(__be32 __BE32) 
+CHECK_TYPE_SIZE(__be64 __BE64) 
+CHECK_TYPE_SIZE(__le16 __LE16) 
+CHECK_TYPE_SIZE(__le32 __LE32) 
+CHECK_TYPE_SIZE(__le64 __LE64) 
+CHECK_TYPE_SIZE(__u8 __U8) 
+CHECK_TYPE_SIZE(__u16 __U16) 
+CHECK_TYPE_SIZE(__u32 __U32) 
+CHECK_TYPE_SIZE(__u64 __U64) 
+CHECK_TYPE_SIZE(__s8 __S8) 
+CHECK_TYPE_SIZE(__s16 __S16) 
+CHECK_TYPE_SIZE(__s32 __S32) 
+CHECK_TYPE_SIZE(__s64 __S64) 
+unset(CMAKE_EXTRA_INCLUDE_FILES)
 
 include(CheckSymbolExists)
-CHECK_SYMBOL_EXISTS(__u8 "sys/types.h;linux/types.h" HAVE___U8)
-CHECK_SYMBOL_EXISTS(__u64 "sys/types.h;linux/types.h" HAVE___U64)
-CHECK_SYMBOL_EXISTS(__s64 "sys/types.h;linux/types.h" HAVE___S64)
-
 CHECK_SYMBOL_EXISTS(res_nquery "resolv.h" HAVE_RES_NQUERY)
+CHECK_SYMBOL_EXISTS(F_SETPIPE_SZ "linux/fcntl.h" CEPH_HAVE_SETPIPE_SZ)
+CHECK_SYMBOL_EXISTS(__func__ "" HAVE_FUNC)
+CHECK_SYMBOL_EXISTS(__PRETTY_FUNCTION__ "" HAVE_PRETTY_FUNC)
 
 include(CheckCXXSourceCompiles)
 CHECK_CXX_SOURCE_COMPILES("
   #include <string.h>
   int main() { char x = *strerror_r(0, &x, sizeof(x)); return 0; }
   " STRERROR_R_CHAR_P)
+CHECK_CXX_SOURCE_COMPILES("
+  #include <sys/stat.h>
+  #include <stdio.h>
+  int main() { struct stat foo = {}; foo.st_mtim.tv_nsec = 0;
+  return 0; } 
+  " HAVE_STAT_ST_MTIM_TV_NSEC)
+CHECK_CXX_SOURCE_COMPILES("
+  #include <sys/stat.h>
+  #include <stdio.h>
+  int main() { struct stat foo = {}; foo.st_mtimespec.tv_nsec = 0;
+  return 0; } 
+  " HAVE_STAT_ST_MTIMESPEC_TV_NSEC)
+CHECK_CXX_SOURCE_COMPILES("
+  int main() { float f = 12.3; int n = static_cast<int>(f); return 0; }
+  " HAVE_STATIC_CAST)
 
 set(CEPH_MAN_DIR "share/man" CACHE STRING "Install location for man pages (relative to prefix).")
 
@@ -178,13 +190,12 @@ option(WITH_FUSE "Fuse is here" ON)
 if(${WITH_FUSE})
 find_package(fuse)
 set(HAVE_LIBFUSE ${FUSE_FOUND})
-CHECK_FUNCTION_EXISTS(fuse_getgroups HAVE_FUSE_GETGROUPS)
 endif(${WITH_FUSE})
 
 option(WITH_XFS "XFS is here" ON)
 if(${WITH_XFS})
 find_package(xfs)
-set(HAVE_XFS ${XFS_FOUND})
+set(HAVE_LIBXFS ${XFS_FOUND})
 endif(${WITH_XFS})
 
 option(WITH_SPDK "Enable SPDK" OFF)
@@ -195,13 +206,11 @@ if(WITH_SPDK)
 endif(WITH_SPDK)
 
 find_package(blkid REQUIRED)
-set(HAVE_LIBBLKID ${BLKID_FOUND})
 
 # probably fuse etc need this -- how to check? XXX
 option(WITH_MDS "MDS is here" ON)
 
 # needs mds and? XXX
-option(WITH_CLIENT "Client is here" ON)
 option(WITH_LIBCEPHFS "libcephfs client library" ON)
 
 # key-value store
@@ -213,22 +222,22 @@ option(WITH_RBD "Remote block storage is here" ON)
 option(WITH_LEVELDB "LevelDB is here" ON)
 if(${WITH_LEVELDB})
 find_package(leveldb REQUIRED)
-set(HAVE_LIBLEVELDB ${LEVELDB_FOUND})
 find_file(HAVE_LEVELDB_FILTER_POLICY filter_policy.h PATHS /usr/include/leveldb)
 endif(${WITH_LEVELDB})
 
 option(WITH_EXPAT "EXPAT is here" ON)
 if(${WITH_EXPAT})
 find_package(expat REQUIRED)
-set(HAVE_EXPAT ${EXPAT_FOUND})
 endif(${WITH_EXPAT})
 
 find_package(Cython REQUIRED)
 find_package(fcgi REQUIRED)
 
 find_package(atomic_ops REQUIRED)
-set(HAVE_ATOMIC_OPS ${ATOMIC_OPS_FOUND})
 message(STATUS "${ATOMIC_OPS_LIBRARIES}")
+if(NOT ${ATOMIC_OPS_FOUND})
+  set(NO_ATOMIC_OPS 1)
+endif(NOT ${ATOMIC_OPS_FOUND})
 
 option(WITH_GPERFTOOLS "gperftools is here" ON)
 if(${WITH_GPERFTOOLS})
@@ -250,11 +259,15 @@ if(ALLOCATOR)
     set(HAVE_LIBTCMALLOC ${Tcmalloc_FOUND})
   elseif(${ALLOCATOR} STREQUAL "jemalloc")
     find_package(JeMalloc REQUIRED)
+    set(HAVE_LIBJEMALLOC ${JEMALLOC_FOUND})
   endif()
 else(ALLOCATOR)
   find_package(tcmalloc)
   set(HAVE_LIBTCMALLOC ${Tcmalloc_FOUND})
-  find_package(JeMalloc)
+  if(NOT ${Tcmalloc_FOUND})
+    find_package(JeMalloc)
+    set(HAVE_LIBJEMALLOC ${JEMALLOC_FOUND})
+  endif(NOT ${Tcmalloc_FOUND})
   if(NOT Tcmalloc_FOUND AND NOT JEMALLOC_FOUND)
     message(WARNING "tcmalloc and jemalloc not found, falling back to libc")
     set(ALLOCATOR "libc")
@@ -330,14 +343,13 @@ if(${HAVE_BABELTRACE})
   set(WITH_BABELTRACE ${BABELTRACE_FOUND})
   set(HAVE_BABELTRACE_BABELTRACE_H ${BABELTRACE_FOUND})
   set(HAVE_BABELTRACE_CTF_EVENTS_H ${BABELTRACE_FOUND})
+  set(HAVE_BABELTRACE_CTF_ITERATOR_H ${BABELTRACE_FOUND})
 endif(${HAVE_BABELTRACE})
 
-# Now create a useable config.h
-configure_file(
-  ${PROJECT_SOURCE_DIR}/src/include/config-h.in.cmake
-  ${PROJECT_BINARY_DIR}/include/acconfig.h
-)
-include_directories(${PROJECT_BINARY_DIR}/include)
+option(DEBUG_GATHER "C_Gather debugging is enabled" ON)
+option(HAVE_LIBZFS "LibZFS is enabled" OFF)
+option(ENABLE_COVERAGE "Coverage is enabled" OFF)
+option(PG_DEBUG_REFS "PG Ref debugging is enabled" OFF)
 
 add_definitions(-D__linux__)
 
@@ -350,6 +362,7 @@ endif(${ENABLE_SHARED})
 set(Boost_USE_MULTITHREADED ON)
 find_package(Boost COMPONENTS thread system regex random program_options date_time iostreams REQUIRED)
 include_directories(${Boost_INCLUDE_DIRS})
+include_directories(${PROJECT_BINARY_DIR}/include)
 
 find_package(Threads REQUIRED)
 
index 20bf8fa118758c0c392150da523650821822e28b..42b3edd01d612d8fa124467c0045f0a147bd608d 100644 (file)
@@ -31,7 +31,6 @@ else (OPENLDAP_FOUND)
   endif (NOT OPENLDAP_INCLUDE_DIR)
 endif (OPENLDAP_FOUND)
 
-add_definitions(-DHAVE_OPENLDAP)
 set(OPENLDAP_LIBS ${LIBLDAP} ${LIBLBER})
 
 mark_as_advanced(
index b72b62591eb559d2a71751c5a36cd441c4239c5f..d576186b53e2a30c8f4839342317c60c12663f6d 100644 (file)
@@ -25,7 +25,7 @@ endif()
 #list(APPEND BABELTRACE_PATH_HINT ${MYPATH})
 
 find_path(BABELTRACE_INCLUDE_DIR
-          NAMES babeltrace/babeltrace.h babeltrace/ctf/events.h
+          NAMES babeltrace/babeltrace.h babeltrace/ctf/events.h babeltrace/ctf/iterator.h
           PATHS ${BABELTRACE_PATH_HINT}
           PATH_SUFFIXES include
           DOC "The Babeltrace include headers")
index b5f366b21bcd853fa7e46655660bec543db12308..ff8cadc3bd2ad23803475521d4da8ef9284d129b 100644 (file)
@@ -39,4 +39,4 @@ ENDIF (FCGI_FOUND)
 include(FindPackageHandleStandardArgs)
 find_package_handle_standard_args(fcgi DEFAULT_MSG FCGI_LIBRARY FCGI_INCLUDE_DIR)
 
-mark_as_advanced(UUID_LIBRARIES UUID_INCLUDE_DIR)
+mark_as_advanced(FCGI_LIBRARY FCGI_INCLUDE_DIR)
index 7833502fa5ead04f4eb27243a1610e0d89a263ee..0ff394cd2675b4f438ef5ef31b5b753149ab50a2 100644 (file)
@@ -55,7 +55,6 @@ else(no_yasm)
     if(not_arch_x32)
       message(STATUS " we are not x32")
       set(HAVE_GOOD_YASM_ELF64 1)
-      add_definitions("-DHAVE_GOOD_YASM_ELF64")
       execute_process(COMMAND yasm -f elf64 -i
         ${CMAKE_SOURCE_DIR}/src/erasure-code/isa/isa-l/include/
         ${CMAKE_SOURCE_DIR}/src/erasure-code/isa/isa-l/erasure_code/gf_vect_dot_prod_avx2.asm.s
@@ -64,7 +63,6 @@ else(no_yasm)
         OUTPUT_QUIET)
       if(NOT rc)
         set(HAVE_BETTER_YASM_ELF64 1)
-        add_definitions("-DHAVE_BETTER_YASM_ELF64")
         message(STATUS " yasm can also build the isa-l stuff")
       endif(NOT rc)
     else(not_arch_x32)
@@ -87,6 +85,77 @@ else()
   message(FATAL_ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support.")
 endif()
 
+## detect sse support
+
+# create a tmp file with an empty main()
+set(sse_srcs "${CMAKE_BINARY_DIR}/src/erasure-code/jerasure/tmp_sse.c")
+file(WRITE ${sse_srcs} "void main() {}")
+
+# try each -msse flag
+try_compile(INTEL_SSE ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-msse")
+try_compile(INTEL_SSE2 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-msse2")
+try_compile(INTEL_SSE3 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-msse3")
+try_compile(INTEL_SSSE3 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-mssse3")
+try_compile(INTEL_SSE4_1 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-msse4.1")
+try_compile(INTEL_SSE4_2 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-msse4.2")
+try_compile(ARM_NEON ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-mfpu=neon")
+try_compile(ARM_NEON2 ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-march=armv8-a+simd")
+try_compile(ARM_CRC ${CMAKE_BINARY_DIR} ${sse_srcs}
+  COMPILE_DEFINITIONS "-march=armv8-a+crc")
+
+# clean up tmp file
+file(REMOVE ${sse_srcs})
+
+if(ARM_CRC)
+  set(HAVE_ARMV8_CRC 1)
+  set(ARM_CRC_FLAGS "-march=armv8-a+crc -DARCH_AARCH64")
+endif(ARM_CRC)
+
+if(ARM_NEON OR ARM_NEON2)
+  set(HAVE_NEON 1)
+  if(ARM_NEON)
+    set(ARM_NEON_FLAGS "-mfpu=neon -DARM_NEON")
+  else(ARM_NEON)
+    set(ARM_NEON_FLAGS "-march=armv8-a+simd -DARCH_AARCH64 -DARM_NEON")
+  endif(ARM_NEON)
+else(ARM_NEON OR ARM_NEON2)
+  message(STATUS "Skipping target ec_jerasure_neon & ec_shec_neon: Architecture not ARM")
+endif(ARM_NEON OR ARM_NEON2)
+
+if(INTEL_SSE)
+  set(HAVE_SSE 1)
+  set(SSE3_FLAGS "-msse")
+  if (INTEL_SSE2)
+    set(HAVE_SSE2 1)
+    set(SSE3_FLAGS "${SSE3_FLAGS} -msse2")
+  endif (INTEL_SSE2)
+  if (INTEL_SSE3)
+    set(SSE3_FLAGS "${SSE3_FLAGS} -msse3")
+  endif (INTEL_SSE3)
+  if (INTEL_SSSE3)
+    set(SSE3_FLAGS "${SSE3_FLAGS} -mssse3")
+  endif (INTEL_SSSE3)
+else(INTEL_SSE)
+  message(STATUS "Skipping target ec_jerasure_sse3 & ec_shec_sse3: -msse not supported")
+endif(INTEL_SSE)
+
+if(INTEL_SSE4_1)
+  set(SSE4_FLAGS "${SSE3_FLAGS} -msse4.1")
+  if (INTEL_SSE4_2)
+    set(SSE4_FLAGS "${SSE4_FLAGS} -msse4.2")
+  endif (INTEL_SSE4_2)
+else(INTEL_SSE4_1)
+  message(STATUS "Skipping target ec_jerasure_sse4 & ec_shec_sse4: -msse4.1 not supported")
+endif(INTEL_SSE4_1)
+
 
 set(EXTRALIBS uuid rt dl ${ATOMIC_OPS_LIBRARIES})
 
@@ -94,6 +163,16 @@ if(${WITH_PROFILER})
   list(APPEND EXTRALIBS profiler)
 endif(${WITH_PROFILER})
 
+if(${ENABLE_COVERAGE})
+  find_program(HAVE_GCOV gcov)
+  if(NOT HAVE_GCOV)
+    message(FATAL_ERROR "Coverage Enabled but gcov Not Found")
+  endif(NOT HAVE_GCOV)
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage -O0")
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage")
+  list(APPEND EXTRALIBS gcov)
+endif(${ENABLE_COVERAGE})
+
 if(USE_NSS)
   if(NSS_FOUND)
     if(NSPR_FOUND)
@@ -381,6 +460,12 @@ if(${HAVE_GPERFTOOLS})
   target_link_libraries(common profiler)
 endif(${HAVE_GPERFTOOLS})
 
+if(${HAVE_ARMV8_CRC})
+  add_library(common_crc_aarch64 STATIC common/crc32c_aarch64.c)
+  set_target_properties(common_crc_aarch64 PROPERTIES COMPILE_FLAGS "${CMAKE_C_FLAGS} ${ARM_CRC_FLAGS}")
+  target_link_libraries(common common_crc_aarch64)
+endif(${HAVE_ARMV8_CRC})
+
 add_library(common_utf8 STATIC common/utf8.c)
 
 target_link_libraries(common json_spirit common_utf8 erasure_code rt uuid ${CRYPTO_LIBS} ${Boost_LIBRARIES} ${BLKID_LIBRARIES} ${EXECINFO_LIBRARIES})
@@ -646,11 +731,11 @@ add_dependencies(ceph-mon erasure_code_plugins)
 install(TARGETS ceph-mon DESTINATION bin)
 
 # OSD
-if(${HAVE_XFS})
+if(${HAVE_LIBXFS})
   set(libos_xfs_srcs
     os/filestore/XfsFileStoreBackend.cc
     os/fs/XFS.cc)
-endif(${HAVE_XFS})
+endif(${HAVE_LIBXFS})
 set(libos_srcs
   os/ObjectStore.cc
   os/Transaction.cc
@@ -1216,10 +1301,6 @@ if(${WITH_RADOSGW})
     cls_log_client cls_statelog_client cls_timeindex_client cls_version_client
     cls_replica_log_client cls_user_client curl global expat)
 
-  if(HAVE_BOOST_ASIO_COROUTINE)
-    target_compile_definitions(rgw_a PUBLIC "HAVE_BOOST_ASIO_COROUTINE")
-  endif()
-
   set(radosgw_srcs
     rgw/rgw_fcgi_process.cc
     rgw/rgw_loadgen_process.cc
@@ -1299,6 +1380,12 @@ if(${WITH_RADOSGW})
   install(TARGETS radosgw-object-expirer DESTINATION bin)
 endif(${WITH_RADOSGW})
 
+# Now create a useable config.h
+configure_file(
+  ${CMAKE_SOURCE_DIR}/src/include/config-h.in.cmake
+  ${CMAKE_BINARY_DIR}/include/acconfig.h
+)
+
 # Everything you need to spin up a cluster with vstart.sh
 add_custom_target(vstart DEPENDS
     ceph-osd
index 0f406bc441a49f31d1769cd121cf5fe4552ee560..0255876ebdadbf74579a72e6ce63918b52e06652 100644 (file)
@@ -1,68 +1,4 @@
 ## erasure code plugins
-
-set(erasure_codelibdir ${LIBRARY_OUTPUT_PATH}/erasure-code)
-
-## detect sse support
-
-# create a tmp file with an empty main()
-set(sse_srcs "${CMAKE_BINARY_DIR}/src/erasure-code/jerasure/tmp_sse.c")
-file(WRITE ${sse_srcs} "void main() {}")
-
-# try each -msse flag
-try_compile(INTEL_SSE ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-msse")
-try_compile(INTEL_SSE2 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-msse2")
-try_compile(INTEL_SSE3 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-msse3")
-try_compile(INTEL_SSSE3 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-mssse3")
-try_compile(INTEL_SSE4_1 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-msse4.1")
-try_compile(INTEL_SSE4_2 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-msse4.2")
-try_compile(ARM_NEON ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-mfpu=neon")
-try_compile(ARM_NEON2 ${CMAKE_BINARY_DIR} ${sse_srcs}
-  COMPILE_DEFINITIONS "-march=armv8-a+simd")
-
-# clean up tmp file
-file(REMOVE ${sse_srcs})
-
-if(ARM_NEON OR ARM_NEON2)
-  if(ARM_NEON)
-    set(ARM_NEON_FLAGS "-mfpu=neon")
-  else(ARM_NEON)
-    set(ARM_NEON_FLAGS "-march=armv8-a+simd")
-  endif(ARM_NEON)
-else(ARM_NEON OR ARM_NEON2)
-  message(STATUS "Skipping target ec_jerasure_neon & ec_shec_neon: Architecture not ARM")
-endif(ARM_NEON OR ARM_NEON2)
-
-if(INTEL_SSE)
-  set(SSE3_FLAGS "-msse")
-  if (INTEL_SSE2)
-    set(SSE3_FLAGS "${SSE3_FLAGS} -msse2")
-  endif (INTEL_SSE2)
-  if (INTEL_SSE3)
-    set(SSE3_FLAGS "${SSE3_FLAGS} -msse3")
-  endif (INTEL_SSE3)
-  if (INTEL_SSSE3)
-    set(SSE3_FLAGS "${SSE3_FLAGS} -mssse3")
-  endif (INTEL_SSSE3)
-else(INTEL_SSE)
-  message(STATUS "Skipping target ec_jerasure_sse3 & ec_shec_sse3: -msse not supported")
-endif(INTEL_SSE)
-
-if(INTEL_SSE4_1)
-  set(SSE4_FLAGS "${SSE3_FLAGS} -msse4.1")
-  if (INTEL_SSE4_2)
-    set(SSE4_FLAGS "${SSE4_FLAGS} -msse4.2")
-  endif (INTEL_SSE4_2)
-else(INTEL_SSE4_1)
-  message(STATUS "Skipping target ec_jerasure_sse4 & ec_shec_sse4: -msse4.1 not supported")
-endif(INTEL_SSE4_1)
-
 #jerasure subdir must be before shec so jerasure & neon obj libs are declared
 include_directories(jerasure/jerasure/include)
 include_directories(jerasure/gf-complete/include)
index e908e85f43baa3c49b5fd1f7755e94caefc4be67..0292f7e85323450a894aa63cee8caeaa2c6959e9 100644 (file)
 #define CONFIG_H
 
 /* fallocate(2) is supported */
-#cmakedefine CEPH_HAVE_FALLOCATE 
+#cmakedefine CEPH_HAVE_FALLOCATE
 
-/* mallinfo(3) is supported */
-#cmakedefine HAVE_MALLINFO
+/* Define to 1 if you have the `posix_fadvise' function. */
+#cmakedefine HAVE_POSIX_FADVISE 1
 
-/* posix_fadvise is supported */
-#cmakedefine HAVE_POSIX_FADVISE
+/* Define to 1 if you have the `posix_fallocate' function. */
+#cmakedefine HAVE_POSIX_FALLOCATE 1
 
-/* posix_fallocate is supported */
-#cmakedefine HAVE_POSIX_FALLOCATE 
+/* Define to 1 if you have the `syncfs' function. */
+#cmakedefine HAVE_SYS_SYNCFS 1
 
-/* Define if darwin/osx */
-#cmakedefine DARWIN 
+/* sync_file_range(2) is supported */
+#cmakedefine HAVE_SYNC_FILE_RANGE
 
-/* Define if you want C_Gather debugging */
-#cmakedefine DEBUG_GATHER 
+/* Define if you have mallinfo */
+#cmakedefine HAVE_MALLINFO
 
-/* Define if enabling coverage. */
-#cmakedefine ENABLE_COVERAGE
+/* Define to 1 if you have the `pwritev' function. */
+#cmakedefine HAVE_PWRITEV 1
 
-/* FastCGI headers are in /usr/include/fastcgi */
-#cmakedefine FASTCGI_INCLUDE_DIR
+/* Define to 1 if you have the <sys/mount.h> header file. */
+#cmakedefine HAVE_SYS_MOUNT_H 1
 
-/* Define to 1 if you have the <arpa/inet.h> header file. */
-#cmakedefine HAVE_ARPA_INET_H 1
+/* Define to 1 if you have the <sys/param.h> header file. */
+#cmakedefine HAVE_SYS_PARAM_H 1
 
-/* have boost::random::discrete_distribution */
-#cmakedefine HAVE_BOOST_RANDOM_DISCRETE_DISTRIBUTION
+/* Define to 1 if you have the <sys/types.h> header file. */
+#cmakedefine HAVE_SYS_TYPES_H 1
 
-/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
-   */
-#cmakedefine HAVE_DIRENT_H 1
+/* Define to 1 if you have the <sys/vfs.h> header file. */
+#cmakedefine HAVE_SYS_VFS_H 1
 
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#cmakedefine HAVE_DLFCN_H 1
+/* Define to 1 if you have the <execinfo.h> header file. */
+#cmakedefine HAVE_EXECINFO_H 1
 
-/* linux/fiemap.h was found, fiemap ioctl will be used */
-#cmakedefine HAVE_FIEMAP_H 1
+/* Define to 1 if the system has the type `__be16'. */
+#cmakedefine HAVE___BE16 1
 
-/* Define to 1 if you have the `fuse_getgroups' function. */
-#cmakedefine HAVE_FUSE_GETGROUPS 1
+/* Define to 1 if the system has the type `__be32'. */
+#cmakedefine HAVE___BE32 1
 
-/* Define to 1 if you have the <linux/types.h> header file. */
-#cmakedefine HAVE_LINUX_TYPES_H 1
+/* Define to 1 if the system has the type `__be64'. */
+#cmakedefine HAVE___BE64 1
 
-/* Define to 1 if you have the <inttypes.h> header file. */
-#cmakedefine HAVE_INTTYPES_H 1
+/* Define to 1 if the system has the type `__le16'. */
+#cmakedefine HAVE___LE16 1
 
-/* Defined if LevelDB supports bloom filters */
-#cmakedefine HAVE_LEVELDB_FILTER_POLICY
+/* Define to 1 if the system has the type `__le32'. */
+#cmakedefine HAVE___LE32 1
 
-/* Defined if you don't have atomic_ops */
-#cmakedefine HAVE_LIBAIO
+/* Define to 1 if the system has the type `__le64'. */
+#cmakedefine HAVE___LE64 1
 
-/* Define to 1 if you have the `boost_system' library (-lboost_system). */
-#cmakedefine HAVE_LIBBOOST_SYSTEM 1
+/* Define to 1 if the system has the type `__s16'. */
+#cmakedefine HAVE___S16 1
 
-/* Define to 1 if you have the `boost_system-mt' library (-lboost_system-mt).
-   */
-#cmakedefine HAVE_LIBBOOST_SYSTEM_MT 1
+/* Define to 1 if the system has the type `__s32'. */
+#cmakedefine HAVE___S32 1
 
-/* Define to 1 if you have the `boost_thread' library (-lboost_thread). */
-#cmakedefine HAVE_LIBBOOST_THREAD 1
+/* Define to 1 if the system has the type `__s64'. */
+#cmakedefine HAVE___S64 1
 
-/* Define to 1 if you have the `boost_thread-mt' library (-lboost_thread-mt).
-   */
-#cmakedefine HAVE_LIBBOOST_THREAD_MT 1
+/* Define to 1 if the system has the type `__s8'. */
+#cmakedefine HAVE___S8 1
 
-/* Define if you have fuse */
-#cmakedefine HAVE_LIBFUSE
+/* Define to 1 if the system has the type `__u16'. */
+#cmakedefine HAVE___U16 1
 
-/* Define to 1 if you have the `profiler' library (-lprofiler). */
-#cmakedefine HAVE_LIBPROFILER 1
+/* Define to 1 if the system has the type `__u32'. */
+#cmakedefine HAVE___U32 1
 
-/* Define to 1 if you have the `snappy' library (-lsnappy). */
-#cmakedefine HAVE_LIBSNAPPY 1
+/* Define to 1 if the system has the type `__u64'. */
+#cmakedefine HAVE___U64 1
 
-/* Define if you have jemalloc */
-#cmakedefine HAVE_LIBJEMALLOC
-
-/* Define if you have tcmalloc */
-#cmakedefine HAVE_LIBTCMALLOC
+/* Define to 1 if the system has the type `__u8'. */
+#cmakedefine HAVE___U8 1
 
-/* Define if you have tcmalloc */
-#cmakedefine HAVE_LIBTCMALLOC_MINIMAL
-
-/* Define to 1 if you have the <memory.h> header file. */
-#cmakedefine HAVE_MEMORY_H 1
+/* Define if you have res_nquery */
+#cmakedefine HAVE_RES_NQUERY
 
-/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
-#cmakedefine HAVE_NDIR_H 1
+/* Defined if you don't have atomic_ops */
+#cmakedefine NO_ATOMIC_OPS
 
-/* Define to 1 if you have the <netdb.h> header file. */
-#cmakedefine HAVE_NETDB_H 1
+/* Defined if you have libaio */
+#cmakedefine HAVE_LIBAIO
 
-/* Define to 1 if you have the <netinet/in.h> header file. */
-#cmakedefine HAVE_NETINET_IN_H 1
+/* Defined if OpenLDAP enabled */
+#cmakedefine HAVE_OPENLDAP
 
-/* Define if you have perftools profiler enabled */
-#cmakedefine HAVE_PROFILER
+/* Define if you have fuse */
+#cmakedefine HAVE_LIBFUSE
 
-/* Define if you have POSIX threads libraries and header files. */
-#cmakedefine HAVE_PTHREAD
+/* Define to 1 if you have libxfs */
+#cmakedefine HAVE_LIBXFS 1
 
-/* Define to 1 if you have the <stdint.h> header file. */
-#cmakedefine HAVE_STDINT_H 1
+/* SPDK conditional compilation */
+#cmakedefine HAVE_SPDK
 
-/* Define to 1 if you have the <stdlib.h> header file. */
-#cmakedefine HAVE_STDLIB_H 1
+/* Defined if LevelDB supports bloom filters */
+#cmakedefine HAVE_LEVELDB_FILTER_POLICY
 
-/* Define to 1 if you have the <strings.h> header file. */
-#cmakedefine HAVE_STRINGS_H 1
+/* Define to 1 if you have the <gperftools/heap-profiler.h> header file. */
+#cmakedefine HAVE_GPERFTOOLS_HEAP_PROFILER_H 1
 
-/* Define to 1 if you have the <string.h> header file. */
-#cmakedefine HAVE_STRING_H 1
+/* Define to 1 if you have the <gperftools/malloc_extension.h> header file. */
+#cmakedefine HAVE_GPERFTOOLS_MALLOC_EXTENSION_H 1
 
-/* Define to 1 if you have the `syncfs' function. */
-#cmakedefine HAVE_SYNCFS 1
+/* Define to 1 if you have the <gperftools/profiler.h> header file. */
+#cmakedefine HAVE_GPERFTOOLS_PROFILER_H 1
 
-/* Define to 1 if you have the `pwritev' function. */
-#cmakedefine HAVE_PWRITEV 1
+/* Define if you have tcmalloc */
+#cmakedefine HAVE_LIBTCMALLOC
 
-/* sync_file_range(2) is supported */
-#cmakedefine HAVE_SYNC_FILE_RANGE
+/* Define if you have jemalloc */
+#cmakedefine HAVE_LIBJEMALLOC
 
-/* Define to 1 if you have the <syslog.h> header file. */
-#cmakedefine HAVE_SYSLOG_H 1
+/* Define if have curl_multi_wait() */
+#cmakedefine HAVE_CURL_MULTI_WAIT 1
 
-/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
-   */
-#cmakedefine HAVE_SYS_DIR_H 1
+/* Define if using CryptoPP. */
+#cmakedefine USE_CRYPTOPP
 
-/* Define to 1 if you have the <sys/file.h> header file. */
-#cmakedefine HAVE_SYS_FILE_H 1
+/* Define if using NSS. */
+#cmakedefine USE_NSS
 
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-#cmakedefine HAVE_SYS_IOCTL_H 1
+/* Accelio conditional compilation */
+#cmakedefine HAVE_XIO
 
-/* Define to 1 if you have the <sys/mount.h> header file. */
-#cmakedefine HAVE_SYS_MOUNT_H 1
+/* define if radosgw enabled */
+#cmakedefine WITH_RADOSGW
 
-/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
-   */
-#cmakedefine HAVE_SYS_NDIR_H 1
+/* define if HAVE_THREAD_SAFE_RES_QUERY */
+#cmakedefine HAVE_THREAD_SAFE_RES_QUERY
 
-/* Define to 1 if you have the <sys/param.h> header file. */
-#cmakedefine HAVE_SYS_PARAM_H 1
+/* define if HAVE_REENTRANT_STRSIGNAL */
+#cmakedefine HAVE_REENTRANT_STRSIGNAL
 
-/* Define to 1 if you have the <sys/socket.h> header file. */
-#cmakedefine HAVE_SYS_SOCKET_H 1
+/* Define if you want to use LTTng */
+#cmakedefine WITH_LTTNG
 
-/* Define to 1 if you have the <sys/statvfs.h> header file. */
-#cmakedefine HAVE_SYS_STATVFS_H 1
+/* Define if you want to use Babeltrace */
+#cmakedefine WITH_BABELTRACE
 
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#cmakedefine HAVE_SYS_STAT_H 1
+/* Define to 1 if you have the <babeltrace/babeltrace.h> header file. */
+#cmakedefine HAVE_BABELTRACE_BABELTRACE_H 1
 
-/* we have syncfs */
-#cmakedefine HAVE_SYS_SYNCFS
+/* Define to 1 if you have the <babeltrace/ctf/events.h> header file. */
+#cmakedefine HAVE_BABELTRACE_CTF_EVENTS_H 1
 
-/* Define to 1 if you have the <sys/time.h> header file. */
-#cmakedefine HAVE_SYS_TIME_H 1
+/* Define to 1 if you have the <babeltrace/ctf/iterator.h> header file. */
+#cmakedefine HAVE_BABELTRACE_CTF_ITERATOR_H 1
 
-/* Define to 1 if you have the <sys/types.h> header file. */
-#cmakedefine HAVE_SYS_TYPES_H 1
+/* Define to 1 if you have the <arpa/nameser_compat.h> header file. */
+#cmakedefine HAVE_ARPA_NAMESER_COMPAT_H 1
 
-/* Define to 1 if you have the <sys/vfs.h> header file. */
-#cmakedefine HAVE_SYS_VFS_H 1
+/* FastCGI headers are in /usr/include/fastcgi */
+#cmakedefine FASTCGI_INCLUDE_DIR
 
-/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
-#ifndef HAVE_SYS_WAIT_H
-#cmakedefine HAVE_SYS_WAIT_H
-#endif
+/* splice(2) is supported */
+#cmakedefine CEPH_HAVE_SPLICE
 
-/* Define to 1 if you have the <sys/xattr.h> header file. */
-#cmakedefine HAVE_SYS_XATTR_H
+/* Define if you want C_Gather debugging */
+#cmakedefine DEBUG_GATHER
 
-#ifndef HAVE_UNISTD_H
-/* Define to 1 if you have the <unistd.h> header file. */
-#cmakedefine HAVE_UNISTD_H
-#endif
+/* Define to 1 if you have the `getgrouplist' function. */
+#cmakedefine HAVE_GETGROUPLIST 1
 
-#ifndef HAVE_UTIME_H
-/* Define to 1 if you have the <utime.h> header file. */
-#cmakedefine HAVE_UTIME_H
-#endif
+/* LTTng is disabled, so define this macro to be nothing. */
+#cmakedefine tracepoint
 
-/* Define if you have the <execinfo.h> header file. */
-#cmakedefine HAVE_EXECINFO_H
+/* have boost::asio::coroutine */
+#cmakedefine HAVE_BOOST_ASIO_COROUTINE
 
-/* Define to 1 if strerror_r returns char *. */
-#cmakedefine STRERROR_R_CHAR_P 1
+/* Define to 1 if you have fdatasync. */
+#cmakedefine HAVE_FDATASYNC 1
 
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-#cmakedefine LT_OBJDIR
+/* Define to 1 if you have the <inttypes.h> header file. */
+#cmakedefine HAVE_INTTYPES_H 1
 
-/* Defined if you do not have atomic_ops */
-#cmakedefine NO_ATOMIC_OPS
+/* Defined if you have librocksdb enabled */
+#cmakedefine HAVE_LIBROCKSDB
 
-/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-#cmakedefine NO_MINUS_C_MINUS_O
+/* Define to 1 if you have the <valgrind/helgrind.h> header file. */
+#cmakedefine HAVE_VALGRIND_HELGRIND_H 1
 
-/* Name of package */
-#cmakedefine PACKAGE
+/* Define to 1 if you have the <stdint.h> header file. */
+#cmakedefine HAVE_STDINT_H 1
 
-/* Define to the address where bug reports for this package should be sent. */
-#cmakedefine PACKAGE_BUGREPORT
+/* Define to 1 if you have the <sys/prctl.h> header file. */
+#cmakedefine HAVE_SYS_PRCTL_H 1
 
-/* Define to the full name of this package. */
-#cmakedefine PACKAGE_NAME
+/* Define to 1 if you have the <linux/types.h> header file. */
+#cmakedefine HAVE_LINUX_TYPES_H 1
 
-/* Define to the full name and version of this package. */
-#cmakedefine PACKAGE_STRING
+/* Define to 1 if you have the <linux/version.h> header file. */
+#cmakedefine HAVE_LINUX_VERSION_H 1
 
-/* Define to the one symbol short name of this package. */
-#cmakedefine PACKAGE_TARNAME
+/* Define to 1 if you have sched.h. */
+#cmakedefine HAVE_SCHED 1
 
-/* Define to the home page for this package. */
-#cmakedefine PACKAGE_URL
+/* Support SSE (Streaming SIMD Extensions) instructions */
+#cmakedefine HAVE_SSE
 
-/* Define to the version of this package. */
-#cmakedefine PACKAGE_VERSION
+/* Support SSE2 (Streaming SIMD Extensions 2) instructions */
+#cmakedefine HAVE_SSE2
 
-/* Defined if you want pg ref debugging */
-#cmakedefine PG_DEBUG_REFS
+/* Define to 1 if you have the `pipe2' function. */
+#cmakedefine HAVE_PIPE2 1
 
-/* Define to necessary symbol if this constant uses a non-standard name on
-   your system. */
-#cmakedefine PTHREAD_CREATE_JOINABLE
+/* Support NEON instructions */
+#cmakedefine HAVE_NEON
 
-/* Define to 1 if you have the ANSI C header files. */
-#cmakedefine STDC_HEADERS
+/* Define if you have pthread_spin_init */
+#cmakedefine HAVE_PTHREAD_SPINLOCK
 
-/* Define if using CryptoPP. */
-#cmakedefine USE_CRYPTOPP
+/* name_to_handle_at exists */
+#cmakedefine HAVE_NAME_TO_HANDLE_AT
 
-/* Define if using NSS. */
-#cmakedefine USE_NSS
+/* we have a recent yasm and are x86_64 */
+#cmakedefine HAVE_GOOD_YASM_ELF64 
 
-/* Version number of package */
-#cmakedefine VERSION "@VERSION@"
+/* yasm can also build the isa-l */
+#cmakedefine HAVE_BETTER_YASM_ELF64
 
-/* define if radosgw enabled */
-#cmakedefine WITH_RADOSGW
+/* Define to 1 if strerror_r returns char *. */
+#cmakedefine STRERROR_R_CHAR_P 1
 
-/* Defined if XIO */
-#cmakedefine HAVE_XIO
+/* Defined if you have libzfs enabled */
+#cmakedefine HAVE_LIBZFS
 
-/* Defined if LTTNG */
-#cmakedefine WITH_LTTNG 1
+/* Define if the C complier supports __func__ */
+#cmakedefine HAVE_FUNC
 
-/* Defined if Babeltrace */
-#cmakedefine WITH_BABELTRACE 1
+/* Define if the C complier supports __PRETTY_FUNCTION__ */
+#cmakedefine HAVE_PRETTY_FUNC
 
-/* Define to 1 if you have the <babeltrace/babeltrace.h> header file. */
-#cmakedefine HAVE_BABELTRACE_BABELTRACE_H 1
+/* F_SETPIPE_SZ is supported */
+#cmakedefine CEPH_HAVE_SETPIPE_SZ
 
-/* Define to 1 if you have the <babeltrace/ctf/events.h> header file. */
-#cmakedefine HAVE_BABELTRACE_CTF_EVENTS_H 1
+/* Have eventfd extension. */
+#cmakedefine HAVE_EVENTFD
 
-/* Defined if you have librocksdb enabled */
-#cmakedefine HAVE_LIBROCKSDB
+/* Define if enabling coverage. */
+#cmakedefine ENABLE_COVERAGE
 
-/* Defined if new gperftools */
-#cmakedefine HAVE_GPERFTOOLS_HEAP_PROFILER_H
-#cmakedefine HAVE_GPERFTOOLS_MALLOC_EXTENSION_H
-#cmakedefine HAVE_GPERFTOOLS_PROFILER_H
+/* Defined if you want pg ref debugging */
+#cmakedefine PG_DEBUG_REFS
 
-/* res_nquery is supported */
-#cmakedefine HAVE_RES_NQUERY
+/* Support ARMv8 CRC instructions */
+#cmakedefine HAVE_ARMV8_CRC
 
-/* res_query is thread safe */
-#cmakedefine HAVE_THREAD_SAFE_RES_QUERY
+/* Define if you have struct stat.st_mtimespec.tv_nsec */
+#cmakedefine HAVE_STAT_ST_MTIMESPEC_TV_NSEC
 
-/* Define if HAVE_REENTRANT_STRSIGNAL */
-#cmakedefine HAVE_REENTRANT_STRSIGNAL
+/* Define if you have struct stat.st_mtim.tv_nsec */
+#cmakedefine HAVE_STAT_ST_MTIM_TV_NSEC
 
-/* Defined if curl headers define curl_multi_wait() */
-#cmakedefine HAVE_CURL_MULTI_WAIT 1
+/* Define if compiler supports static_cast<> */
+#cmakedefine HAVE_STATIC_CAST
 
-/* Define if you have spdk */
-#cmakedefine HAVE_SPDK 1
+/* Version number of package */
+#cmakedefine VERSION "@VERSION@"
 
 #endif /* CONFIG_H */