summaryrefslogtreecommitdiff
path: root/cmake/dtrace.cmake
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@montyprogram.com>2012-02-20 22:25:44 +0100
committerVladislav Vaintroub <wlad@montyprogram.com>2012-02-20 22:25:44 +0100
commit150f2385381082af6c7ea1dcad08ecc9f3417b7d (patch)
treeb60344d5109bb5f18c9656ccbbf6f59dbb562bbc /cmake/dtrace.cmake
parent0d0e68da6ae65d17ed415721be3582add187cee7 (diff)
downloadmariadb-git-150f2385381082af6c7ea1dcad08ecc9f3417b7d.tar.gz
Workaround buggy Linux dtrace - it fails on fedora if CC is set to 'ccache gcc'
Diffstat (limited to 'cmake/dtrace.cmake')
-rw-r--r--cmake/dtrace.cmake8
1 files changed, 7 insertions, 1 deletions
diff --git a/cmake/dtrace.cmake b/cmake/dtrace.cmake
index 882ea0de6aa..0e7c71c7f09 100644
--- a/cmake/dtrace.cmake
+++ b/cmake/dtrace.cmake
@@ -34,9 +34,15 @@ MACRO(CHECK_DTRACE)
FIND_PROGRAM(DTRACE dtrace)
MARK_AS_ADVANCED(DTRACE)
+ IF(CMAKE_C_COMPILER MATCHES "ccache" AND CMAKE_SYSTEM_NAME MATCHES "Linux")
+ # dtrace fails on fedora if CC='ccache gcc' is used
+ SET(BUGGY_LINUX_DTRACE 1)
+ ENDIF()
+
# On FreeBSD, dtrace does not handle userland tracing yet
IF(DTRACE AND NOT CMAKE_SYSTEM_NAME MATCHES "FreeBSD"
- AND NOT BUGGY_GCC_NO_DTRACE_MODULES)
+ AND NOT BUGGY_GCC_NO_DTRACE_MODULES
+ AND NOT BUGGY_LINUX_DTRACE)
SET(ENABLE_DTRACE ON CACHE BOOL "Enable dtrace")
ENDIF()
SET(HAVE_DTRACE ${ENABLE_DTRACE})