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