From ccb9aa7f2db7f5e867c8025d7da00cf147222854 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 17 May 2022 09:53:25 +0200 Subject: Handle backtrace()/libexecinfo for OpenBSD This functionality is available as built-in from OpenBSD 7.0. --- libbutl/backtrace.cxx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libbutl/backtrace.cxx') diff --git a/libbutl/backtrace.cxx b/libbutl/backtrace.cxx index c0cf472..347e231 100644 --- a/libbutl/backtrace.cxx +++ b/libbutl/backtrace.cxx @@ -7,7 +7,8 @@ // complications of the build scripts/makefiles. // // With glibc linking with -rdynamic gives (non-static) function names. -// FreeBSD/NetBSD requires explicitly linking -lexecinfo. +// FreeBSD/NetBSD requires explicitly linking -lexecinfo. OpenBSD only has +// this functionality built-in from 7.0 and requires -lexecinfo. // // Note that some libc implementation on Linux (most notably, musl), don't // support this, at least not out of the box. @@ -18,6 +19,11 @@ defined(__FreeBSD__) || \ defined(__NetBSD__) # define LIBBUTL_BACKTRACE +# elif defined (__OpenBSD__) +# include // OpenBSD (yyyymm) +# if OpenBSD >= 202110 // 7.0 was released in October 2021. +# define LIBBUTL_BACKTRACE +# endif # endif #else # if defined(__GLIBC__) || \ -- cgit v1.1