]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake: simplify find_package jemalloc 12468/head
authorBassam Tabbara <bassam.tabbara@quantum.com>
Sat, 10 Dec 2016 04:47:38 +0000 (20:47 -0800)
committerBassam Tabbara <bassam.tabbara@quantum.com>
Tue, 13 Dec 2016 16:39:35 +0000 (11:39 -0500)
simplified the package to find jemalloc. this one matches
the one in src/rocksdb/cmake/modules. The existing one
was struggling to find jemalloc on some hosts.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
cmake/modules/FindJeMalloc.cmake
src/CMakeLists.txt

index 6926ae996dd0048fc1e9d6c09a31af97a630ee43..784560d1d1e1c3bccae59d761e4e9c6002f4c210 100644 (file)
@@ -1,72 +1,20 @@
-# - Find JeMalloc library
 # Find the native JeMalloc includes and library
 # This module defines
 #  JEMALLOC_INCLUDE_DIRS, where to find jemalloc.h, Set when
 #                        JEMALLOC_INCLUDE_DIR is found.
 #  JEMALLOC_LIBRARIES, libraries to link against to use JeMalloc.
-#  JEMALLOC_ROOT_DIR, The base directory to search for JeMalloc.
-#                    This can also be an environment variable.
 #  JEMALLOC_FOUND, If false, do not try to use JeMalloc.
 #
-# also defined, but not for general use are
-#  JEMALLOC_LIBRARY, where to find the JeMalloc library.
 
-#=============================================================================
-# Copyright 2011 Blender Foundation.
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-
-# If JEMALLOC_ROOT_DIR was defined in the environment, use it.
-IF(NOT JEMALLOC_ROOT_DIR AND NOT $ENV{JEMALLOC_ROOT_DIR} STREQUAL "")
-  SET(JEMALLOC_ROOT_DIR $ENV{JEMALLOC_ROOT_DIR})
-ENDIF()
-
-SET(_jemalloc_SEARCH_DIRS
-  ${JEMALLOC_ROOT_DIR}
-  /usr/local
-  /sw # Fink
-  /opt/local # DarwinPorts
-  /opt/csw # Blastwave
-)
+find_path(JEMALLOC_INCLUDE_DIR jemalloc/jemalloc.h)
 
-FIND_PATH(JEMALLOC_INCLUDE_DIR
-  NAMES
-    jemalloc.h
-  HINTS
-    ${_jemalloc_SEARCH_DIRS}
-  PATH_SUFFIXES
-    include/jemalloc
-)
+find_library(JEMALLOC_LIBRARIES jemalloc)
 
-FIND_LIBRARY(JEMALLOC_LIBRARY
-  NAMES
-  jemalloc
-  HINTS
-    ${_jemalloc_SEARCH_DIRS}
-  PATH_SUFFIXES
-    lib64 lib
-  )
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(JeMalloc DEFAULT_MSG
+    JEMALLOC_LIBRARIES JEMALLOC_INCLUDE_DIR)
 
-# handle the QUIETLY and REQUIRED arguments and set JEMALLOC_FOUND to TRUE if 
-# all listed variables are TRUE
-INCLUDE(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(JeMalloc DEFAULT_MSG
-    JEMALLOC_LIBRARY JEMALLOC_INCLUDE_DIR)
-
-IF(JEMALLOC_FOUND)
-  SET(JEMALLOC_LIBRARIES ${JEMALLOC_LIBRARY})
-  SET(JEMALLOC_INCLUDE_DIRS ${JEMALLOC_INCLUDE_DIR})
-  message(STATUS "Found Jemalloc: ${JEMALLOC_LIBRARY}, ${JEMALLOC_INCLUDE_DIR}")
-else ()
-ENDIF(JEMALLOC_FOUND)
-
-MARK_AS_ADVANCED(
+mark_as_advanced(
   JEMALLOC_INCLUDE_DIR
-  JEMALLOC_LIBRARY
-)
+  JEMALLOC_LIBRARIES)
+
index 49b741e8752610c9ed06125dda1ee970234f2305..92879f29543626c817590dc8e29f7e8d42bbfe6a 100644 (file)
@@ -264,7 +264,7 @@ elseif(ALLOCATOR STREQUAL "tcmalloc_minimal")
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free")
   set(TCMALLOC_srcs perfglue/disabled_heap_profiler.cc)
 elseif(ALLOCATOR STREQUAL "jemalloc")
-  set(ALLOC_LIBS ${JEMALLOC_LIBRARY})
+  set(ALLOC_LIBS ${JEMALLOC_LIBRARIES})
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free")
   set(TCMALLOC_srcs perfglue/disabled_heap_profiler.cc)
 elseif(ALLOCATOR STREQUAL "libc")