Commit f90a1665 authored by Vladislav Vaintroub's avatar Vladislav Vaintroub

use systemtap on linux if installed, for dtrace functionality

parent eca45bf6
......@@ -57,6 +57,13 @@ IF(ENABLE_DTRACE)
${CMAKE_BINARY_DIR}/include/probes_mysql_dtrace.h
${CMAKE_BINARY_DIR}/include/probes_mysql_nodtrace.h
)
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
# Systemtap object
EXECUTE_PROCESS(
COMMAND ${DTRACE} -G -s ${CMAKE_SOURCE_DIR}/include/probes_mysql.d.base
-o ${CMAKE_BINARY_DIR}/probes_mysql.o
)
ENDIF()
ADD_CUSTOM_TARGET(gen_dtrace_header
DEPENDS
${CMAKE_BINARY_DIR}/include/probes_mysql.d
......@@ -66,10 +73,14 @@ IF(ENABLE_DTRACE)
ENDIF()
MACRO (DTRACE_INSTRUMENT target)
MACRO(DTRACE_INSTRUMENT target)
IF(ENABLE_DTRACE)
ADD_DEPENDENCIES(${target} gen_dtrace_header)
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
TARGET_LINK_LIBRARIES(${target} ${CMAKE_BINARY_DIR}/probes_mysql.o)
ENDIF()
# On Solaris, invoke dtrace -G to generate object file and
# link it together with target.
IF(CMAKE_SYSTEM_NAME MATCHES "SunOS")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment