blob: e8a38d78be694aeadb0afc773dbd845e80bc762a [file] [log] [blame] [edit]
#
# arm64 makefile
#
# Authors: Andrew Jones <drjones@redhat.com>
#
bits = 64
ldarch = elf64-littleaarch64
arch_LDFLAGS = -pie -n
arch_LDFLAGS += -z notext
CFLAGS += -mstrict-align
mno_outline_atomics := $(call cc-option, -mno-outline-atomics, "")
CFLAGS += $(mno_outline_atomics)
define arch_elf_check =
$(if $(shell ! $(OBJDUMP) -R $(1) >&/dev/null && echo "nok"),
$(error $(shell $(OBJDUMP) -R $(1) 2>&1)))
$(if $(shell $(OBJDUMP) -R $(1) | grep R_ | grep -v R_AARCH64_RELATIVE),
$(error $(1) has unsupported reloc types))
endef
cstart.o = $(TEST_DIR)/cstart64.o
cflatobjs += lib/arm64/processor.o
cflatobjs += lib/arm64/spinlock.o
cflatobjs += lib/arm64/gic-v3-its.o lib/arm64/gic-v3-its-cmd.o
OBJDIRS += lib/arm64
# arm64 specific tests
tests = $(TEST_DIR)/timer.flat
tests += $(TEST_DIR)/micro-bench.flat
tests += $(TEST_DIR)/cache.flat
include $(SRCDIR)/$(TEST_DIR)/Makefile.common
arch_clean: arm_clean
$(RM) lib/arm64/.*.d