1*9c6d1c50SAntonio Nino Diaz# 2*9c6d1c50SAntonio Nino Diaz# Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. 3*9c6d1c50SAntonio Nino Diaz# 4*9c6d1c50SAntonio Nino Diaz# SPDX-License-Identifier: BSD-3-Clause 5*9c6d1c50SAntonio Nino Diaz# 6*9c6d1c50SAntonio Nino Diaz 7*9c6d1c50SAntonio Nino Diaz# Enable backtrace by default in DEBUG AArch64 builds 8*9c6d1c50SAntonio Nino Diazifeq (${ARCH},aarch32) 9*9c6d1c50SAntonio Nino Diaz ENABLE_BACKTRACE := 0 10*9c6d1c50SAntonio Nino Diazelse 11*9c6d1c50SAntonio Nino Diaz ENABLE_BACKTRACE := ${DEBUG} 12*9c6d1c50SAntonio Nino Diazendif 13*9c6d1c50SAntonio Nino Diaz 14*9c6d1c50SAntonio Nino Diazifeq (${ENABLE_BACKTRACE},1) 15*9c6d1c50SAntonio Nino Diaz # Force the compiler to include the frame pointer 16*9c6d1c50SAntonio Nino Diaz TF_CFLAGS += -fno-omit-frame-pointer 17*9c6d1c50SAntonio Nino Diaz 18*9c6d1c50SAntonio Nino Diaz BL_COMMON_SOURCES += common/backtrace/backtrace.c 19*9c6d1c50SAntonio Nino Diazendif 20*9c6d1c50SAntonio Nino Diaz 21*9c6d1c50SAntonio Nino Diazifeq (${ARCH},aarch32) 22*9c6d1c50SAntonio Nino Diaz ifeq (${ENABLE_BACKTRACE},1) 23*9c6d1c50SAntonio Nino Diaz ifneq (${AARCH32_INSTRUCTION_SET},A32) 24*9c6d1c50SAntonio Nino Diaz $(error Error: AARCH32_INSTRUCTION_SET=A32 is needed \ 25*9c6d1c50SAntonio Nino Diaz for ENABLE_BACKTRACE when compiling for AArch32.) 26*9c6d1c50SAntonio Nino Diaz endif 27*9c6d1c50SAntonio Nino Diaz endif 28*9c6d1c50SAntonio Nino Diazendif 29*9c6d1c50SAntonio Nino Diaz 30*9c6d1c50SAntonio Nino Diaz$(eval $(call assert_boolean,ENABLE_BACKTRACE)) 31*9c6d1c50SAntonio Nino Diaz$(eval $(call add_define,ENABLE_BACKTRACE)) 32