mirror of
https://github.com/ceph/ceph
synced 2024-12-24 04:14:07 +00:00
6c12edbf9d
* remove Findtcmalloc.cmake, use Findgperftools.cmake instead. * tcmalloc is packaged in gperftools-dev, so we can check them in a single place. * fix the check of heap-profiler.h, we should enable the check as long as tcmalloc is enabled or profiler is enabled. * only check gperftools headers in "include/gperftools", and do not "include/google" anymore. as we only support the distros which shipping recent gperftools-dev package with "include/gperftools". and "google/*.h" are deprecated. * set ALLOC_LIBS with GPERFTOOLS_TCMALLOC_LIBRARY, so we can link against tcmalloc with full path. Signed-off-by: Kefu Chai <kchai@redhat.com>
24 lines
946 B
CMake
24 lines
946 B
CMake
# Try to find gperftools
|
|
# Once done, this will define
|
|
#
|
|
# GPERFTOOLS_FOUND - system has Profiler
|
|
# GPERFTOOLS_INCLUDE_DIR - the Profiler include directories
|
|
# Tcmalloc_INCLUDE_DIR - where to find Tcmalloc.h
|
|
# GPERFTOOLS_TCMALLOC_LIBRARY - link it to use tcmalloc
|
|
# GPERFTOOLS_TCMALLOC_MINIMAL_LIBRARY - link it to use tcmalloc_minimal
|
|
# GPERFTOOLS_PROFILER_LIBRARY - link it to use Profiler
|
|
|
|
find_path(GPERFTOOLS_INCLUDE_DIR gperftools/profiler.h)
|
|
find_path(Tcmalloc_INCLUDE_DIR gperftools/tcmalloc.h)
|
|
|
|
foreach(component tcmalloc tcmalloc_minimal profiler)
|
|
string(TOUPPER ${component} COMPONENT)
|
|
find_library(GPERFTOOLS_${COMPONENT}_LIBRARY ${component})
|
|
list(APPEND GPERFTOOLS_LIBRARIES GPERFTOOLS_${COMPONENT}_LIBRARY)
|
|
endforeach()
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(gperftools DEFAULT_MSG GPERFTOOLS_LIBRARIES GPERFTOOLS_INCLUDE_DIR)
|
|
|
|
mark_as_advanced(GPERFTOOLS_LIBRARIES GPERFTOOLS_INCLUDE_DIR)
|