1# Copyright (c) 2020, Google, Inc. All rights reserved
2#
3# Permission is hereby granted, free of charge, to any person obtaining
4# a copy of this software and associated documentation files
5# (the "Software"), to deal in the Software without restriction,
6# including without limitation the rights to use, copy, modify, merge,
7# publish, distribute, sublicense, and/or sell copies of the Software,
8# and to permit persons to whom the Software is furnished to do so,
9# subject to the following conditions:
10#
11# The above copyright notice and this permission notice shall be
12# included in all copies or substantial portions of the Software.
13#
14# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
22LOCAL_DIR := $(GET_LOCAL_DIR)
23
24LIB_BACKTRACE_ARCHS := \
25	arm \
26	arm64 \
27
28LIB_BACKTRACE_ARCH_SUPPORTED ?= \
29	$(if $(filter $(LIB_BACKTRACE_ARCHS),$(ARCH)),true,false)
30
31LIB_BACKTRACE_ENABLE ?= $(LIB_BACKTRACE_ARCH_SUPPORTED)
32
33ifeq (true,$(call TOBOOL,$(LIB_BACKTRACE_ENABLE)))
34MODULE := $(LOCAL_DIR)
35
36MODULE_DEPS := \
37	trusty/kernel/lib/libc-ext \
38	trusty/kernel/lib/trusty \
39
40MODULE_SRCS := \
41	$(LOCAL_DIR)/backtrace.c \
42	$(LOCAL_DIR)/symbolize.c \
43
44GLOBAL_DEFINES += LIB_BACKTRACE_ENABLE=1
45
46include $(LOCAL_DIR)/arch/$(ARCH)/rules.mk
47
48include make/module.mk
49else
50GLOBAL_INCLUDES += $(LOCAL_DIR)/include
51endif
52