Commit 313094d7 authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Peter Korsgaard
Browse files

toolchain-external: add new Microblaze toolchains



The existing Microblaze toolchains that we have have the annoying
property of being based on a very old glibc version: 2.3.6. Xilinx
provides newer toolchains with glibc 2.14, generated by Crosstool-NG,
but they are only available as part of a huge Git repository that
contains the gcc, Linux, binutils, glibc sources unpacked (4.4 GB
total), which makes is very unpractical.

I contacted the Xilinx person who did those toolchains, but they
apparently didn't intend to change that anytime soon.

So, we have created a tarball for those toolchains, adding a
README.txt file in the tarball that points back to the original
location that contains the source code for them. Those tarballs are
hosted on sources.buildroot.net.

This commit then adds support for those two new external toolchains,
one for little endian Microblaze, another one for big endian
Microblaze.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent fe1504bb
Loading
Loading
Loading
Loading
+26 −0
Original line number Diff line number Diff line
@@ -631,6 +631,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2011R1
	  Toolchain for the Blackfin architecture, from
	  http://blackfin.uclinux.org.

config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_14_3
	bool "Xilinx Little Endian Microblaze GNU Tools"
	depends on BR2_microblazeel
	depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_TOOLCHAIN_HAS_NATIVE_RPC
	select BR2_HOSTARCH_NEEDS_IA32_LIBS
	help
	  Toolchain for the Microblaze architecture, from
	  http://git.xilinx.com/?p=microblaze-gnu.git;a=tree;f=binaries. It
	  uses gcc 4.6.2, binutils 2.21.53, glibc 2.14 and gdb 7.4.50.

config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_V2
	bool "Xilinx Little Endian Microblaze GNU Tools"
	depends on BR2_microblazeel
@@ -641,6 +653,18 @@ config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_V2
	  Toolchain for the Microblaze architecture, from
	  http://wiki.xilinx.com/mb-gnu-tools

config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_14_3
	bool "Xilinx Big Endian Microblaze GNU Tools"
	depends on BR2_microblaze
	depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_TOOLCHAIN_HAS_NATIVE_RPC
	select BR2_HOSTARCH_NEEDS_IA32_LIBS
	help
	  Toolchain for the Microblaze architecture, from
	  http://git.xilinx.com/?p=microblaze-gnu.git;a=tree;f=binaries. It
	  uses gcc 4.6.2, binutils 2.21.53, glibc 2.14 and gdb 7.4.50.

config BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_V2
	bool "Xilinx Big Endian Microblaze GNU Tools"
	depends on BR2_microblazebe
@@ -743,7 +767,9 @@ config BR2_TOOLCHAIN_EXTERNAL_PREFIX
	default "aarch64-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_12_11
	default "aarch64-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_12_12
	default "aarch64-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_13_01
	default "microblazeel-unknown-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_14_3
	default "microblazeel-unknown-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_V2
	default "microblaze-unknown-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_14_3
	default "microblaze-unknown-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_V2
	default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201109
	default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201203
+6 −0
Original line number Diff line number Diff line
@@ -258,9 +258,15 @@ TOOLCHAIN_EXTERNAL_SOURCE_1 = blackfin-toolchain-2012R2-RC2.i386.tar.bz2
TOOLCHAIN_EXTERNAL_SITE_2   = http://blackfin.uclinux.org/gf/download/frsrelease/588/10147/
TOOLCHAIN_EXTERNAL_SOURCE_2 = blackfin-toolchain-uclibc-full-2012R2-RC2.i386.tar.bz2
TOOLCHAIN_EXTERNAL_SOURCE   = $(TOOLCHAIN_EXTERNAL_SOURCE_1) $(TOOLCHAIN_EXTERNAL_SOURCE_2)
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_14_3),y)
TOOLCHAIN_EXTERNAL_SITE=http://sources.buildroot.net/
TOOLCHAIN_EXTERNAL_SOURCE=lin32-microblazeel-unknown-linux-gnu_14.3_early.tar.xz
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEEL_V2),y)
TOOLCHAIN_EXTERNAL_SITE=http://git.xilinx.com/?p=xldk/microblaze_v2.0_le.git;a=blob;h=d7b493c5dbcc24ba9cc3be2e4c14d6d9701e6805;hb=00163583b771bb4e937632765dd0c5516b3e31c4;f=
TOOLCHAIN_EXTERNAL_SOURCE=microblazeel-unknown-linux-gnu.tgz
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_14_3),y)
TOOLCHAIN_EXTERNAL_SITE=http://sources.buildroot.net/
TOOLCHAIN_EXTERNAL_SOURCE=lin32-microblaze-unknown-linux-gnu_14.3_early.tar.xz
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_XILINX_MICROBLAZEBE_V2),y)
TOOLCHAIN_EXTERNAL_SITE=http://git.xilinx.com/?p=xldk/microblaze_v2.0.git;a=blob;h=71e031ae990e063a5718f90d30cf97ad85e2f565;hb=569081301f0f1d8d3b24335a364e8ff1774190d4;f=
TOOLCHAIN_EXTERNAL_SOURCE=microblaze-unknown-linux-gnu.tgz