aboutsummaryrefslogtreecommitdiffstats
path: root/roms/u-boot/arch/arc/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'roms/u-boot/arch/arc/Makefile')
-rw-r--r--roms/u-boot/arch/arc/Makefile19
1 files changed, 19 insertions, 0 deletions
diff --git a/roms/u-boot/arch/arc/Makefile b/roms/u-boot/arch/arc/Makefile
new file mode 100644
index 000000000..44568f8cf
--- /dev/null
+++ b/roms/u-boot/arch/arc/Makefile
@@ -0,0 +1,19 @@
+# SPDX-License-Identifier: GPL-2.0+
+
+libs-y += arch/arc/cpu/$(CPU)/
+libs-y += arch/arc/lib/
+
+# MetaWare debugger doesn't support PIE (position-independent executable)
+# so the only way to load U-Boot in MDB is to fake it by:
+# 1. Reset PIE flag in ELF header
+# 2. Strip all debug information from elf
+ifdef CONFIG_SYS_LITTLE_ENDIAN
+ EXEC_TYPE_OFFSET=16
+else
+ EXEC_TYPE_OFFSET=17
+endif
+
+mdbtrick: u-boot
+ $(Q)printf '\x02' | dd of=u-boot bs=1 seek=$(EXEC_TYPE_OFFSET) count=1 \
+ conv=notrunc &> /dev/null
+ $(Q)$(CROSS_COMPILE)strip -g u-boot