config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
	bool "Sourcery CodeBench MIPS 2016.05"
	depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
	depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2
	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6
	# Unsupported MIPS cores
	depends on !BR2_mips_interaptiv
	depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
	depends on !BR2_MIPS_NABI32
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_TOOLCHAIN_HAS_SSP
	select BR2_TOOLCHAIN_HAS_NATIVE_RPC
	select BR2_TOOLCHAIN_HAS_OPENMP
	select BR2_INSTALL_LIBSTDCPP
	select BR2_HOSTARCH_NEEDS_IA32_LIBS
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
	select BR2_TOOLCHAIN_GCC_AT_LEAST_5
	help
	  Sourcery CodeBench toolchain for the MIPS architecture, from
	  Mentor Graphics. It uses gcc 5.3, binutils 2.25.51, glibc
	  2.23, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.4.1. It
	  has support for the following variants:
	    - MIPS32r2 - Big-Endian, 2008 NaN, O32
	      Select MIPS (big endian) core
	      Disable BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mnan=2008
	    - MIPS32r2 - Big-Endian, O32
	      Select MIPS (big endian) core
	      Disable BR2_SOFT_FLOAT
	    - MIPS32r2 - Big-Endian, O32, MIPS16
	      Select MIPS (big endian) core
	      Disable BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mips16
	    - MIPS32r2 - Big-Endian, Soft-Float, O32
	      Select MIPS (big endian) core
	      Select BR2_SOFT_FLOAT
	    - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
	      Select MIPS (big endian) core
	      Select BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mips16
	    - MIPS32r2 - Little-Endian, 2008 NaN, O32
	      Select MIPS (little endian) core
	      Disable BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mnan=2008
	    - MIPS32r2 - Little-Endian, O32
	      Select MIPS (little endian) core
	      Disable BR2_SOFT_FLOAT
	    - MIPS32r2 - Little-Endian, O32, MIPS16
	      Select MIPS (little endian) core
	      Disable BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mips16
	    - MIPS32r2 - Little-Endian, Soft-Float, O32
	      Select MIPS (little endian) core
	      Select BR2_SOFT_FLOAT
	    - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
	      Select MIPS (little endian) core
	      Select BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mips16
	    - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
	      Select MIPS (little endian) core
	      Select BR2_SOFT_FLOAT
	      Set BR2_TARGET_OPTIMIZATION to -mmicromips
	    - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
	      Not usable in Buildroot yet.
	    - MIPS32r2 - uClibc, Big-Endian, O32
	      Not usable in Buildroot yet.
	    - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
	      Not usable in Buildroot yet.
	    - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
	      Not usable in Buildroot yet.
	    - MIPS32r2 - uClibc, Little-Endian, O32
	      Not usable in Buildroot yet.
	    - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
	      Not usable in Buildroot yet.
	    - MIPS64r2 - Big-Endian, N64
	      Select MIPS64 (big endian) core
	      Select the n64 ABI
	      Disable BR2_SOFT_FLOAT
	    - MIPS64r2 - Big-Endian, Soft-Float, N64
	      Select MIPS64 (big endian) core
	      Select the n64 ABI
	      Select BR2_SOFT_FLOAT
	    - MIPS64r2 - Little-Endian, N64
	      Select MIPS64 (little endian) core
	      Select the n64 ABI
	      Disable BR2_SOFT_FLOAT
	    - MIPS64r2 - Little-Endian, Soft-Float, N64
	      Select MIPS64 (little endian) core
	      Select the n64 ABI
	      Select BR2_SOFT_FLOAT

comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64"
	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6
	depends on BR2_MIPS_NABI32
