yann@41
|
1 |
menu "Toolchain options"
|
yann@41
|
2 |
|
yann@41
|
3 |
comment "General toolchain options"
|
yann@41
|
4 |
|
yann@2281
|
5 |
config FORCE_SYSROOT
|
yann@2281
|
6 |
bool
|
yann@2281
|
7 |
default y if !OBSOLETE
|
yann@2281
|
8 |
default n if OBSOLETE
|
yann@2281
|
9 |
select USE_SYSROOT
|
yann@2281
|
10 |
|
yann@41
|
11 |
config USE_SYSROOT
|
yann@41
|
12 |
bool
|
yann@41
|
13 |
prompt "Use sysroot'ed toolchain"
|
yann@41
|
14 |
default y
|
yann@41
|
15 |
help
|
yann@41
|
16 |
Use the 'shinny new' sysroot feature of gcc: libraries split between
|
yann@2279
|
17 |
prefix/target/sysroot/lib and prefix/target/sysroot/usr/lib
|
yann@41
|
18 |
|
yann@41
|
19 |
You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
|
yann@41
|
20 |
|
yann@2279
|
21 |
config SYSROOT_NAME
|
yann@2279
|
22 |
string
|
yann@2407
|
23 |
prompt "sysroot directory name" if ! BACKEND
|
yann@2279
|
24 |
depends on USE_SYSROOT
|
yann@2279
|
25 |
default "sysroot"
|
yann@2279
|
26 |
help
|
yann@2279
|
27 |
Enter the base name of the sysroot directory. Usually, this simply
|
yann@2279
|
28 |
is 'sysroot' (the default) or 'sys-root'.
|
yann@2279
|
29 |
|
yann@2279
|
30 |
You are free to enter anything here, except for spaces, and '/'
|
yann@2279
|
31 |
(see SYSROOT_DIR_PREFIX, below). If you leave this empy, then the
|
yann@2279
|
32 |
default 'sysroot' is used.
|
yann@2279
|
33 |
|
yann@1219
|
34 |
config SYSROOT_DIR_PREFIX
|
yann@1219
|
35 |
string
|
yann@1865
|
36 |
prompt "sysroot prefix dir (READ HELP)" if ! BACKEND
|
yann@1219
|
37 |
depends on USE_SYSROOT
|
yann@1219
|
38 |
default ""
|
yann@1219
|
39 |
help
|
yann@1219
|
40 |
*
|
yann@1219
|
41 |
* Unless you realy know you need that, leave it empty!
|
yann@1219
|
42 |
*
|
yann@1219
|
43 |
|
yann@1219
|
44 |
This string will be interpreted as a directory component to be added
|
yann@1219
|
45 |
to the sysroot path, just before the actual sysroot directory.
|
yann@1219
|
46 |
|
yann@1219
|
47 |
In fact, the sysroot path is constructed as:
|
yann@2279
|
48 |
${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/${CT_SYSROOT_NAME}
|
yann@1219
|
49 |
|
bryanhundven@2207
|
50 |
config STATIC_TOOLCHAIN
|
bryanhundven@2207
|
51 |
bool
|
bryanhundven@2207
|
52 |
prompt "Build Static Toolchain (EXPERIMENTAL)"
|
bryanhundven@2207
|
53 |
depends on EXPERIMENTAL
|
bryanhundven@2207
|
54 |
default n
|
bryanhundven@2207
|
55 |
help
|
bryanhundven@2207
|
56 |
Build static host binaries.
|
bryanhundven@2207
|
57 |
|
bryanhundven@2207
|
58 |
If you wish to move the toolchain to another host, and you are not
|
bryanhundven@2207
|
59 |
confident that this host has the required versions of system libs, then
|
bryanhundven@2207
|
60 |
you can say 'Y' here, and all the host tools will be linked staticaly.
|
bryanhundven@2207
|
61 |
|
yann@2209
|
62 |
The impacted tools are:
|
bryanhundven@2210
|
63 |
- the GNU binutils
|
yann@2209
|
64 |
- the cross-gdb
|
yann@2209
|
65 |
|
bryanhundven@2207
|
66 |
The default is 'N', to build dynamicaly-linked host binaries.
|
bryanhundven@2207
|
67 |
|
bryanhundven@2207
|
68 |
NOTE: this has no connection to whether the target libraries will be
|
bryanhundven@2207
|
69 |
dynamic or static. This only applies to the tools themselves.
|
bryanhundven@2207
|
70 |
|
yann@1220
|
71 |
comment "Tuple completion and aliasing"
|
yann@1220
|
72 |
|
yann@41
|
73 |
config TARGET_VENDOR
|
yann@41
|
74 |
string
|
yann@1220
|
75 |
prompt "Tuple's vendor string"
|
yann@41
|
76 |
default "unknown"
|
yann@41
|
77 |
help
|
yann@335
|
78 |
Vendor part of the target tuple.
|
yann@41
|
79 |
|
yann@335
|
80 |
A tuple is of the form arch-vendor-kernel-system.
|
yann@41
|
81 |
You can set the second part, vendor, to whatever you see fit.
|
yann@41
|
82 |
Use a single word, or use underscores "_" to separate words.
|
yann@1094
|
83 |
Use neither dash nor space, as it breaks things.
|
yann@41
|
84 |
|
yann@1704
|
85 |
Keep the default (unknown) if you don't know better.
|
yann@41
|
86 |
|
yann@321
|
87 |
config TARGET_ALIAS_SED_EXPR
|
yann@321
|
88 |
string
|
yann@1220
|
89 |
prompt "Tuple's sed transform"
|
yann@321
|
90 |
default ""
|
yann@321
|
91 |
help
|
yann@321
|
92 |
Normaly, you'd call your toolchain components (especially gcc) by
|
yann@335
|
93 |
prefixing the target tuple followed by a dash and the component name
|
yann@321
|
94 |
(eg. armeb-unknown-linux-uclibc-gcc).
|
yann@321
|
95 |
|
yann@321
|
96 |
You can enter here a sed expression to be applied to ${CT_TARGET} to
|
yann@321
|
97 |
create an alias for your toolchain.
|
yann@321
|
98 |
|
yann@321
|
99 |
For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
|
yann@321
|
100 |
will create the armeb-foobar-linux-uclibc alias to the above-mentioned
|
yann@321
|
101 |
toolchain.
|
yann@321
|
102 |
|
yann@321
|
103 |
You shouldn't need to enter anything here, unless you plan to manually
|
yann@321
|
104 |
call the tools (autotools-based ./configure will use the standard name).
|
yann@321
|
105 |
|
yann@41
|
106 |
config TARGET_ALIAS
|
yann@41
|
107 |
string
|
yann@1220
|
108 |
prompt "Tuple's alias"
|
yann@41
|
109 |
default ""
|
yann@41
|
110 |
help
|
yann@321
|
111 |
Normaly, you'd call your toolchain components (especially gcc) by
|
yann@335
|
112 |
prefixing the target tuple followed by a dash and the component name
|
yann@41
|
113 |
(eg. armeb-unknown-linux-uclibc-gcc).
|
yann@41
|
114 |
|
yann@41
|
115 |
You can enter a shortcut here. This string will be used to create
|
yann@41
|
116 |
symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
|
yann@41
|
117 |
then gcc for your toolchain will also be available as "foo-bar-gcc" along
|
yann@41
|
118 |
with the original name).
|
yann@41
|
119 |
|
yann@41
|
120 |
You shouldn't need to enter anything here, unless you plan to manually
|
yann@41
|
121 |
call the tools (autotools-based ./configure will use the standard name).
|
yann@41
|
122 |
|
yann@41
|
123 |
comment "Toolchain type"
|
yann@41
|
124 |
|
yann@41
|
125 |
choice
|
yann@41
|
126 |
bool
|
yann@41
|
127 |
prompt "Type"
|
yann@41
|
128 |
default CROSS
|
yann@41
|
129 |
|
yann@41
|
130 |
config NATIVE
|
yann@41
|
131 |
bool
|
yann@1041
|
132 |
prompt "Native (NO CODE!) (EXPERIMENTAL)"
|
yann@41
|
133 |
depends on EXPERIMENTAL
|
yann@41
|
134 |
help
|
yann@41
|
135 |
Build a native toolchain.
|
yann@2227
|
136 |
See: "docs/6 - Toolchain types.txt"
|
yann@41
|
137 |
|
yann@41
|
138 |
config CROSS
|
yann@41
|
139 |
bool
|
yann@41
|
140 |
prompt "Cross"
|
yann@41
|
141 |
help
|
yann@41
|
142 |
Build a cross-toolchain.
|
yann@2227
|
143 |
See: "docs/6 - Toolchain types.txt"
|
yann@41
|
144 |
|
yann@41
|
145 |
config CROSS_NATIVE
|
yann@41
|
146 |
bool
|
yann@1041
|
147 |
prompt "Cross-native (NO CODE!) (EXPERIMENTAL)"
|
yann@41
|
148 |
depends on EXPERIMENTAL
|
yann@41
|
149 |
help
|
yann@41
|
150 |
Build a cross-native toolchain.
|
yann@2227
|
151 |
See: "docs/6 - Toolchain types.txt"
|
yann@41
|
152 |
|
yann@41
|
153 |
config CANADIAN
|
yann@41
|
154 |
bool
|
yann@1425
|
155 |
prompt "Canadian (EXPERIMENTAL)"
|
yann@41
|
156 |
depends on EXPERIMENTAL
|
yann@41
|
157 |
help
|
yann@41
|
158 |
Build a canadian-toolchain.
|
yann@2227
|
159 |
See: "docs/6 - Toolchain types.txt"
|
yann@41
|
160 |
|
yann@41
|
161 |
endchoice
|
yann@41
|
162 |
|
yann@96
|
163 |
config TOOLCHAIN_TYPE
|
yann@96
|
164 |
string
|
yann@96
|
165 |
default "native" if NATIVE
|
yann@96
|
166 |
default "cross" if CROSS
|
yann@96
|
167 |
default "cross-native" if CROSS_NATIVE
|
yann@96
|
168 |
default "canadian" if CANADIAN
|
yann@96
|
169 |
|
yann@1041
|
170 |
comment "Build system"
|
yann@1041
|
171 |
|
yann@41
|
172 |
config BUILD
|
yann@41
|
173 |
string
|
yann@1041
|
174 |
prompt "| Tuple (READ HELP!)"
|
yann@41
|
175 |
default ""
|
yann@41
|
176 |
help
|
yann@41
|
177 |
Canonical name of the machine building the toolchain.
|
yann@41
|
178 |
You should leave empty, unless you really now what you're doing.
|
yann@41
|
179 |
|
yann@1041
|
180 |
config BUILD_PREFIX
|
yann@41
|
181 |
string
|
yann@1041
|
182 |
prompt "| Tools prefix (READ HELP!)"
|
yann@1041
|
183 |
default ""
|
yann@41
|
184 |
help
|
yann@1041
|
185 |
If you have your *build system* tools in a weird location, and/or
|
yann@1041
|
186 |
they have an unusual prefix, enter it here.
|
yann@41
|
187 |
|
yann@1041
|
188 |
Usually, you should leave that empty!
|
yann@41
|
189 |
|
yann@1041
|
190 |
Eg.:
|
yann@1041
|
191 |
If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
|
yann@1041
|
192 |
should enter:
|
yann@1041
|
193 |
/opt/build-tools/bin/weird-
|
yann@1041
|
194 |
|
yann@1041
|
195 |
If your *build* gcc is /opt/build-tools/bin/weird-gcc and
|
yann@1041
|
196 |
/opt/build-tools/bin is in your PATH, you should enter:
|
yann@1041
|
197 |
weird-
|
yann@1041
|
198 |
|
yann@1041
|
199 |
If your *build* gcc is /opt/build-tools/bin/gcc then you
|
yann@1041
|
200 |
should enter (do not forget to add the trailing '/'):
|
yann@1041
|
201 |
/opt/build-tools/bin/
|
yann@1041
|
202 |
|
yann@1041
|
203 |
config BUILD_SUFFIX
|
yann@1041
|
204 |
string
|
yann@1041
|
205 |
prompt "| Tools suffix (READ HELP!)"
|
yann@1041
|
206 |
default ""
|
yann@1041
|
207 |
help
|
yann@1041
|
208 |
If your *build system* tools have an unusual suffix, enter it
|
yann@1041
|
209 |
here.
|
yann@1041
|
210 |
|
yann@1041
|
211 |
Usually, you should leave that empty!
|
yann@1041
|
212 |
|
yann@1041
|
213 |
Eg.:
|
yann@1041
|
214 |
If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
|
yann@1041
|
215 |
installed as gcc-3.4, then you should enter:
|
yann@1041
|
216 |
-3.4
|
yann@1041
|
217 |
|
yann@1041
|
218 |
It can happen that some of the tools have a suffix, when others
|
yann@1041
|
219 |
don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
|
yann@1041
|
220 |
for that by checking the tools without the suffix in case it can
|
yann@1041
|
221 |
not find some of the tool.
|
yann@1041
|
222 |
|
yann@1041
|
223 |
if CANADIAN
|
yann@1041
|
224 |
|
yann@1041
|
225 |
comment "Host system"
|
yann@41
|
226 |
|
yann@41
|
227 |
config HOST
|
yann@41
|
228 |
string
|
yann@1041
|
229 |
prompt "| Tuple (READ HELP!)"
|
yann@41
|
230 |
default ""
|
yann@41
|
231 |
help
|
yann@41
|
232 |
Canonical name of the machine running the toolchain.
|
yann@41
|
233 |
|
yann@1041
|
234 |
config HOST_PREFIX
|
yann@41
|
235 |
string
|
yann@1041
|
236 |
prompt "| Tools prefix (READ HELP!)"
|
yann@1041
|
237 |
default ""
|
yann@41
|
238 |
help
|
yann@1041
|
239 |
If you have your *host system* tools in a weird location, and/or
|
yann@1041
|
240 |
they have an unusual prefix, enter it here.
|
yann@1041
|
241 |
|
yann@1041
|
242 |
Usually, you should leave that empty!
|
yann@1041
|
243 |
|
yann@1041
|
244 |
Eg.:
|
yann@1041
|
245 |
If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
|
yann@1041
|
246 |
should enter:
|
yann@1041
|
247 |
/opt/host-tools/bin/weird-
|
yann@1041
|
248 |
|
yann@1041
|
249 |
If your *host* gcc is /opt/host-tools/bin/weird-gcc and
|
yann@1041
|
250 |
/opt/host-tools/bin is in your PATH, you should enter:
|
yann@1041
|
251 |
weird-
|
yann@1041
|
252 |
|
yann@1041
|
253 |
If your *host* gcc is /opt/host-tools/bin/gcc then you
|
yann@1041
|
254 |
should enter (do not forget to add the trailing '/'):
|
yann@1041
|
255 |
/opt/host-tools/bin/
|
yann@41
|
256 |
|
yann@1041
|
257 |
config HOST_SUFFIX
|
yann@41
|
258 |
string
|
yann@1041
|
259 |
prompt "| Tools suffix (READ HELP!)"
|
yann@1041
|
260 |
default ""
|
yann@41
|
261 |
help
|
yann@1041
|
262 |
If your *host system* tools have an unusual suffix, enter it
|
yann@1041
|
263 |
here.
|
yann@1041
|
264 |
|
yann@1041
|
265 |
Usually, you should leave that empty!
|
yann@1041
|
266 |
|
yann@1041
|
267 |
Eg.:
|
yann@1041
|
268 |
If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
|
yann@1041
|
269 |
installed as gcc-3.4, then you should enter:
|
yann@1041
|
270 |
-3.4
|
yann@1041
|
271 |
|
yann@1041
|
272 |
It can happen that some of the tools have a suffix, when others
|
yann@1041
|
273 |
don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
|
yann@1041
|
274 |
for that by checking the tools without the suffix in case it can
|
yann@1041
|
275 |
not find some of the tool.
|
yann@1041
|
276 |
|
yann@1041
|
277 |
endif # CANADIAN
|
yann@1041
|
278 |
|
yann@1041
|
279 |
if CROSS_NATIVE || CANADIAN
|
yann@1041
|
280 |
|
yann@1041
|
281 |
comment "Target system"
|
yann@1041
|
282 |
|
yann@1041
|
283 |
config TARGET_PREFIX
|
yann@1041
|
284 |
string
|
yann@1041
|
285 |
prompt "| Tools prefix (READ HELP!)"
|
yann@1041
|
286 |
default ""
|
yann@1041
|
287 |
help
|
yann@1041
|
288 |
If you have your *target system* tools in a weird location, and/or
|
yann@1041
|
289 |
they have an unusual prefix, enter it here.
|
yann@1041
|
290 |
|
yann@1041
|
291 |
Usually, you should leave that empty!
|
yann@1041
|
292 |
|
yann@1041
|
293 |
Eg.:
|
yann@1041
|
294 |
If your *target* gcc is /opt/target-tools/bin/weird-gcc then you
|
yann@1041
|
295 |
should enter:
|
yann@1041
|
296 |
/opt/target-tools/bin/weird-
|
yann@1041
|
297 |
|
yann@1041
|
298 |
If your *target* gcc is /opt/target-tools/bin/weird-gcc and
|
yann@1041
|
299 |
/opt/target-tools/bin is in your PATH, you should enter:
|
yann@1041
|
300 |
weird-
|
yann@1041
|
301 |
|
yann@1041
|
302 |
If your *target* gcc is /opt/target-tools/bin/gcc then you
|
yann@1041
|
303 |
should enter (do not forget to add the trailing '/'):
|
yann@1041
|
304 |
/opt/target-tools/bin/
|
yann@1041
|
305 |
|
yann@1041
|
306 |
config TARGET_SUFFIX
|
yann@1041
|
307 |
string
|
yann@1041
|
308 |
prompt "| Tools suffix (READ HELP!)"
|
yann@1041
|
309 |
default ""
|
yann@1041
|
310 |
help
|
yann@1041
|
311 |
If your *target system* tools have an unusual suffix, enter it
|
yann@1041
|
312 |
here.
|
yann@1041
|
313 |
|
yann@1041
|
314 |
Usually, you should leave that empty!
|
yann@1041
|
315 |
|
yann@1041
|
316 |
Eg.:
|
yann@1041
|
317 |
If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
|
yann@1041
|
318 |
installed as gcc-3.4, then you should enter:
|
yann@1041
|
319 |
-3.4
|
yann@1041
|
320 |
|
yann@1041
|
321 |
It can happen that some of the tools have a suffix, when others
|
yann@1041
|
322 |
don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
|
yann@1041
|
323 |
for that by checking the tools without the suffix in case it can
|
yann@1041
|
324 |
not find some of the tool.
|
yann@1041
|
325 |
|
yann@1041
|
326 |
endif # CROSS_NATIVE || CANADIAN
|
yann@41
|
327 |
|
yann@41
|
328 |
endmenu
|