summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-12 07:36:32 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-12 07:36:32 +0000
commit486795d95124c8d2bdaf4ae84a282e3879cb367c (patch)
treefadb55b28cff75206adc97da09765442cc7596de /configure.in
parentb3f491d3cb55b06029edf790ccf26cb6be50e28a (diff)
* configure.in: add -fno-omit-frame-pointer if libexecinfo is used.
At least on FreeBSD ruby will crash on getting C backtrace when it is compiled with other than -O0. * vm_dump.c: enable backtrace on FreeBSD even if with optimizations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38342 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in6
1 files changed, 6 insertions, 0 deletions
diff --git a/configure.in b/configure.in
index ba5273a082..b38869c9fb 100644
--- a/configure.in
+++ b/configure.in
@@ -2378,6 +2378,12 @@ AS_CASE(["$target_cpu-$target_os"],
AC_CHECK_HEADERS([execinfo.h])
if test "x$ac_cv_header_execinfo_h" = xyes; then
AC_CHECK_LIB([execinfo], [backtrace])
+ execinfo_frame_pointer=no
+ RUBY_TRY_CFLAGS(-fno-omit-frame-pointer, [execinfo_frame_pointer=yes])
+ if test "x$execinfo_frame_pointer" = xyes; then
+ optflags="${optflags+$optflags }-fno-omit-frame-pointer"
+ CFLAGS="$CFLAGS -fno-omit-frame-pointer"
+ fi
fi])
AC_CHECK_FUNCS(backtrace)