06aff2c3092fb1dfc5be645e10539ddccab580f4
[packages/trusty/cirros-testvm.git] / cirros-testvm / src-cirros / buildroot-2015.05 / 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_bfin
57         bool "Blackfin"
58         help
59           The Blackfin is a family of 16 or 32-bit microprocessors developed,
60           manufactured and marketed by Analog Devices.
61           http://www.analog.com/
62           http://en.wikipedia.org/wiki/Blackfin
63
64 config BR2_i386
65         bool "i386"
66         help
67           Intel i386 architecture compatible microprocessor
68           http://en.wikipedia.org/wiki/I386
69
70 config BR2_m68k
71         bool "m68k"
72         depends on BROKEN # ice in uclibc / inet_ntoa_r
73         help
74           Motorola 68000 family microprocessor
75           http://en.wikipedia.org/wiki/M68k
76
77 config BR2_microblazeel
78         bool "Microblaze AXI (little endian)"
79         help
80           Soft processor core designed for Xilinx FPGAs from Xilinx. AXI bus
81           based architecture (little endian)
82           http://www.xilinx.com
83           http://en.wikipedia.org/wiki/Microblaze
84
85 config BR2_microblazebe
86         bool "Microblaze non-AXI (big endian)"
87         help
88           Soft processor core designed for Xilinx FPGAs from Xilinx. PLB bus
89           based architecture (non-AXI, big endian)
90           http://www.xilinx.com
91           http://en.wikipedia.org/wiki/Microblaze
92
93 config BR2_mips
94         bool "MIPS (big endian)"
95         help
96           MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
97           http://www.mips.com/
98           http://en.wikipedia.org/wiki/MIPS_Technologies
99
100 config BR2_mipsel
101         bool "MIPS (little endian)"
102         help
103           MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
104           http://www.mips.com/
105           http://en.wikipedia.org/wiki/MIPS_Technologies
106
107 config BR2_mips64
108         bool "MIPS64 (big endian)"
109         select BR2_ARCH_IS_64
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_mips64el
116         bool "MIPS64 (little endian)"
117         select BR2_ARCH_IS_64
118         help
119           MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
120           http://www.mips.com/
121           http://en.wikipedia.org/wiki/MIPS_Technologies
122
123 config BR2_nios2
124         bool "Nios II"
125         help
126           Nios II is a soft core processor from Altera Corporation.
127           http://www.altera.com/
128           http://en.wikipedia.org/wiki/Nios_II
129
130 config BR2_powerpc
131         bool "PowerPC"
132         help
133           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
134           Big endian.
135           http://www.power.org/
136           http://en.wikipedia.org/wiki/Powerpc
137
138 config BR2_powerpc64
139         bool "PowerPC64 (big endian)"
140         select BR2_ARCH_IS_64
141         help
142           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
143           Big endian.
144           http://www.power.org/
145           http://en.wikipedia.org/wiki/Powerpc
146
147 config BR2_powerpc64le
148         bool "PowerPC64 (little endian)"
149         select BR2_ARCH_IS_64
150         help
151           PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
152           Little endian.
153           http://www.power.org/
154           http://en.wikipedia.org/wiki/Powerpc
155
156 config BR2_sh
157         bool "SuperH"
158         help
159           SuperH (or SH) is a 32-bit reduced instruction set computer (RISC)
160           instruction set architecture (ISA) developed by Hitachi.
161           http://www.hitachi.com/
162           http://en.wikipedia.org/wiki/SuperH
163
164 config BR2_sh64
165         bool "SuperH64"
166         depends on BR2_DEPRECATED_SINCE_2015_05
167         help
168           SuperH64 (or SH) is a 64-bit reduced instruction set computer (RISC)
169           instruction set architecture (ISA) developed by Hitachi.
170           http://www.hitachi.com/
171           http://en.wikipedia.org/wiki/SuperH
172
173 config BR2_sparc
174         bool "SPARC"
175         help
176           SPARC (from Scalable Processor Architecture) is a RISC instruction
177           set architecture (ISA) developed by Sun Microsystems.
178           http://www.oracle.com/sun
179           http://en.wikipedia.org/wiki/Sparc
180
181 config BR2_x86_64
182         bool "x86_64"
183         select BR2_ARCH_IS_64
184         help
185           x86-64 is an extension of the x86 instruction set (Intel i386
186           architecture compatible microprocessor).
187           http://en.wikipedia.org/wiki/X86_64
188
189 config BR2_xtensa
190         bool "Xtensa"
191         help
192           Xtensa is a Tensilica processor IP architecture.
193           http://en.wikipedia.org/wiki/Xtensa
194           http://www.tensilica.com/
195
196 endchoice
197
198 # The following string values are defined by the individual
199 # Config.in.$ARCH files
200 config BR2_ARCH
201         string
202
203 config BR2_ENDIAN
204         string
205
206 config BR2_GCC_TARGET_ARCH
207         string
208
209 config BR2_GCC_TARGET_ABI
210         string
211
212 config BR2_GCC_TARGET_CPU
213         string
214
215 config BR2_GCC_TARGET_CPU_REVISION
216         string
217
218 # The value of this option will be passed as --with-fpu=<value> when
219 # building gcc (internal backend) or -mfpu=<value> in the toolchain
220 # wrapper (external toolchain)
221 config BR2_GCC_TARGET_FPU
222         string
223
224 # The value of this option will be passed as --with-float=<value> when
225 # building gcc (internal backend) or -mfloat-abi=<value> in the toolchain
226 # wrapper (external toolchain)
227 config BR2_GCC_TARGET_FLOAT_ABI
228         string
229
230 # The value of this option will be passed as --with-mode=<value> when
231 # building gcc (internal backend) or -m<value> in the toolchain
232 # wrapper (external toolchain)
233 config BR2_GCC_TARGET_MODE
234         string
235
236 # If the architecture has atomic operations, select this:
237 config BR2_ARCH_HAS_ATOMICS
238         bool
239
240 # Must be selected by binary formats that support shared libraries.
241 config BR2_BINFMT_SUPPORTS_SHARED
242         bool
243
244 # Set up target binary format
245 choice
246         prompt "Target Binary Format"
247         default BR2_BINFMT_ELF if !(BR2_bfin || BR2_m68k)
248         default BR2_BINFMT_FDPIC if BR2_bfin
249         default BR2_BINFMT_FLAT if BR2_m68k
250
251 config BR2_BINFMT_ELF
252         bool "ELF"
253         depends on !BR2_bfin && !BR2_m68k
254         select BR2_BINFMT_SUPPORTS_SHARED
255         help
256           ELF (Executable and Linkable Format) is a format for libraries and
257           executables used across different architectures and operating
258           systems.
259
260 config BR2_BINFMT_FDPIC
261         bool "FDPIC"
262         depends on BR2_bfin
263         select BR2_BINFMT_SUPPORTS_SHARED
264         help
265           ELF FDPIC binaries are based on ELF, but allow the individual load
266           segments of a binary to be located in memory independently of each
267           other. This makes this format ideal for use in environments where no
268           MMU is available.
269
270 config BR2_BINFMT_FLAT
271         bool "FLAT"
272         depends on BR2_bfin || BR2_m68k
273         help
274           FLAT binary is a relatively simple and lightweight executable format
275           based on the original a.out format. It is widely used in environment
276           where no MMU is available.
277
278 endchoice
279
280 # Set up flat binary type
281 choice
282         prompt "FLAT Binary type"
283         depends on BR2_BINFMT_FLAT
284         default BR2_BINFMT_FLAT_ONE
285
286 config BR2_BINFMT_FLAT_ONE
287         bool "One memory region"
288         help
289           All segments are linked into one memory region.
290
291 config BR2_BINFMT_FLAT_SEP_DATA
292         bool "Separate data and code region"
293         help
294           Allow for the data and text segments to be separated and placed in
295           different regions of memory.
296
297 config BR2_BINFMT_FLAT_SHARED
298         bool "Shared binary"
299         # Even though this really generates shared binaries, there is no libdl
300         # and dlopen() cannot be used. So packages that require shared
301         # libraries cannot be built. Therefore, we don't select
302         # BR2_BINFMT_SUPPORTS_SHARED and therefore force BR2_STATIC_LIBS.
303         # Although this adds -static to the compilation, that's not a problem
304         # because the -mid-shared-library option overrides it.
305         help
306           Allow to load and link indiviual FLAT binaries at run time.
307
308 endchoice
309
310 if BR2_arcle || BR2_arceb
311 source "arch/Config.in.arc"
312 endif
313
314 if BR2_arm || BR2_armeb
315 source "arch/Config.in.arm"
316 endif
317
318 if BR2_aarch64
319 source "arch/Config.in.aarch64"
320 endif
321
322 if BR2_bfin
323 source "arch/Config.in.bfin"
324 endif
325
326 if BR2_m68k
327 source "arch/Config.in.m68k"
328 endif
329
330 if BR2_microblazeel || BR2_microblazebe
331 source "arch/Config.in.microblaze"
332 endif
333
334 if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
335 source "arch/Config.in.mips"
336 endif
337
338 if BR2_nios2
339 source "arch/Config.in.nios2"
340 endif
341
342 if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
343 source "arch/Config.in.powerpc"
344 endif
345
346 if BR2_sh || BR2_sh64
347 source "arch/Config.in.sh"
348 endif
349
350 if BR2_sparc
351 source "arch/Config.in.sparc"
352 endif
353
354 if BR2_i386 || BR2_x86_64
355 source "arch/Config.in.x86"
356 endif
357
358 if BR2_xtensa
359 source "arch/Config.in.xtensa"
360 endif
361
362 endmenu # Target options