blob: 8e3f7989cf13abd2e20e29ad68032e94e4f04251 [file] [log] [blame]
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +00001if BR2_TOOLCHAIN_EXTERNAL
"Steven J. Hill"02f71aa2007-02-06 18:19:38 +00002
Thomas Petazzoni6c492d52010-12-13 17:27:39 +01003choice
4 prompt "Toolchain"
5
Thomas Petazzonie89b2622011-05-13 11:38:43 +02006config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201103
7 bool "CodeSourcery ARM 2011.03"
8 depends on BR2_arm
9 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
10 select BR2_INSTALL_LIBSTDCPP
11 help
12 Toolchain for the ARM architecture, from CodeSourcery. It
13 uses gcc 4.5.2, binutils 2.20.51, glibc 2.13 and gdb 7.2.50,
14 kernel headers 2.6.38. It has support for the following
15 variants:
16 - ARMv5TE, little endian, soft-float, glibc
17 - ARMv4T, little endian, soft-float, glibc
18 - ARMv7-A, Thumb 2, little endian, soft-float, glibc
19
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010020config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201009
21 bool "CodeSourcery ARM 2010.09"
22 depends on BR2_arm
23 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +010024 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010025 help
26 Toolchain for the ARM architecture, from CodeSourcery. It
27 uses gcc 4.5.1, binutils 2.20, glibc 2.11 and gdb 7.2.50,
28 kernel headers 2.6.35.2. It has support for the following
29 variants:
30 - ARMv5TE, little endian, soft-float, glibc
31 - ARMv4T, little endian, soft-float, glibc
32 - ARMv7-A, Thumb 2, little endian, soft-float, glibc
33
34config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2010Q1
35 bool "CodeSourcery ARM 2010q1"
36 depends on BR2_arm
37 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +010038 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010039 help
40 Toolchain for the ARM architecture, from CodeSourcery. It
41 uses gcc 4.4.1, binutils 2.19, glibc 2.11, gdb 7.0.50 and
42 kernel headers 2.6.32. It has support for the following
43 variants:
44 - ARMv5T, little endian, soft-float, glibc
45 - ARMv4T, little endian, soft-float, glibc
46 - ARMv7-A, Thumb 2, little endian, soft-float, glibc
47
48config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q1
49 bool "CodeSourcery ARM 2009q1"
50 depends on BR2_arm
51 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +010052 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010053 help
54 Toolchain for the ARM architecture, from CodeSourcery. It
55 uses gcc 4.3.3, binutils 2.19, glibc 2.8 and gdb 6.8 and
56 kernel headers 2.6.30. It has support for the following
57 variants:
58 - ARMv5T, little endian, soft-float, glibc
59 - ARMv4T, little endian, soft-float, glibc
60 - ARMv7-A, Thumb 2, little endian, soft-float, glibc
61
62config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS44
63 bool "CodeSourcery MIPS 4.4"
64 depends on BR2_mips || BR2_mipsel
65 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +010066 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010067 help
68 Toolchain for the MIPS architecture, from CodeSourcery. It
69 uses gcc 4.4.1, binutils 2.19, glibc 2.11, uClibc 0.9.30 and
70 gdb 7.0, kernel headers 2.6.32. It has support for the
71 following variants:
72 - MIPS32 O32 big endian glibc
73 - MIPS32 O32 little endian glibc
74 - MIPS32 big endian soft float glibc
75 - MIPS32 little endian soft float glibc
76 - MIPS32 big endian microMIPS glibc
77 - MIPS32 little endian microMIPS glibc
78 - MIPS32 big endian soft float microMIPS glibc
79 - MIPS32 little endian soft float microMIPS glibc
80 - MIPS32 big endian uclibc
81 - MIPS32 little endian uclibc
82 - MIPS32 big endian soft float uclibc
83 - MIPS32 little endian soft float uclibc
84
85config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
86 bool "CodeSoucery PowerPC 2010.09"
87 depends on BR2_powerpc
88 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +010089 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010090 help
91 Toolchain for the PowerPC architecture, from
92 CodeSourcery. It uses gcc 4.5.1, binutils 2.20, glibc 2.11,
93 gdb 7.2.50 and kernel headers 2.6.35.2. It has support for
94 the following variants:
95 - 603 glibc, 32 bits
96 - 603 soft float glibc, 32 bits
97 - e600 altivec glibc, 32 bits
98 - e500v1 glibc, 32 bits
99 - e500v2 glibc, 32 bits
100 - e500mc glibc, 32 bits
101 - 970 glibc hard-float, 64 bits
102
103config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201009
Phil Edworthyffa7b992011-03-09 11:40:03 +0000104 bool "CodeSoucery SH 2010.09"
Phil Edworthye46ba3c2011-05-06 08:47:55 +0100105 depends on BR2_sh4 || BR2_sh4eb
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100106 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6b578c82010-12-13 17:27:41 +0100107 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100108 help
109 Toolchain for the SuperH architecture, from CodeSourcery. It
110 uses gcc 4.5.1, binutils 2.20, glibc 2.11, uClibc 0.9.30,
111 gdb 7.2.50 and kernel headers 2.6.35.2. It has support for
112 the following variants:
113 - SH4A, glibc, little endian
114 - SH4A, glibc, big endian
Phil Edworthyffa7b992011-03-09 11:40:03 +0000115 - SH4A, uClibc, little endian
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100116 - SH4A, uClibc, big endian
117
118config BR2_TOOLCHAIN_EXTERNAL_CUSTOM
119 bool "Custom toolchain"
120 help
121 Use this option to use a custom toolchain pre-installed on
122 your system.
123
124endchoice
125
126config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
127 bool "Download toolchain automatically"
128 default y
129 depends on !BR2_TOOLCHAIN_EXTERNAL_CUSTOM
130 help
131 When enabled, Buildroot will automatically download and
132 install the selected external toolchain. When disabled,
133 Buildroot will use a pre-installed toolchain.
134
135config BR2_TOOLCHAIN_EXTERNAL_PATH
136 string "Toolchain path"
137 default "/path/to/toolchain/usr"
138 depends on !BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
139 help
140 Path to where the external toolchain is installed.
141
142config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
143 string "Toolchain prefix"
144 depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM
145 default "$(ARCH)-linux"
146
147config BR2_TOOLCHAIN_EXTERNAL_PREFIX
148 string
149 default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q1
150 default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2010Q1
151 default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201009
Thomas Petazzonie89b2622011-05-13 11:38:43 +0200152 default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201103
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100153 default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS44
154 default "powerpc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
Phil Edworthy67218782011-05-05 13:17:23 +0100155 default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201009
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100156 default $(BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX) \
157 if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200158
159config BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100160 bool
Thomas Petazzonifff71172010-12-13 17:27:37 +0100161 select BR2_LARGEFILE
162 select BR2_INET_IPV6
163 select BR2_INET_RPC
164 select BR2_USE_WCHAR
165 select BR2_ENABLE_LOCALE
166 select BR2_PROGRAM_INVOCATION
Thomas Petazzoni9eaad202010-12-13 17:27:44 +0100167 select BR2_TOOLCHAIN_HAS_THREADS
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200168
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100169config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
170 bool
171
172if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
173
174choice
175 prompt "External toolchain C library"
176 default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
177
178config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
179 bool "uClibc"
180 select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
181
182config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
183 bool "glibc"
184 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
185
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200186endchoice
"Steven J. Hill"02f71aa2007-02-06 18:19:38 +0000187
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100188if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
Thomas Petazzonifff71172010-12-13 17:27:37 +0100189
190config BR2_TOOLCHAIN_EXTERNAL_LARGEFILE
191 bool "Toolchain has large file support?"
192 select BR2_LARGEFILE
193 help
194 Select this option if your external toolchain supports
195 largefile. If you don't know, leave the default value,
196 Buildroot will tell you if it's correct or not.
197
198config BR2_TOOLCHAIN_EXTERNAL_INET_IPV6
199 bool "Toolchain has IPv6 support?"
200 select BR2_INET_IPV6
201 help
202 Select this option if your external toolchain supports
203 IPv6. If you don't know, leave the default value, Buildroot
204 will tell you if it's correct or not.
205
206config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
Peter Korsgaard8b370e62011-04-29 13:25:37 +0200207 bool "Toolchain has RPC support?"
Thomas Petazzonifff71172010-12-13 17:27:37 +0100208 select BR2_INET_RPC
209 help
210 Select this option if your external toolchain supports
211 RPC. If you don't know, leave the default value, Buildroot
212 will tell you if it's correct or not.
213
214config BR2_TOOLCHAIN_EXTERNAL_WCHAR
215 bool "Toolchain has WCHAR support?"
216 select BR2_USE_WCHAR
217 help
218 Select this option if your external toolchain supports
219 WCHAR. If you don't know, leave the default value, Buildroot
220 will tell you if it's correct or not.
221
222config BR2_TOOLCHAIN_EXTERNAL_LOCALE
223 bool "Toolchain has locale support?"
224 select BR2_TOOLCHAIN_EXTERNAL_WCHAR
225 select BR2_ENABLE_LOCALE
226 help
227 Select this option if your external toolchain has locale
228 support. If you don't know, leave the default value,
229 Buildroot will tell you if it's correct or not.
230
231config BR2_TOOLCHAIN_EXTERNAL_PROGRAM_INVOCATION
232 bool "Toolchain has program invocation support?"
233 select BR2_PROGRAM_INVOCATION
234 help
235 Select this option if your external toolchain has program
236 invocation support. If you don't know, leave the default
237 value, Buildroot will tell you if it's correct or not.
238
Thomas Petazzoni9eaad202010-12-13 17:27:44 +0100239config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
240 bool "Toolchain has threads support?"
241 select BR2_TOOLCHAIN_HAS_THREADS
242 help
243 Select this option if your external toolchain has thread
244 support. If you don't know, leave the default value,
245 Buildroot will tell you if it's correct or not.
246
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100247endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
248
Thomas Petazzoni6b578c82010-12-13 17:27:41 +0100249config BR2_TOOLCHAIN_EXTERNAL_CXX
250 bool "Toolchain has C++ support?"
251 select BR2_INSTALL_LIBSTDCPP
252 help
253 Select this option if your external toolchain has C++
254 support. If you don't know, leave the default value,
255 Buildroot will tell you if it's correct or not.
256
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100257endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas Petazzonifff71172010-12-13 17:27:37 +0100258
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100259endif # BR2_TOOLCHAIN_EXTERNAL
260