xref: /rk3399_ARM-atf/common/backtrace/backtrace.mk (revision 7e8b7096d12cb72f6ee5c24804d4da81d0595dc9)
19c6d1c50SAntonio Nino Diaz#
2*885ed9e0SBoyan Karatotev# Copyright (c) 2018-2025, Arm Limited and Contributors. All rights reserved.
39c6d1c50SAntonio Nino Diaz#
49c6d1c50SAntonio Nino Diaz# SPDX-License-Identifier: BSD-3-Clause
59c6d1c50SAntonio Nino Diaz#
69c6d1c50SAntonio Nino Diaz
79c6d1c50SAntonio Nino Diaz# Enable backtrace by default in DEBUG AArch64 builds
89c6d1c50SAntonio Nino Diazifeq (${ARCH},aarch32)
99c6d1c50SAntonio Nino Diaz        ENABLE_BACKTRACE 	:=	0
109c6d1c50SAntonio Nino Diazelse
119c6d1c50SAntonio Nino Diaz        ENABLE_BACKTRACE 	:=	${DEBUG}
129c6d1c50SAntonio Nino Diazendif
139c6d1c50SAntonio Nino Diaz
149c6d1c50SAntonio Nino Diazifeq (${ENABLE_BACKTRACE},1)
159c6d1c50SAntonio Nino Diaz        # Force the compiler to include the frame pointer
16*885ed9e0SBoyan Karatotev        cflags-common		+=	-fno-omit-frame-pointer
179c6d1c50SAntonio Nino Diaz
189c6d1c50SAntonio Nino Diaz        BL_COMMON_SOURCES	+=	common/backtrace/backtrace.c
199c6d1c50SAntonio Nino Diazendif
209c6d1c50SAntonio Nino Diaz
219c6d1c50SAntonio Nino Diazifeq (${ARCH},aarch32)
229c6d1c50SAntonio Nino Diaz        ifeq (${ENABLE_BACKTRACE},1)
239c6d1c50SAntonio Nino Diaz                ifneq (${AARCH32_INSTRUCTION_SET},A32)
249c6d1c50SAntonio Nino Diaz                        $(error Error: AARCH32_INSTRUCTION_SET=A32 is needed \
259c6d1c50SAntonio Nino Diaz                        for ENABLE_BACKTRACE when compiling for AArch32.)
269c6d1c50SAntonio Nino Diaz                endif
279c6d1c50SAntonio Nino Diaz        endif
289c6d1c50SAntonio Nino Diazendif
299c6d1c50SAntonio Nino Diaz
309c6d1c50SAntonio Nino Diaz$(eval $(call assert_boolean,ENABLE_BACKTRACE))
319c6d1c50SAntonio Nino Diaz$(eval $(call add_define,ENABLE_BACKTRACE))
32