1# 2# arm64 makefile 3# 4# Authors: Andrew Jones <drjones@redhat.com> 5# 6bits = 64 7ldarch = elf64-littleaarch64 8 9arch_LDFLAGS = -pie -n 10CFLAGS += -mstrict-align 11 12mno_outline_atomics := $(call cc-option, -mno-outline-atomics, "") 13CFLAGS += $(mno_outline_atomics) 14 15define arch_elf_check = 16 $(if $(shell ! $(OBJDUMP) -R $(1) >&/dev/null && echo "nok"), 17 $(error $(shell $(OBJDUMP) -R $(1) 2>&1))) 18 $(if $(shell $(OBJDUMP) -R $(1) | grep R_ | grep -v R_AARCH64_RELATIVE), 19 $(error $(1) has unsupported reloc types)) 20endef 21 22cstart.o = $(TEST_DIR)/cstart64.o 23cflatobjs += lib/arm64/processor.o 24cflatobjs += lib/arm64/spinlock.o 25cflatobjs += lib/arm64/gic-v3-its.o lib/arm64/gic-v3-its-cmd.o 26 27OBJDIRS += lib/arm64 28 29# arm64 specific tests 30tests = $(TEST_DIR)/timer.flat 31tests += $(TEST_DIR)/micro-bench.flat 32tests += $(TEST_DIR)/cache.flat 33 34include $(SRCDIR)/$(TEST_DIR)/Makefile.common 35 36arch_clean: arm_clean 37 $(RM) lib/arm64/.*.d 38