1# © 2022 Qualcomm Innovation Center, Inc. All rights reserved. 2# 3# SPDX-License-Identifier: BSD-3-Clause 4 5CC=clang 6 7INCLUDE=-I../../../interfaces/gpt/include 8INCLUDE+=-I../../../../build/qemu/unittests-qemu/debug/include 9INCLUDE+=-I../../../../build/qemu/unittests-qemu/debug/events/include 10INCLUDE+=-I../../../../build/qemu/unittests-qemu/debug/events/gpt/include 11INCLUDE+=-I../../../../build/qemu/unittests-qemu/debug/objects/include 12INCLUDE+=-I../../../interfaces/cpulocal/include 13INCLUDE+=-I../../../interfaces/log/include 14INCLUDE+=-I../../../interfaces/object/include 15INCLUDE+=-I../../../interfaces/partition/include 16INCLUDE+=-I../../../interfaces/preempt/include 17INCLUDE+=-I../../../interfaces/rcu/include 18INCLUDE+=-I../../../interfaces/trace/include 19INCLUDE+=-I../../../interfaces/util/include 20INCLUDE+=-I../../../misc/log_standard/include 21INCLUDE+=-I../../../arch/armv8/include 22INCLUDE+=-imacros ../../../interfaces/util/include/attributes.h 23INCLUDE+=-imacros ../../../core/spinlock_ticket/include/spinlock_attrs.h 24INCLUDE+=-imacros ../../../core/preempt/include/preempt_attrs.h 25INCLUDE+=-imacros ../../../interfaces/rcu/include/rcu_attrs.h 26 27DEF=-DHYP_STANDALONE_TEST 28DEF+=-DUNIT_TESTS 29 30CFLAGS+=-m64 -mcx16 -std=gnu18 -O1 -g 31CFLAGS+=-Wall -Werror -Wno-gcc-compat -Wno-gnu-alignof-expression 32CFLAGS+=-ffunction-sections -fdata-sections 33CFLAGS+=-fsanitize=address -fno-omit-frame-pointer 34#CFLAGS+=--coverage 35CFLAGS+=$(INCLUDE) 36CFLAGS+=$(DEF) 37 38LDFLAGS+=-Wl,--gc-sections 39 40SRC=../src/gpt.c ../src/gpt_tests.c host_tests.c 41SRC+=../../../core/util/src/bitmap.c 42SRC+=../../../misc/log_standard/src/string_util.c 43SRC+=../../../../build/qemu/unittests-qemu/debug/hyp/core/base/accessors.c 44SRC+=../../../../build/qemu/unittests-qemu/debug/hyp/core/base/hypresult.c 45 46OBJ=$(patsubst %.c,%.o,$(SRC)) 47 48TARGET=gpt_tests 49 50%.o: %.c 51 $(CC) $(CFLAGS) -c $< -o $@ 52 53$(TARGET): $(OBJ) 54 $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ) -o $@ 55 56default: $(TARGET) 57 58clean: 59 rm -f $(TARGET) $(OBJ) 60