# Copyright (C) 2011-2018 (see AUTHORS file for a list of contributors) # # This file is part of GNSS-SDR. # # GNSS-SDR is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # GNSS-SDR is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNSS-SDR. If not, see <https://www.gnu.org/licenses/>. # Tries to find Gperftools. # # Usage of this module as follows: # # find_package(GPERFTOOLS) # # Variables used by this module, they can change the default behaviour and need # to be set before calling find_package: # # GPERFTOOLS_ROOT Set this variable to the root installation of # Gperftools if the module has problems finding # the proper installation path. # # Variables defined by this module: # # GPERFTOOLS_FOUND System has Gperftools libs/headers # GPERFTOOLS_LIBRARIES The Gperftools libraries (tcmalloc & profiler) # GPERFTOOLS_INCLUDE_DIR The location of Gperftools headers find_library(GPERFTOOLS_TCMALLOC NAMES tcmalloc HINTS ${Gperftools_ROOT_DIR}/lib ${GPERFTOOLS_ROOT}/lib $ENV{GPERFTOOLS_ROOT}/lib ${GPERFTOOLS_ROOT}/lib64 $ENV{GPERFTOOLS_ROOT}/lib64 ) find_library(GPERFTOOLS_PROFILER NAMES profiler HINTS ${Gperftools_ROOT_DIR}/lib ${GPERFTOOLS_ROOT}/lib $ENV{GPERFTOOLS_ROOT}/lib ${GPERFTOOLS_ROOT}/lib64 $ENV{GPERFTOOLS_ROOT}/lib64 ) find_library(GPERFTOOLS_TCMALLOC_AND_PROFILER NAMES tcmalloc_and_profiler HINTS ${Gperftools_ROOT_DIR}/lib ${GPERFTOOLS_ROOT}/lib $ENV{GPERFTOOLS_ROOT}/lib ${GPERFTOOLS_ROOT}/lib64 $ENV{GPERFTOOLS_ROOT}/lib64 ) find_path(GPERFTOOLS_INCLUDE_DIR NAMES gperftools/heap-profiler.h HINTS ${Gperftools_ROOT_DIR}/include ${GPERFTOOLS_ROOT}/include $ENV{GPERFTOOLS_ROOT}/include ) set(GPERFTOOLS_LIBRARIES ${GPERFTOOLS_TCMALLOC_AND_PROFILER}) include(FindPackageHandleStandardArgs) find_package_handle_standard_args( GPERFTOOLS DEFAULT_MSG GPERFTOOLS_LIBRARIES GPERFTOOLS_INCLUDE_DIR ) mark_as_advanced( Gperftools_ROOT_DIR GPERFTOOLS_TCMALLOC GPERFTOOLS_PROFILER GPERFTOOLS_TCMALLOC_AND_PROFILER GPERFTOOLS_LIBRARIES GPERFTOOLS_INCLUDE_DIR)