]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - arch/Config.in
Rename BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBS
[coffee/buildroot.git] / arch / Config.in
1 menu "Target options"
2
3 config BR2_ARCH_IS_64
4         bool
5
6 config BR2_KERNEL_64_USERLAND_32
7         bool
8
9 config BR2_SOFT_FLOAT
10         bool
11
12 choice
13         prompt "Target Architecture"
14         default BR2_i386
15         help
16           Select the target architecture family to build for.
17
18 config BR2_arcle
19         bool "ARC (little endian)"
20         help
21           Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
22           that can be used from deeply embedded to high performance host
23           applications. Little endian.
24
25 config BR2_arceb
26         bool "ARC (big endian)"
27         help
28           Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
29           that can be used from deeply embedded to high performance host
30           applications. Big endian.
31
32 config BR2_arm
33         bool "ARM (little endian)"
34         help
35           ARM is a 32-bit reduced instruction set computer (RISC) instruction
36           set architecture (ISA) developed by ARM Holdings. Little endian.
37           http://www.arm.com/
38           http://en.wikipedia.org/wiki/ARM
39
40 config BR2_armeb
41         bool "ARM (big endian)"
42         help
43           ARM is a 32-bit reduced instruction set computer (RISC) instruction
44           set architecture (ISA) developed by ARM Holdings. Big endian.
45           http://www.arm.com/
46           http://en.wikipedia.org/wiki/ARM
47
48 config BR2_aarch64
49         bool "AArch64"
50         select BR2_ARCH_IS_64
51         help
52           Aarch64 is a 64-bit architecture developed by ARM Holdings.
53           http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
54           http://en.wikipedia.org/wiki/ARM
55
56 config BR2_avr32
57         bool "AVR32"
58         select BR2_SOFT_FLOAT
59         # This architecture is obsolete and complicated to maintain to
60         # do the lack of upstream support in the major toolchain
61         # components. If you're interested by AVR32, contact the
62         # Buildroot community. Otherwise, its support will be removed
63         # by the 2015.02 release.
64         depends on BR2_DEPRECATED_SINCE_2014_08
65         help
66           The AVR32 is a 32-bit RISC microprocessor architecture designed by
67           Atmel.
68           http://www.atmel.com/
69           http://en.wikipedia.org/wiki/Avr32
70
71 config BR2_bfin
72         bool "Blackfin"
73         help
74           The Blackfin is a family of 16 or 32-bit microprocessors developed,
75           manufactured and marketed by Analog Devices.
76           http://www.analog.com/
77           http://en.wikipedia.org/wiki/Blackfin
78
79 config BR2_i386
80         bool "i386"
81         help
82           Intel i386 architecture compatible microprocessor
83           http://en.wikipedia.org/wiki/I386
84
85 config BR2_m68k
86         bool "m68k"
87         depends on BROKEN # ice in uclibc / inet_ntoa_r
88         help
89           Motorola 68000 family microprocessor
90           http://en.wikipedia.org/wiki/M68k
91
92 config BR2_microblazeel
93         bool "Microblaze AXI (little endian)"
94         help
95           Soft processor core designed for Xilinx FPGAs from Xilinx. AXI bus
96           based architecture (little endian)
97           http://www.xilinx.com
98           http://en.wikipedia.org/wiki/Microblaze
99
100 config BR2_microblazebe
101         bool "Microblaze non-AXI (big endian)"
102         help
103           Soft processor core designed for Xilinx FPGAs from Xilinx. PLB bus
104           based architecture (non-AXI, big endian)
105           http://www.xilinx.com
106           http://en.wikipedia.org/wiki/Microblaze
107
108 config BR2_mips
109         bool "MIPS (big endian)"
110         help
111           MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
112           http://www.mips.com/
113           http://en.wikipedia.org/wiki/MIPS_Technologies
114
115 config BR2_mipsel
116         bool "MIPS (little endian)"
117         help
118           MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
119           http://www.mips.com/
120           http://en.wikipedia.org/wiki/MIPS_Technologies
121
122 config BR2_mips64
123         bool "MIPS64 (big endian)"
124         select BR2_ARCH_IS_64
125         help
126           MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
127           http://www.mips.com/
128           http://en.wikipedia.org/wiki/MIPS_Technologies
129
130 config BR2_mips64el
131         bool "MIPS64 (little endian)"
132         select BR2_ARCH_IS_64
133         help
134           MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
135           http://www.mips.com/
136           http://en.wikipedia.org/wiki/MIPS_Technologies
137
138 config BR2_nios2
139         bool "Nios II"
140         help
141           Nios II is a soft core processor from Altera Corporation.
142           http://www.altera.com/
143           http://en.wikipedia.org/wiki/Nios_II
144
145 config BR2_powerpc
146         bool "PowerPC"
147         help
148           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
149           Big endian.
150           http://www.power.org/
151           http://en.wikipedia.org/wiki/Powerpc
152
153 config BR2_powerpc64
154         bool "PowerPC64 (big endian)"
155         select BR2_ARCH_IS_64
156         help
157           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
158           Big endian.
159           http://www.power.org/
160           http://en.wikipedia.org/wiki/Powerpc
161
162 config BR2_powerpc64le
163         bool "PowerPC64 (little endian)"
164         select BR2_ARCH_IS_64
165         help
166           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
167           Little endian.
168           http://www.power.org/
169           http://en.wikipedia.org/wiki/Powerpc
170
171 config BR2_sh
172         bool "SuperH"
173         help
174           SuperH (or SH) is a 32-bit reduced instruction set computer (RISC)
175           instruction set architecture (ISA) developed by Hitachi.
176           http://www.hitachi.com/
177           http://en.wikipedia.org/wiki/SuperH
178
179 config BR2_sh64
180         bool "SuperH64"
181         help
182           SuperH64 (or SH) is a 64-bit reduced instruction set computer (RISC)
183           instruction set architecture (ISA) developed by Hitachi.
184           http://www.hitachi.com/
185           http://en.wikipedia.org/wiki/SuperH
186
187 config BR2_sparc
188         bool "SPARC"
189         help
190           SPARC (from Scalable Processor Architecture) is a RISC instruction
191           set architecture (ISA) developed by Sun Microsystems.
192           http://www.oracle.com/sun
193           http://en.wikipedia.org/wiki/Sparc
194
195 config BR2_x86_64
196         bool "x86_64"
197         select BR2_ARCH_IS_64
198         help
199           x86-64 is an extension of the x86 instruction set (Intel i386
200           architecture compatible microprocessor).
201           http://en.wikipedia.org/wiki/X86_64
202
203 config BR2_xtensa
204         bool "Xtensa"
205         help
206           Xtensa is a Tensilica processor IP architecture.
207           http://en.wikipedia.org/wiki/Xtensa
208           http://www.tensilica.com/
209
210 endchoice
211
212 # The following string values are defined by the individual
213 # Config.in.$ARCH files
214 config BR2_ARCH
215         string
216
217 config BR2_ENDIAN
218         string
219
220 config BR2_GCC_TARGET_ARCH
221         string
222
223 config BR2_GCC_TARGET_ABI
224         string
225
226 config BR2_GCC_TARGET_CPU
227         string
228
229 config BR2_GCC_TARGET_CPU_REVISION
230         string
231
232 # The value of this option will be passed as --with-fpu=<value> when
233 # building gcc (internal backend) or -mfpu=<value> in the toolchain
234 # wrapper (external toolchain)
235 config BR2_GCC_TARGET_FPU
236         string
237
238 # The value of this option will be passed as --with-float=<value> when
239 # building gcc (internal backend) or -mfloat-abi=<value> in the toolchain
240 # wrapper (external toolchain)
241 config BR2_GCC_TARGET_FLOAT_ABI
242         string
243
244 # The value of this option will be passed as --with-mode=<value> when
245 # building gcc (internal backend) or -m<value> in the toolchain
246 # wrapper (external toolchain)
247 config BR2_GCC_TARGET_MODE
248         string
249
250 # If the architecture has atomic operations, select this:
251 config BR2_ARCH_HAS_ATOMICS
252         bool
253
254 # Set up target binary format
255 choice
256         prompt "Target Binary Format"
257         depends on BR2_bfin || BR2_m68k
258         default BR2_BINFMT_FDPIC
259
260 config BR2_BINFMT_ELF
261         bool "ELF"
262         depends on !BR2_bfin && !BR2_m68k
263         help
264           ELF (Executable and Linkable Format) is a format for libraries and
265           executables used across different architectures and operating
266           systems.
267
268 config BR2_BINFMT_FDPIC
269         bool "FDPIC"
270         depends on BR2_bfin || BR2_m68k
271         help
272           ELF FDPIC binaries are based on ELF, but allow the individual load
273           segments of a binary to be located in memory independently of each
274           other. This makes this format ideal for use in environments where no
275           MMU is available.
276
277 config BR2_BINFMT_FLAT
278         bool "FLAT"
279         depends on BR2_bfin || BR2_m68k
280         select BR2_STATIC_LIBS
281         help
282           FLAT binary is a relatively simple and lightweight executable format
283           based on the original a.out format. It is widely used in environment
284           where no MMU is available.
285
286 endchoice
287
288 # Set up flat binary type
289 choice
290         prompt "FLAT Binary type"
291         depends on BR2_BINFMT_FLAT
292         default BR2_BINFMT_FLAT_ONE
293
294 config BR2_BINFMT_FLAT_ONE
295         bool "One memory region"
296         help
297           All segments are linked into one memory region.
298
299 config BR2_BINFMT_FLAT_SEP_DATA
300         bool "Separate data and code region"
301         depends on BR2_bfin || BR2_m68k
302         help
303           Allow for the data and text segments to be separated and placed in
304           different regions of memory.
305
306 config BR2_BINFMT_FLAT_SHARED
307         bool "Shared binary"
308         depends on BR2_bfin || BR2_m68k
309         help
310           Allow to load and link indiviual FLAT binaries at run time.
311
312 endchoice
313
314 if BR2_arcle || BR2_arceb
315 source "arch/Config.in.arc"
316 endif
317
318 if BR2_arm || BR2_armeb
319 source "arch/Config.in.arm"
320 endif
321
322 if BR2_aarch64
323 source "arch/Config.in.aarch64"
324 endif
325
326 if BR2_avr32
327 source "arch/Config.in.avr32"
328 endif
329
330 if BR2_bfin
331 source "arch/Config.in.bfin"
332 endif
333
334 if BR2_m68k
335 source "arch/Config.in.m68k"
336 endif
337
338 if BR2_microblazeel || BR2_microblazebe
339 source "arch/Config.in.microblaze"
340 endif
341
342 if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
343 source "arch/Config.in.mips"
344 endif
345
346 if BR2_nios2
347 source "arch/Config.in.nios2"
348 endif
349
350 if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
351 source "arch/Config.in.powerpc"
352 endif
353
354 if BR2_sh || BR2_sh64
355 source "arch/Config.in.sh"
356 endif
357
358 if BR2_sparc
359 source "arch/Config.in.sparc"
360 endif
361
362 if BR2_i386 || BR2_x86_64
363 source "arch/Config.in.x86"
364 endif
365
366 if BR2_xtensa
367 source "arch/Config.in.xtensa"
368 endif
369
370 endmenu # Target options