提交 4df22ace 编写于 作者: V Vitaliy Lyudvichenko

Try to fix LIBTCMALLOC linking.

上级 202ba912
......@@ -184,6 +184,12 @@ find_library (BOOST_THREAD_LIB libboost_thread.a HINTS ${BOOST_HINTS})
set (LTDL_HINTS "/usr/local/opt/libtool/lib")
find_library (LTDL_LIB libltdl.a HINTS ${LTDL_HINTS})
# 5. tcmalloc
if(NOT DEFINED DISABLE_LIBTCMALLOC)
set(DISABLE_LIBTCMALLOC $ENV{DISABLE_LIBTCMALLOC} CACHE STRING "Don't use libtcmalloc" FORCE)
set(DEBUG_LIBTCMALLOC $ENV{DEBUG_LIBTCMALLOC} CACHE STRING "Use debug version of libtcmalloc" FORCE)
endif()
# Directory for Yandex specific files
SET(CLICKHOUSE_PRIVATE_DIR ${ClickHouse_SOURCE_DIR}/private/)
......
......@@ -10,7 +10,7 @@ add_subdirectory (libpoco)
add_subdirectory (libre2)
add_subdirectory (libzookeeper)
if (NOT $ENV{DISABLE_LIBTCMALLOC})
if (NOT DISABLE_LIBTCMALLOC)
add_subdirectory (libtcmalloc)
endif()
......
......@@ -10,6 +10,8 @@ add_definitions(
include_directories (include src)
message(STATUS "Building: tcmalloc_minimal_internal")
add_library (tcmalloc_minimal_internal
./src/malloc_hook.cc
./src/base/spinlock_internal.cc
......
......@@ -22,7 +22,7 @@ else()
set (LINK_MONGOCLIENT libmongoclient.a ${OPENSSL_LIBS} ${BOOST_THREAD_LIB})
endif()
if ($ENV{DISABLE_LIBTCMALLOC})
if (DISABLE_LIBTCMALLOC)
add_definitions(-D NO_TCMALLOC)
endif()
......
......@@ -60,17 +60,18 @@ add_library (common
)
# TESTIRT-3687 DISABLE_LIBTCMALLOC - when testing for memory leaks, disable libtcmalloc
IF($ENV{DISABLE_LIBTCMALLOC})
IF(DISABLE_LIBTCMALLOC)
message(STATUS "Disabling libtcmalloc for valgrind better analysis")
ELSE($ENV{DISABLE_LIBTCMALLOC})
IF($ENV{DEBUG_LIBTCMALLOC})
message(STATUS "Link libtcmalloc_minimal_debug for testing")
SET(MALLOC_LIBRARIES libtcmalloc_minimal_debug.a)
ELSE($ENV{DEBUG_LIBTCMALLOC})
ELSE(DISABLE_LIBTCMALLOC)
IF(DEBUG_LIBTCMALLOC)
find_library(LIBTCMALLOC_DEBUG libtcmalloc_minimal_debug.a tcmalloc_minimal_debug) # debug version of tcmalloc from package
message(STATUS "Link libtcmalloc_minimal_debug for testing from ${LIBTCMALLOC_DEBUG}")
SET(MALLOC_LIBRARIES ${LIBTCMALLOC_DEBUG})
ELSE(DEBUG_LIBTCMALLOC)
message(STATUS "Link libtcmalloc_minimal")
SET(MALLOC_LIBRARIES tcmalloc_minimal_internal)
ENDIF($ENV{DEBUG_LIBTCMALLOC})
ENDIF($ENV{DISABLE_LIBTCMALLOC})
ENDIF(DEBUG_LIBTCMALLOC)
ENDIF(DISABLE_LIBTCMALLOC)
if (APPLE)
SET(RT_LIBRARIES "apple_rt")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册