summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/config/Config.in.binutils8
-rw-r--r--toolchain/binutils/Makefile.inc7
-rw-r--r--toolchain/binutils/patches/2.24/bfin.patch13
-rw-r--r--toolchain/binutils/patches/2.25.1/bfin.patch13
-rw-r--r--toolchain/elf2flt/Makefile3
5 files changed, 42 insertions, 2 deletions
diff --git a/target/config/Config.in.binutils b/target/config/Config.in.binutils
index a71e02b05..6c150c0a6 100644
--- a/target/config/Config.in.binutils
+++ b/target/config/Config.in.binutils
@@ -20,6 +20,12 @@ config ADK_TOOLCHAIN_BINUTILS_GIT
depends on !ADK_TARGET_ARCH_CRIS
depends on !ADK_TARGET_ARCH_NDS32
+config ADK_TOOLCHAIN_BINUTILS_2_27
+ bool "2.27"
+ depends on !ADK_TARGET_ARCH_ARC
+ depends on !ADK_TARGET_ARCH_AVR32
+ depends on !ADK_TARGET_ARCH_NDS32
+
config ADK_TOOLCHAIN_BINUTILS_2_26_1
bool "2.26.1"
depends on !ADK_TARGET_ARCH_ARC
@@ -28,7 +34,6 @@ config ADK_TOOLCHAIN_BINUTILS_2_26_1
config ADK_TOOLCHAIN_BINUTILS_2_25_1
bool "2.25.1"
- depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_H8300
@@ -38,7 +43,6 @@ config ADK_TOOLCHAIN_BINUTILS_2_25_1
config ADK_TOOLCHAIN_BINUTILS_2_24
bool "2.24"
- depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_CRIS
diff --git a/toolchain/binutils/Makefile.inc b/toolchain/binutils/Makefile.inc
index bd173e716..ec2003f52 100644
--- a/toolchain/binutils/Makefile.inc
+++ b/toolchain/binutils/Makefile.inc
@@ -2,6 +2,13 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= binutils
+ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_27),y)
+PKG_VERSION:= 2.27
+PKG_RELEASE:= 1
+PKG_HASH:= 26253bf0f360ceeba1d9ab6965c57c6a48a01a8343382130d1ed47c468a3094f
+PKG_SITES:= ${MASTER_SITE_GNU:=binutils/}
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+endif
ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_26_1),y)
PKG_VERSION:= 2.26.1
PKG_RELEASE:= 1
diff --git a/toolchain/binutils/patches/2.24/bfin.patch b/toolchain/binutils/patches/2.24/bfin.patch
new file mode 100644
index 000000000..1f287518a
--- /dev/null
+++ b/toolchain/binutils/patches/2.24/bfin.patch
@@ -0,0 +1,13 @@
+diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c
+index 7cc8b6d..12f0add 100644
+--- a/bfd/elf32-bfin.c
++++ b/bfd/elf32-bfin.c
+@@ -4457,7 +4457,7 @@ elf32_bfinfdpic_finish_dynamic_sections (bfd *output_bfd,
+ if (bfinfdpic_got_section (info))
+ {
+ BFD_ASSERT (bfinfdpic_gotrel_section (info)->size
+- == (bfinfdpic_gotrel_section (info)->reloc_count
++ >= (bfinfdpic_gotrel_section (info)->reloc_count
+ * sizeof (Elf32_External_Rel)));
+
+ if (bfinfdpic_gotfixup_section (info))
diff --git a/toolchain/binutils/patches/2.25.1/bfin.patch b/toolchain/binutils/patches/2.25.1/bfin.patch
new file mode 100644
index 000000000..1f287518a
--- /dev/null
+++ b/toolchain/binutils/patches/2.25.1/bfin.patch
@@ -0,0 +1,13 @@
+diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c
+index 7cc8b6d..12f0add 100644
+--- a/bfd/elf32-bfin.c
++++ b/bfd/elf32-bfin.c
+@@ -4457,7 +4457,7 @@ elf32_bfinfdpic_finish_dynamic_sections (bfd *output_bfd,
+ if (bfinfdpic_got_section (info))
+ {
+ BFD_ASSERT (bfinfdpic_gotrel_section (info)->size
+- == (bfinfdpic_gotrel_section (info)->reloc_count
++ >= (bfinfdpic_gotrel_section (info)->reloc_count
+ * sizeof (Elf32_External_Rel)));
+
+ if (bfinfdpic_gotfixup_section (info))
diff --git a/toolchain/elf2flt/Makefile b/toolchain/elf2flt/Makefile
index bde4b335e..b0daa414a 100644
--- a/toolchain/elf2flt/Makefile
+++ b/toolchain/elf2flt/Makefile
@@ -18,6 +18,9 @@ endif
ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_26_1),y)
BINUTILS_VERSION:= 2.26.1
endif
+ifeq ($(ADK_TOOLCHAIN_BINUTILS_2_27),y)
+BINUTILS_VERSION:= 2.27
+endif
$(WRKBUILD)/.configured:
(cd $(WRKBUILD); \