summaryrefslogtreecommitdiffstats
path: root/kmtrace/ConfigureChecks.cmake
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2021-09-15 22:18:04 +0200
committerSlávek Banko <slavek.banko@axis.cz>2021-09-15 22:42:00 +0200
commitcf63191672fff12cd57892ba4642ed4f01e9c6a4 (patch)
tree4464031464fe01f04c0f24bbc1181246519e1505 /kmtrace/ConfigureChecks.cmake
parentf4582480b472d7551d8f867bae4c99a96c9d588d (diff)
downloadtdesdk-cf63191672fff12cd57892ba4642ed4f01e9c6a4.tar.gz
tdesdk-cf63191672fff12cd57892ba4642ed4f01e9c6a4.zip
Add a backtrace function and library detection.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'kmtrace/ConfigureChecks.cmake')
-rw-r--r--kmtrace/ConfigureChecks.cmake18
1 files changed, 18 insertions, 0 deletions
diff --git a/kmtrace/ConfigureChecks.cmake b/kmtrace/ConfigureChecks.cmake
new file mode 100644
index 00000000..5c06aac6
--- /dev/null
+++ b/kmtrace/ConfigureChecks.cmake
@@ -0,0 +1,18 @@
+
+##### check if GLIBC >= 2.1 compatible backtrace facility exists
+
+if ( CMAKE_MAJOR_VERSION LESS "3" )
+ check_symbol_exists( backtrace "execinfo.h" HAVE_BACKTRACE )
+ if ( HAVE_BACKTRACE )
+ set ( Backtrace_LIBRARY "" )
+ set ( Backtrace_HEADER "execinfo.h" )
+ endif ()
+else ()
+ find_package( Backtrace )
+ if ( Backtrace_FOUND )
+ set ( HAVE_BACKTRACE 1 CACHE INTERNAL "" )
+ endif ()
+endif ()
+if( NOT HAVE_BACKTRACE )
+ tde_message_fatal( "bactrace function is required but not available on your system")
+endif()