blob: ef909cc0d6a9355673540058b0440c06c4c21b67 (
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
|
#
config NATIVE_TOOLCHAIN
bool
prompt "Use host's toolchain" if DEVEL && BROKEN
default n
help
If enabled, OpenWrt will compile using your existing toolchain instead of compiling one
menuconfig TOOLCHAINOPTS
bool "Toolchain Options" if DEVEL
depends !NATIVE_TOOLCHAIN
menuconfig EXTRA_TARGET_ARCH
bool
prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
default n
help
Some builds may require a 'biarch' toolchain. This option
allows you to specify an additional target arch.
Most people will answer N here.
config EXTRA_TARGET_ARCH_NAME
string
prompt "Extra architecture name" if EXTRA_TARGET_ARCH
help
Specify the cpu name (eg powerpc64 or x86_64) of the
additional target architecture.
config EXTRA_TARGET_ARCH_OPTS
string
prompt "Extra architecture compiler options" if EXTRA_TARGET_ARCH
help
If you're specifying an addition target architecture,
you'll probably need to also provide options to make
the compiler use this alternate arch.
For example, if you're building a compiler that can build
both powerpc and powerpc64 binaries, you'll need to
specify -m64 here.
source "toolchain/binutils/Config.in"
source "toolchain/gcc/Config.in"
choice
prompt "LIBC implementation" if TOOLCHAINOPTS
default USE_UCLIBC
help
Select the LIBC implementation.
config USE_EGLIBC
bool "Use eglibc"
depends !avr32
select NO_STRIP
config USE_GLIBC
bool "Use glibc"
depends !avr32
select NO_STRIP
config USE_UCLIBC
bool "Use uClibc"
endchoice
source "toolchain/eglibc/Config.in"
source "toolchain/glibc/Config.in"
source "toolchain/uClibc/Config.in"
config GDB
bool
prompt "Build gdb" if TOOLCHAINOPTS
default n
help
Enable if you want to build the gdb
config LARGEFILE
bool
prompt "Enable large file (files > 2 GB) support?" if TOOLCHAINOPTS
default y
help
Enable large file (files > 2 GB) support
config SHADOW_PASSWORDS
bool
prompt "Enable shadow password support?" if TOOLCHAINOPTS
default y
help
Enable shadow password support.
config SOFT_FLOAT
bool
prompt "Use software floating point by default" if TOOLCHAINOPTS
default y
depends on (arm || armeb || powerpc) && !HAS_FPU
help
If your target CPU does not have a Floating Point Unit (FPU) or a
kernel FPU emulator, but you still wish to support floating point
functions, then everything will need to be compiled with soft floating
point support (-msoft-float).
Most people will answer N.
config TARGET_OPTIMIZATION
string
prompt "Target Optimizations" if TOOLCHAINOPTS
default "-O2 -pipe -march=i686 -funit-at-a-time" if TARGET_x86_mediacenter
default "-O2 -pipe -march=i486 -funit-at-a-time" if TARGET_x86
default "-Os -pipe -march=i486 -funit-at-a-time" if TARGET_rdc || TARGET_uml
default "-Os -pipe -mips32r2 -mtune=mips32r2 -funit-at-a-time" if TARGET_ar71xx
default "-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time" if mipsel || mips
default "-Os -pipe -march=armv5te -mtune=xscale -funit-at-a-time" if TARGET_ixp4xx || TARGET_iop32x || TARGET_pxa || TARGET_orion
default "-Os -pipe -march=armv4 -mtune=arm9tdmi -funit-at-a-time" if TARGET_storm
default "-Os -pipe -funit-at-a-time"
help
Optimizations to use when building for the target host.
config USE_UCLIBC
bool
default y if !TOOLCHAINOPTS
source "toolchain/gcc/Config.version"
source "toolchain/eglibc/Config.version"
source "toolchain/glibc/Config.version"
source "toolchain/uClibc/Config.version"
config LIBC
string
default "eglibc" if USE_EGLIBC
default "glibc" if USE_GLIBC
default "uClibc" if USE_UCLIBC
config LIBC_VERSION
string
default EGLIBC_VERSION if USE_EGLIBC
default GLIBC_VERSION if USE_GLIBC
default UCLIBC_VERSION if USE_UCLIBC
config TARGET_SUFFIX
string
default "gnueabi" if (USE_EGLIBC || USE_GLIBC) && EABI_SUPPORT
default "gnu" if (USE_EGLIBC || USE_GLIBC) && !EABI_SUPPORT
default "uclibcgnueabi" if USE_UCLIBC && EABI_SUPPORT
default "uclibc" if USE_UCLIBC && !EABI_SUPPORT
|