summaryrefslogtreecommitdiff
path: root/toolchain/toolchain-external/Config.in
blob: eadfe50cf864feb1be45e192e68f7e92328fe4db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
if BR2_TOOLCHAIN_EXTERNAL

choice
	prompt "Toolchain"

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201103
	bool "Sourcery CodeBench ARM 2011.03"
	depends on BR2_arm
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the ARM architecture, from
	  Mentor Graphics. It uses gcc 4.5.2, binutils 2.20.51, glibc
	  2.13 and gdb 7.2.50, kernel headers 2.6.38. It has support
	  for the following variants:
            - ARMv5TE, little endian, soft-float, glibc
            - ARMv4T, little endian, soft-float, glibc
            - ARMv7-A, Thumb 2, little endian, soft-float, glibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201009
	bool "Sourcery CodeBench ARM 2010.09"
	depends on BR2_arm
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the ARM architecture, from
	  Mentor Graphics. It uses gcc 4.5.1, binutils 2.20, glibc
	  2.11 and gdb 7.2.50, kernel headers 2.6.35.2. It has support
	  for the following variants:
            - ARMv5TE, little endian, soft-float, glibc
            - ARMv4T, little endian, soft-float, glibc
            - ARMv7-A, Thumb 2, little endian, soft-float, glibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2010Q1
	bool "Sourcery CodeBench ARM 2010q1"
	depends on BR2_arm
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the ARM architecture, from
	  Mentor Graphics. It uses gcc 4.4.1, binutils 2.19, glibc
	  2.11, gdb 7.0.50 and kernel headers 2.6.32. It has support
	  for the following variants:
             - ARMv5T, little endian, soft-float, glibc
             - ARMv4T, little endian, soft-float, glibc
             - ARMv7-A, Thumb 2, little endian, soft-float, glibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q3
	bool "Sourcery CodeBench ARM 2009q3"
	depends on BR2_arm
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the ARM architecture, from
	  Mentor Graphics. It uses gcc 4.4.1, binutils 2.19, glibc
	  2.10 and gdb 6.8 and kernel headers 2.6.30. It has support
	  for the following variants:
            - ARMv5T, little endian, soft-float, glibc
            - ARMv4T, little endian, soft-float, glibc
            - ARMv7-A, Thumb 2, little endian, soft-float, glibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q1
	bool "Sourcery CodeBench ARM 2009q1"
	depends on BR2_arm
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the ARM architecture, from
	  Mentor Graphics. It uses gcc 4.3.3, binutils 2.19, glibc 2.8
	  and gdb 6.8 and kernel headers 2.6.30. It has support for
	  the following variants:
            - ARMv5T, little endian, soft-float, glibc
            - ARMv4T, little endian, soft-float, glibc
            - ARMv7-A, Thumb 2, little endian, soft-float, glibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201103
	bool "Sourcery CodeBench MIPS 2011.03"
	depends on BR2_mips || BR2_mipsel
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the MIPS architecture, from
	  Mentor Graphics. It uses gcc 4.5.2, binutils 2.20.51, glibc
	  2.13, uClibc 0.9.30 and gdb 7.2.50, kernel headers
	  2.6.38. It has support for the following variants:
            - MIPS32 O32 big endian glibc
            - MIPS32 O32 little endian glibc
            - MIPS32 big endian soft float glibc
            - MIPS32 little endian soft float glibc
            - MIPS32 big endian microMIPS glibc
            - MIPS32 little endian microMIPS glibc
            - MIPS32 big endian soft float microMIPS glibc
            - MIPS32 little endian soft float microMIPS glibc
            - MIPS32 big endian uclibc
            - MIPS32 little endian uclibc
            - MIPS32 big endian soft float uclibc
            - MIPS32 little endian soft float uclibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS44
	bool "Sourcery CodeBench MIPS 4.4"
	depends on BR2_mips || BR2_mipsel
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the MIPS architecture, from
	  Mentor Graphics. It uses gcc 4.4.1, binutils 2.19, glibc
	  2.11, uClibc 0.9.30 and gdb 7.0, kernel headers 2.6.32. It
	  has support for the following variants:
            - MIPS32 O32 big endian glibc
            - MIPS32 O32 little endian glibc
            - MIPS32 big endian soft float glibc
            - MIPS32 little endian soft float glibc
            - MIPS32 big endian microMIPS glibc
            - MIPS32 little endian microMIPS glibc
            - MIPS32 big endian soft float microMIPS glibc
            - MIPS32 little endian soft float microMIPS glibc
            - MIPS32 big endian uclibc
            - MIPS32 little endian uclibc
            - MIPS32 big endian soft float uclibc
            - MIPS32 little endian soft float uclibc

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
	bool "Sourcery CodeBench PowerPC 2010.09"
	depends on BR2_powerpc
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the PowerPC architecture,
	  from Sourcery CodeBench. It uses gcc 4.5.1, binutils 2.20,
	  glibc 2.11, gdb 7.2.50 and kernel headers 2.6.35.2. It has
	  support for the following variants:
            - 603 glibc, 32 bits
            - 603 soft float glibc, 32 bits
            - e600 altivec glibc, 32 bits
            - e500v1 glibc, 32 bits
            - e500v2 glibc, 32 bits
            - e500mc glibc, 32 bits
            - 970 glibc hard-float, 64 bits

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103
	bool "Sourcery CodeBench SH 2011.03"
	depends on BR2_sh4a || BR2_sh4aeb
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the SuperH architecture,
	  from Mentor Graphics. It uses gcc 4.5.2, binutils 2.20,
	  glibc 2.13, uClibc 0.9.30, gdb 7.2.50 and kernel headers
	  2.6.38. It has support for the following variants:
            - SH4A, glibc, little endian
            - SH4A, glibc, big endian
            - SH4A, uClibc, little endian
            - SH4A, uClibc, big endian

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201009
	bool "Sourcery CodeBench SH 2010.09"
	depends on BR2_sh4a || BR2_sh4aeb
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the SuperH architecture,
	  from Mentor Graphics. It uses gcc 4.5.1, binutils 2.20,
	  glibc 2.11, uClibc 0.9.30, gdb 7.2.50 and kernel headers
	  2.6.35.2. It has support for the following variants:
            - SH4A, glibc, little endian
            - SH4A, glibc, big endian
            - SH4A, uClibc, little endian
            - SH4A, uClibc, big endian

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103
	bool "Sourcery CodeBench SH 2011.03"
	depends on BR2_sh2a
	select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	select BR2_LARGEFILE
	select BR2_INET_RPC
	select BR2_USE_WCHAR
	select BR2_TOOLCHAIN_HAS_THREADS
	select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the SuperH architecture,
	  from Mentor Graphics. It uses gcc 4.5.2, binutils 2.20,
	  uClibc 0.9.30, gdb 7.2.50 and kernel headers 2.6.38. It has
	  support for the following variants:
            - SH2A, uClibc, big endian

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009
	bool "Sourcery CodeBench SH 2010.09"
	depends on BR2_sh2a
	select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	select BR2_LARGEFILE
	select BR2_INET_RPC
	select BR2_USE_WCHAR
	select BR2_TOOLCHAIN_HAS_THREADS
	select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the SuperH architecture,
	  from Mentor Graphics. It uses gcc 4.5.1, binutils 2.20,
	  uClibc 0.9.30, gdb 7.2.50 and kernel headers 2.6.35.2. It
	  has support for the following variants:
            - SH2A, uClibc, big endian

config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201009
	bool "Sourcery CodeBench x86/x86_64 2010.09"
	depends on BR2_i386 || BR2_x86_64
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC
	select BR2_INSTALL_LIBSTDCPP
	help
	  Sourcery CodeBench toolchain for the x86/x86_64
	  architectures, from Mentor Graphics. It uses gcc 4.5.1,
	  binutils 2.20, glibc 2.11, gdb 7.2.50 and kernel headers
	  2.6.35.2. It has support for the following variants:
	    - Intel Pentium 4, glibc, 32 bits
            - Intel Atom, glibc, 32 bits
            - Intel Xeon, glibc, 64 bits
            - Intel Core 2, glibc, 64 bits

config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2010RC1
	bool "Blackfin.uclinux.org 2010RC1"
	depends on BR2_bfin
	select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	select BR2_INSTALL_LIBSTDCPP
	select BR2_LARGEFILE
	select BR2_INET_IPV6
	select BR2_INET_RPC
	select BR2_USE_WCHAR
	select BR2_TOOLCHAIN_HAS_THREADS
	select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	help
	  Toolchain for the Blackfin architecture, from
	  http://blackfin.uclinux.org.

config BR2_TOOLCHAIN_EXTERNAL_CUSTOM
       bool "Custom toolchain"
       help
         Use this option to use a custom toolchain pre-installed on
         your system.

endchoice

config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
	bool "Download toolchain automatically"
	default y
	depends on !BR2_TOOLCHAIN_EXTERNAL_CUSTOM
	help
	  When enabled, Buildroot will automatically download and
	  install the selected external toolchain. When disabled,
	  Buildroot will use a pre-installed toolchain.

config BR2_TOOLCHAIN_EXTERNAL_PATH
	string "Toolchain path"
	default "/path/to/toolchain/usr"
	depends on !BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
	help
	  Path to where the external toolchain is installed.

config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
	string "Toolchain prefix"
	depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM
	default "$(ARCH)-linux"

config BR2_TOOLCHAIN_EXTERNAL_PREFIX
	string
	default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q1
	default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2009Q3
	default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM2010Q1
	default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201009
	default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201103
	default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS44
	default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201103
	default "powerpc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
	default "sh-linux-gnu"           if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201009
	default "sh-linux-gnu"           if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103
	default "sh-uclinux"             if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009
	default "sh-uclinux"             if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103
	default "i686-pc-linux-gnu"	 if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201009
	default "bfin-uclinux"		 if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2010RC1 && !BR2_BFIN_FDPIC
	default "bfin-linux-uclibc"	 if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2010RC1 && BR2_BFIN_FDPIC
	default $(BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX) \
					 if BR2_TOOLCHAIN_EXTERNAL_CUSTOM

config BR2_TOOLCHAIN_EXTERNAL_GLIBC
	bool
	select BR2_LARGEFILE
	select BR2_INET_IPV6
	select BR2_INET_RPC
	select BR2_USE_WCHAR
	select BR2_ENABLE_LOCALE
	select BR2_TOOLCHAIN_HAS_THREADS
	select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS

config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	bool

if BR2_TOOLCHAIN_EXTERNAL_CUSTOM

choice
	prompt "External toolchain C library"
	default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC

config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
	bool "uClibc"
	select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	# For the time being, we assume that all custom external
	# toolchains have shadow password support.
	select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS

config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
	bool "glibc"
	select BR2_TOOLCHAIN_EXTERNAL_GLIBC

endchoice

if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC

config BR2_TOOLCHAIN_EXTERNAL_LARGEFILE
	bool "Toolchain has large file support?"
	select BR2_LARGEFILE
	help
	  Select this option if your external toolchain supports
	  largefile. If you don't know, leave the default value,
	  Buildroot will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_INET_IPV6
	bool "Toolchain has IPv6 support?"
	select BR2_INET_IPV6
	help
	  Select this option if your external toolchain supports
	  IPv6. If you don't know, leave the default value, Buildroot
	  will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
	bool "Toolchain has RPC support?"
	select BR2_INET_RPC
	help
	  Select this option if your external toolchain supports
	  RPC. If you don't know, leave the default value, Buildroot
	  will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_WCHAR
	bool "Toolchain has WCHAR support?"
	select BR2_USE_WCHAR
	help
	  Select this option if your external toolchain supports
	  WCHAR. If you don't know, leave the default value, Buildroot
	  will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_LOCALE
	bool "Toolchain has locale support?"
	select BR2_TOOLCHAIN_EXTERNAL_WCHAR
	select BR2_ENABLE_LOCALE
	help
	  Select this option if your external toolchain has locale
	  support. If you don't know, leave the default value,
	  Buildroot will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
	bool "Toolchain has threads support?"
	select BR2_TOOLCHAIN_HAS_THREADS
	default y
	help
	  Select this option if your external toolchain has thread
	  support. If you don't know, leave the default value,
	  Buildroot will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG
	bool "Toolchain has threads debugging support?"
	depends on BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
	select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	default y
	help
	  Select this option if your external toolchain has thread
	  debugging support. If you don't know, leave the default
	  value, Buildroot will tell you if it's correct or not.

endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC

config BR2_TOOLCHAIN_EXTERNAL_CXX
	bool "Toolchain has C++ support?"
	select BR2_INSTALL_LIBSTDCPP
	help
	  Select this option if your external toolchain has C++
	  support. If you don't know, leave the default value,
	  Buildroot will tell you if it's correct or not.

config BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS
	string "Extra toolchain libraries to be copied to target"
	help
	  If your external toolchain provides extra libraries that
	  need to be copied to the target filesystem, enter them
	  here, separated by spaces. They will be copied to the
	  target's /lib directory.

endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM

endif # BR2_TOOLCHAIN_EXTERNAL