config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
	bool "Codescape IMG GNU Linux Toolchain 2016.05"
	depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5
	depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
	depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT)
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
	select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
	select BR2_TOOLCHAIN_HAS_FORTRAN
	help
	  Codescape IMG GNU Linux Toolchain 2016.05 for the MIPS
	  architecture, from Imagination Technologies. It uses gcc
	  4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
	  headers 4.7. It has support for the following variants:
	    - MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
	      Select 'MIPS (big endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Disable 'Use soft-float'
	    - MIPS32r6 - Big-Endian, Soft-Float, 2008 NaN, o32 ABI
	      Select 'MIPS (big endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Enable 'Use soft-float'
	    - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI
	      Select 'MIPS (little endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Disable 'Use soft-float'
	    - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI
	      Select 'MIPS (little endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Enable 'Use soft-float'
	    - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI,
	      microMIPS
	      Select 'MIPS (little endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Disable 'Use soft-float'
	      Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
	    - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI,
	      microMIPS
	      Select 'MIPS (little endian)' Target Architecture
	      Select 'mips 32r6' Target Architecture Variant
	      Enable 'Use soft-float'
	      Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
	    - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n32 ABI
	      Select 'MIPS64 (big endian)' Target Architecture
	      Select 'mips 64r6' Target Architecture Variant
	      Select 'n32' Target ABI
	      Disable 'Use soft-float'
	    - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n32 ABI
	      Select 'MIPS64 (little endian)' Target Architecture
	      Select 'mips 64r6' Target Architecture Variant
	      Select 'n32' Target ABI
	      Disable 'Use soft-float'
	    - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n64 ABI
	      Select 'MIPS64 (big endian)' Target Architecture
	      Select 'mips 64r6' Target Architecture Variant
	      Select 'n64' Target ABI
	      Disable 'Use soft-float'
	    - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n64 ABI
	      Select 'MIPS64 (little endian)' Target Architecture
	      Select 'mips 64r6' Target Architecture Variant
	      Select 'n64' Target ABI
	      Disable 'Use soft-float'
