1*4882a593Smuzhiyunconfig BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
2*4882a593Smuzhiyun	bool "Sourcery CodeBench MIPS 2016.05"
3*4882a593Smuzhiyun	depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
4*4882a593Smuzhiyun	depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2
5*4882a593Smuzhiyun	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6
6*4882a593Smuzhiyun	# Unsupported MIPS cores
7*4882a593Smuzhiyun	depends on !BR2_mips_interaptiv
8*4882a593Smuzhiyun	depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
9*4882a593Smuzhiyun	depends on !BR2_MIPS_NABI32
10*4882a593Smuzhiyun	depends on !BR2_STATIC_LIBS
11*4882a593Smuzhiyun	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
12*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_SSP
13*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_NATIVE_RPC
14*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_OPENMP
15*4882a593Smuzhiyun	select BR2_INSTALL_LIBSTDCPP
16*4882a593Smuzhiyun	select BR2_HOSTARCH_NEEDS_IA32_LIBS
17*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
18*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_5
19*4882a593Smuzhiyun	help
20*4882a593Smuzhiyun	  Sourcery CodeBench toolchain for the MIPS architecture, from
21*4882a593Smuzhiyun	  Mentor Graphics. It uses gcc 5.3, binutils 2.25.51, glibc
22*4882a593Smuzhiyun	  2.23, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.4.1. It
23*4882a593Smuzhiyun	  has support for the following variants:
24*4882a593Smuzhiyun	    - MIPS32r2 - Big-Endian, 2008 NaN, O32
25*4882a593Smuzhiyun	      Select MIPS (big endian) core
26*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
27*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mnan=2008
28*4882a593Smuzhiyun	    - MIPS32r2 - Big-Endian, O32
29*4882a593Smuzhiyun	      Select MIPS (big endian) core
30*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
31*4882a593Smuzhiyun	    - MIPS32r2 - Big-Endian, O32, MIPS16
32*4882a593Smuzhiyun	      Select MIPS (big endian) core
33*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
34*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mips16
35*4882a593Smuzhiyun	    - MIPS32r2 - Big-Endian, Soft-Float, O32
36*4882a593Smuzhiyun	      Select MIPS (big endian) core
37*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
38*4882a593Smuzhiyun	    - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
39*4882a593Smuzhiyun	      Select MIPS (big endian) core
40*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
41*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mips16
42*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, 2008 NaN, O32
43*4882a593Smuzhiyun	      Select MIPS (little endian) core
44*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
45*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mnan=2008
46*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, O32
47*4882a593Smuzhiyun	      Select MIPS (little endian) core
48*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
49*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, O32, MIPS16
50*4882a593Smuzhiyun	      Select MIPS (little endian) core
51*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
52*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mips16
53*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, Soft-Float, O32
54*4882a593Smuzhiyun	      Select MIPS (little endian) core
55*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
56*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
57*4882a593Smuzhiyun	      Select MIPS (little endian) core
58*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
59*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mips16
60*4882a593Smuzhiyun	    - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
61*4882a593Smuzhiyun	      Select MIPS (little endian) core
62*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
63*4882a593Smuzhiyun	      Set BR2_TARGET_OPTIMIZATION to -mmicromips
64*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
65*4882a593Smuzhiyun	      Not usable in Buildroot yet.
66*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Big-Endian, O32
67*4882a593Smuzhiyun	      Not usable in Buildroot yet.
68*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
69*4882a593Smuzhiyun	      Not usable in Buildroot yet.
70*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
71*4882a593Smuzhiyun	      Not usable in Buildroot yet.
72*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Little-Endian, O32
73*4882a593Smuzhiyun	      Not usable in Buildroot yet.
74*4882a593Smuzhiyun	    - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
75*4882a593Smuzhiyun	      Not usable in Buildroot yet.
76*4882a593Smuzhiyun	    - MIPS64r2 - Big-Endian, N64
77*4882a593Smuzhiyun	      Select MIPS64 (big endian) core
78*4882a593Smuzhiyun	      Select the n64 ABI
79*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
80*4882a593Smuzhiyun	    - MIPS64r2 - Big-Endian, Soft-Float, N64
81*4882a593Smuzhiyun	      Select MIPS64 (big endian) core
82*4882a593Smuzhiyun	      Select the n64 ABI
83*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
84*4882a593Smuzhiyun	    - MIPS64r2 - Little-Endian, N64
85*4882a593Smuzhiyun	      Select MIPS64 (little endian) core
86*4882a593Smuzhiyun	      Select the n64 ABI
87*4882a593Smuzhiyun	      Disable BR2_SOFT_FLOAT
88*4882a593Smuzhiyun	    - MIPS64r2 - Little-Endian, Soft-Float, N64
89*4882a593Smuzhiyun	      Select MIPS64 (little endian) core
90*4882a593Smuzhiyun	      Select the n64 ABI
91*4882a593Smuzhiyun	      Select BR2_SOFT_FLOAT
92*4882a593Smuzhiyun
93*4882a593Smuzhiyuncomment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64"
94*4882a593Smuzhiyun	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6
95*4882a593Smuzhiyun	depends on BR2_MIPS_NABI32
96*4882a593Smuzhiyun	depends on !BR2_STATIC_LIBS
97