update buildroot to 2017.02.11
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
From dedce8765d203c1c162a57e6259375e0b457173f Mon Sep 17 00:00:00 2001
|
||||
From: Greg Ungerer <gerg@linux-m68k.org>
|
||||
Date: Fri, 19 Aug 2016 23:49:51 +1000
|
||||
Subject: [PATCH] elf2flt: fix relocation support for R_ARM_TARGET types
|
||||
|
||||
R_ARM_TARGET1 (and I think R_ARM_TARGET2) relocation types should be
|
||||
treated in the same way as R_ARM_ABS32. Fix them to write out the addend
|
||||
to the flat binary in network byte order.
|
||||
|
||||
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
|
||||
Tested-by: Waldemar Brodkorb <wbx@openadk.org>
|
||||
|
||||
---
|
||||
elf2flt.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/elf2flt.c b/elf2flt.c
|
||||
index 5ae7dd9..3f31569 100644
|
||||
--- a/elf2flt.c
|
||||
+++ b/elf2flt.c
|
||||
@@ -1505,7 +1505,9 @@ DIS29_RELOCATION:
|
||||
(((*p)->howto->type != R_ARM_PC24) &&
|
||||
((*p)->howto->type != R_ARM_PLT32)))
|
||||
tmp.c[i3] = (hl >> 24) & 0xff;
|
||||
- if ((*p)->howto->type == R_ARM_ABS32)
|
||||
+ if (((*p)->howto->type == R_ARM_ABS32) ||
|
||||
+ ((*p)->howto->type == R_ARM_TARGET1) ||
|
||||
+ ((*p)->howto->type == R_ARM_TARGET2))
|
||||
*(uint32_t *)r_mem = htonl(hl);
|
||||
else
|
||||
*(uint32_t *)r_mem = tmp.l;
|
||||
--
|
||||
1.9.1
|
||||
|
||||
11
bsp/buildroot-2017.02.11/package/elf2flt/Config.in.host
Normal file
11
bsp/buildroot-2017.02.11/package/elf2flt/Config.in.host
Normal file
@@ -0,0 +1,11 @@
|
||||
config BR2_PACKAGE_HOST_ELF2FLT
|
||||
bool "Enable elf2flt support?"
|
||||
depends on BR2_arm || BR2_sh || BR2_sparc || BR2_xtensa
|
||||
depends on !BR2_USE_MMU
|
||||
help
|
||||
uCLinux uses a Binary Flat format commonly known as BFLT. It
|
||||
is a relatively simple and lightweight executable format
|
||||
based on the original a.out format.
|
||||
|
||||
This option compiles the required tools and makes the required
|
||||
modifications on your toolchain (linker).
|
||||
2
bsp/buildroot-2017.02.11/package/elf2flt/elf2flt.hash
Normal file
2
bsp/buildroot-2017.02.11/package/elf2flt/elf2flt.hash
Normal file
@@ -0,0 +1,2 @@
|
||||
# Locally calculated
|
||||
sha256 6a45a787a08da64f0f3036d3ae1865bc13f8f40d13f07511a2bf1b736acc4808 elf2flt-9dbc458c6122c495bbdec8dc975a15c9d39e5ff2.tar.gz
|
||||
32
bsp/buildroot-2017.02.11/package/elf2flt/elf2flt.mk
Normal file
32
bsp/buildroot-2017.02.11/package/elf2flt/elf2flt.mk
Normal file
@@ -0,0 +1,32 @@
|
||||
################################################################################
|
||||
#
|
||||
# elf2flt
|
||||
#
|
||||
################################################################################
|
||||
|
||||
ELF2FLT_VERSION = 9dbc458c6122c495bbdec8dc975a15c9d39e5ff2
|
||||
ELF2FLT_SITE = $(call github,uclinux-dev,elf2flt,$(ELF2FLT_VERSION))
|
||||
ELF2FLT_LICENSE = GPLv2+
|
||||
ELF2FLT_LICENSE_FILES = LICENSE.TXT
|
||||
|
||||
HOST_ELF2FLT_DEPENDENCIES = host-binutils host-zlib
|
||||
|
||||
# It is not exactly a host variant, but more a cross variant, which is
|
||||
# why we pass a special --target option.
|
||||
HOST_ELF2FLT_CONF_OPTS = \
|
||||
--with-bfd-include-dir=$(HOST_BINUTILS_DIR)/bfd/ \
|
||||
--with-binutils-include-dir=$(HOST_BINUTILS_DIR)/include/ \
|
||||
--with-libbfd=$(HOST_BINUTILS_DIR)/bfd/libbfd.a \
|
||||
--with-libiberty=$(HOST_BINUTILS_DIR)/libiberty/libiberty.a \
|
||||
--target=$(GNU_TARGET_NAME) \
|
||||
--disable-werror
|
||||
|
||||
HOST_ELF2FLT_LIBS = -lz
|
||||
|
||||
ifeq ($(BR2_GCC_ENABLE_LTO),y)
|
||||
HOST_ELF2FLT_LIBS += -ldl
|
||||
endif
|
||||
|
||||
HOST_ELF2FLT_CONF_ENV = LIBS="$(HOST_ELF2FLT_LIBS)"
|
||||
|
||||
$(eval $(host-autotools-package))
|
||||
Reference in New Issue
Block a user