summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-02-24 11:41:53 -0500
committerNick Mathewson <nickm@torproject.org>2014-02-24 11:45:03 -0500
commit68ed4878ca97902c8b909d88dd855d71e6647376 (patch)
treecf0fd2d07409311f213919125effad83737a56c4
parente1deb01e5f1a666486690f9e511b3a0af66ed683 (diff)
downloadtor-68ed4878ca97902c8b909d88dd855d71e6647376.tar.gz
tor-68ed4878ca97902c8b909d88dd855d71e6647376.zip
pass our compiler -fasynchronous-unwind-tables by default
This should make more platforms (in particular, ones with compilers where -fomit-frame-pointer is on by default but table generation isn't) support backtrace generation. Thanks to cypherpunks for this one. Fixes bug 11047; bugfix on 0.2.5.2-alpha.
-rw-r--r--changes/bug110479
-rw-r--r--configure.ac7
2 files changed, 16 insertions, 0 deletions
diff --git a/changes/bug11047 b/changes/bug11047
new file mode 100644
index 0000000000..25acd8e36d
--- /dev/null
+++ b/changes/bug11047
@@ -0,0 +1,9 @@
+ o Minor bugfixes:
+
+ - Build using the -fasynchronous-unwind-tables option so that more
+ platforms (in particular, ones like 32-bit Intel where the
+ -fomit-frame-pointer option is on by default and table
+ generation is not) will support generating backtraces. This
+ doesn't yet add Windows support yet; only Linux, OSX, and some BSD
+ are affected. Reported by 'cypherpunks'; fixes bug 11047; bugfix
+ on 0.2.5.2-alpha.
diff --git a/configure.ac b/configure.ac
index 871ca5613c..187fadc3b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -649,6 +649,13 @@ CFLAGS="$saved_CFLAGS"
AC_SUBST(F_OMIT_FRAME_POINTER)
dnl ------------------------------------------------------
+dnl If we are adding -fomit-frame-pointer (or if the compiler's doing it
+dnl for us, as GCC 4.6 and later do at many optimization levels), then
+dnl we should try to add -fasynchronous-unwind-tables so that our backtrace
+dnl code will work.
+TOR_CHECK_CFLAGS(-fasynchronous-unwind-tables)
+
+dnl ------------------------------------------------------
dnl Where do you live, libnatpmp? And how do we call you?
dnl There are no packages for Debian or Redhat as of this patch