summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Wood <scottwood@freescale.com>2013-12-14 11:47:34 +0800
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2014-01-09 16:08:31 +0100
commit54799e4596bf8af33fd4a8dee153be7011c06d8d (patch)
treebb1a50de70e58dbe9b794a574957fbe78f9a6332
parentf4dc714aaa2d86b84724ec01fb848da63aa63666 (diff)
downloadu-boot-imx-54799e4596bf8af33fd4a8dee153be7011c06d8d.zip
u-boot-imx-54799e4596bf8af33fd4a8dee153be7011c06d8d.tar.gz
u-boot-imx-54799e4596bf8af33fd4a8dee153be7011c06d8d.tar.bz2
arm64: Make checkarmreloc accept arm64 relocations
Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: David Feng <fenghua@phytium.com.cn>
-rw-r--r--Makefile14
1 files changed, 9 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index a4c2928..dc5ba04 100644
--- a/Makefile
+++ b/Makefile
@@ -744,12 +744,16 @@ tools: $(VERSION_FILE) $(TIMESTAMP_FILE)
$(MAKE) -C $@ all
endif # config.mk
-# ARM relocations should all be R_ARM_RELATIVE.
+# ARM relocations should all be R_ARM_RELATIVE (32-bit) or
+# R_AARCH64_RELATIVE (64-bit).
checkarmreloc: $(obj)u-boot
- @if test "R_ARM_RELATIVE" != \
- "`$(CROSS_COMPILE)readelf -r $< | cut -d ' ' -f 4 | grep R_ARM | sort -u`"; \
- then echo "$< contains relocations other than \
- R_ARM_RELATIVE"; false; fi
+ @RELOC="`$(CROSS_COMPILE)readelf -r -W $< | cut -d ' ' -f 4 | \
+ grep R_A | sort -u`"; \
+ if test "$$RELOC" != "R_ARM_RELATIVE" -a \
+ "$$RELOC" != "R_AARCH64_RELATIVE"; then \
+ echo "$< contains unexpected relocations: $$RELOC"; \
+ false; \
+ fi
$(VERSION_FILE):
@mkdir -p $(dir $(VERSION_FILE))