Prepare to release crosstool-ng-0.0.3.
1 # Target definition: architecture, optimisations, etc...
5 comment "General target options"
9 default "arm" if ARCH_ARM
10 default "mips" if ARCH_MIPS
11 default "x86" if ARCH_x86
12 default "x86_64" if ARCH_x86_64
16 prompt "Target architecture:"
22 select ARCH_SUPPORTS_BE
23 select ARCH_SUPPORTS_LE
24 select ARCH_SUPPORTS_LIBFLOAT
29 select ARCH_SUPPORTS_BE
30 select ARCH_SUPPORTS_LE
35 select ARCH_SUPPORTS_LE
36 select ARCH_SUPPORTS_LIBFLOAT
41 select ARCH_SUPPORTS_LE
45 config ARCH_SUPPORTS_BE
49 config ARCH_SUPPORTS_LE
60 depends on ARCH_SUPPORTS_BE
64 prompt "Little endian"
65 depends on ARCH_SUPPORTS_LE
69 comment "Target optimisations"
73 prompt "Achitecture level"
76 GCC uses this name to determine what kind of instructions it can emit
77 when generating assembly code. This option can be used in conjunction
78 with or instead of the ARCH_CPU option (above), or a (command-line)
81 This is the configuration flag --with-arch=XXXX, and the runtime flag
84 Pick a value from the gcc manual for your choosen gcc version and your
87 Leave blank if you don't know, or if your target architecture does not
92 prompt "Generate code for the specific ABI"
95 Generate code for the given ABI.
97 This is the configuration flag --with-abi=XXXX, and the runtime flag
100 Pick a value from the gcc manual for your choosen gcc version and your
103 Leave blank if you don't know, or if your target architecutre does not
108 prompt "Emit assembly for CPU"
111 This specifies the name of the target ARM processor. GCC uses this name
112 to determine what kind of instructions it can emit when generating
115 This is the configuration flag --with-cpu=XXXX, and the runtime flag
118 Pick a value from the gcc manual for your choosen gcc version and your
121 Leave blank if you don't know, or if your target architecture does not
126 prompt "Tune for CPU"
129 This option is very similar to the ARCH_CPU option (above), except
130 that instead of specifying the actual target processor type, and hence
131 restricting which instructions can be used, it specifies that GCC should
132 tune the performance of the code as if the target were of the type
133 specified in this option, but still choosing the instructions that it
134 will generate based on the cpu specified by the ARCH_CPU option
135 (above), or a (command-line) -mcpu= option.
137 This is the configuration flag --with-tune=XXXX, and the runtime flag
140 Pick a value from the gcc manual for your choosen gcc version and your
143 Leave blank if you don't know, or if your target architecture does not
148 prompt "Use specific FPU"
151 On some targets (eg. ARM), you can specify the kind of FPU to emit
154 This is the configuration flag --with-fpu=XXX, and the runtime flag
157 See below wether to actually emit FP opcodes, or to emulate them.
159 Pick a value from the gcc manual for your choosen gcc version and your
162 Leave blank if you don't know, or if your target architecture does not
167 prompt "Floating point:"
171 prompt "hardware (FPU)"
173 Emit hardware floating point opcodes.
175 If you've got a processor with a FPU, then you want that.
176 If your hardware has no FPU, you still can use HW floating point, but
177 need to compile support for FPU emulation in your kernel. Needless to
178 say that emulating the FPU is /slooowwwww/...
180 One situation you'd want HW floating point without a FPU is if you get
181 binary blobs from different vendors that are compiling this way and
182 can't (don't wan't to) change.
188 Do not emit any hardware floating point opcode.
190 If your processor has no FPU, then you most probably want this, as it
191 is faster than emulating the FPU in the kernel.
195 config ARCH_SUPPORTS_LIBFLOAT
199 config ARCH_FLOAT_SW_LIBFLOAT
201 prompt "Use libfloat"
203 depends on ARCH_FLOAT_SW && ARCH_SUPPORTS_LIBFLOAT
205 For those targets upporting it, you can use libfloat for the software
206 floating point emulation.
208 Note that some versions of gcc have support code that supersedes libfloat,
209 while others don't. Known version of gcc that don't have support code are
210 versions prior to 3.0, and version above 4.0.
212 You should check gcc before deciding to use libfloat.
214 config LIBFLOAT_VERSION
216 default "990616.orig"
217 depends on ARCH_FLOAT_SW_LIBFLOAT
221 prompt "Target CFLAGS"
224 Used to add specific options when compiling libraries of the toolchain,
225 that will run on the target (eg. libc.so).
227 Note that the options above for CPU, tune, arch and FPU will be
228 automaticaly used. You don't need to specify them here.
230 Leave blank if you don't know better.