Add -fasynchronous-unwind-tables compiler flag for all objects, to improve backtrace functionality, getting full backtrace whatever functions are in the call stack.
Signed-off-by: Filippo Arcidiacono <[email protected]> Signed-off-by: Carmelo Amoroso <[email protected]> --- Rules.mak | 5 +++++ libc/signal/Makefile.in | 4 ---- libc/stdlib/Makefile.in | 4 ---- .../sysdeps/unix/sysv/linux/Makefile.commonarch | 4 ---- 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/Rules.mak b/Rules.mak index 792b794..1cf7adc 100644 --- a/Rules.mak +++ b/Rules.mak @@ -644,6 +644,11 @@ ifneq ($(strip $(UCLIBC_EXTRA_CFLAGS)),"") CFLAGS += $(call qstrip,$(UCLIBC_EXTRA_CFLAGS)) endif +# Needed to get full backtrace +ifeq ($(UCLIBC_HAS_BACKTRACE),y) +CFLAGS += -fasynchronous-unwind-tables +endif + # We need this to be checked within libc-symbols.h ifneq ($(HAVE_SHARED),y) CFLAGS += -DSTATIC diff --git a/libc/signal/Makefile.in b/libc/signal/Makefile.in index 6c355b5..ebc4619 100644 --- a/libc/signal/Makefile.in +++ b/libc/signal/Makefile.in @@ -22,10 +22,6 @@ ifneq ($(strip $(ARCH_OBJS-y)),) CSRC-y := $(filter-out $(notdir $(ARCH_OBJS-y:.o=.c)),$(CSRC-y)) endif -ifneq ($(UCLIBC_HAS_BACKTRACE),) -CFLAGS-raise.c = -fasynchronous-unwind-tables -endif - SIGNAL_DIR := $(top_srcdir)libc/signal SIGNAL_OUT := $(top_builddir)libc/signal diff --git a/libc/stdlib/Makefile.in b/libc/stdlib/Makefile.in index 880de78..b737708 100644 --- a/libc/stdlib/Makefile.in +++ b/libc/stdlib/Makefile.in @@ -28,10 +28,6 @@ CSRC-$(if $(findstring yy,$(UCLIBC_HAS_FLOATS)$(UCLIBC_SUSV3_LEGACY)),y) += \ gcvt.c CSRC-$(UCLIBC_SUSV3_LEGACY) += mktemp.c -ifneq ($(UCLIBC_HAS_BACKTRACE),) -CFLAGS-abort.c = -fasynchronous-unwind-tables -endif - # multi source stdlib.c CSRC-y += abs.c labs.c atoi.c atol.c strtol.c strtoul.c _stdlib_strto_l.c \ qsort.c qsort_r.c bsearch.c rpmatch.c \ diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch b/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch index 3372214..2eeb516 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/Makefile.commonarch @@ -130,10 +130,6 @@ CFLAGS-timer_gettime.c = -I$(top_srcdir)librt -DIS_IN_librt CFLAGS-timer_routines.c = -I$(top_srcdir)librt -DIS_IN_librt CFLAGS-timer_settime.c = -I$(top_srcdir)librt -DIS_IN_librt -ifneq ($(UCLIBC_HAS_BACKTRACE),) -CFLAGS-raise.c = -fasynchronous-unwind-tables -endif - CFLAGS-linux = -DNOT_IN_libc -DIS_IN_libpthread $(SSP_ALL_CFLAGS) CFLAGS-OMIT-libc_pthread_init.c = -DNOT_IN_libc -DIS_IN_libpthread -- 1.7.7.6 _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
