1 menu "Toolchain options"
3 comment "General toolchain options"
12 prompt "Use sysroot'ed toolchain"
15 Use the 'shinny new' sysroot feature of gcc: libraries split between
16 prefix/target/sysroot/lib and prefix/target/sysroot/usr/lib
18 You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
22 prompt "sysroot directory name" if ! BACKEND
23 depends on USE_SYSROOT
26 Enter the base name of the sysroot directory. Usually, this simply
27 is 'sysroot' (the default) or 'sys-root'.
29 You are free to enter anything here, except for spaces, and '/'
30 (see SYSROOT_DIR_PREFIX, below). If you leave this empy, then the
31 default 'sysroot' is used.
33 config SYSROOT_DIR_PREFIX
35 prompt "sysroot prefix dir (READ HELP)" if ! BACKEND
36 depends on USE_SYSROOT
40 * Unless you realy know you need that, leave it empty!
43 This string will be interpreted as a directory component to be added
44 to the sysroot path, just before the actual sysroot directory.
46 In fact, the sysroot path is constructed as:
47 ${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/${CT_SYSROOT_NAME}
49 # In case we need to add more conditions to enable static
50 # toolchain, we'll be adding them here
51 config STATIC_TOOLCHAIN_POSSIBLE
54 depends on CONFIGURE_has_static_libstdcxx
55 # Add new deps here! :-)
57 config STATIC_TOOLCHAIN
59 prompt "Build Static Toolchain (EXPERIMENTAL)"
60 depends on EXPERIMENTAL
61 depends on STATIC_TOOLCHAIN_POSSIBLE
63 Build static host binaries.
65 If you wish to move the toolchain to another host, and you are not
66 confident that this host has the required versions of system libs, then
67 you can say 'Y' here, and all the host tools will be linked staticaly.
69 The impacted tools are:
73 The default is 'N', to build dynamicaly-linked host binaries.
75 NOTE: this has no connection to whether the target libraries will be
76 dynamic or static. This only applies to the tools themselves.
78 config TOOLCHAIN_PKGVERSION
80 prompt "Toolchain ID string"
81 default "crosstool-NG-${CT_VERSION}"
83 Specify a string that identifies your package. You may wish to include
84 a build number or build date. This version string will be included in
85 the output of gcc --version, and also in binutils, eglibc, gdb and
88 This is passed to the configure flag --with-pkgversion.
90 config TOOLCHAIN_BUGURL
92 prompt "Toolchain bug URL"
95 Specify the URL that users should visit if they wish to report a bug.
97 comment "Tuple completion and aliasing"
101 prompt "Tuple's vendor string"
104 Vendor part of the target tuple.
106 A tuple is of the form arch-vendor-kernel-system.
107 You can set the second part, vendor, to whatever you see fit.
108 Use a single word, or use underscores "_" to separate words.
109 Use neither dash nor space, as it breaks things.
111 Keep the default (unknown) if you don't know better.
113 config TARGET_ALIAS_SED_EXPR
115 prompt "Tuple's sed transform"
118 Normaly, you'd call your toolchain components (especially gcc) by
119 prefixing the target tuple followed by a dash and the component name
120 (eg. armeb-unknown-linux-uclibc-gcc).
122 You can enter here a sed expression to be applied to ${CT_TARGET} to
123 create an alias for your toolchain.
125 For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
126 will create the armeb-foobar-linux-uclibc alias to the above-mentioned
129 You shouldn't need to enter anything here, unless you plan to manually
130 call the tools (autotools-based ./configure will use the standard name).
134 prompt "Tuple's alias"
137 Normaly, you'd call your toolchain components (especially gcc) by
138 prefixing the target tuple followed by a dash and the component name
139 (eg. armeb-unknown-linux-uclibc-gcc).
141 You can enter a shortcut here. This string will be used to create
142 symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
143 then gcc for your toolchain will also be available as "foo-bar-gcc" along
144 with the original name).
146 You shouldn't need to enter anything here, unless you plan to manually
147 call the tools (autotools-based ./configure will use the standard name).
149 comment "Toolchain type"
158 prompt "Native (NO CODE!) (EXPERIMENTAL)"
159 depends on EXPERIMENTAL
161 Build a native toolchain.
162 See: "docs/6 - Toolchain types.txt"
168 Build a cross-toolchain.
169 See: "docs/6 - Toolchain types.txt"
173 prompt "Cross-native (NO CODE!) (EXPERIMENTAL)"
174 depends on EXPERIMENTAL
176 Build a cross-native toolchain.
177 See: "docs/6 - Toolchain types.txt"
181 prompt "Canadian (EXPERIMENTAL)"
182 depends on EXPERIMENTAL
184 Build a canadian-toolchain.
185 See: "docs/6 - Toolchain types.txt"
189 config TOOLCHAIN_TYPE
191 default "native" if NATIVE
192 default "cross" if CROSS
193 default "cross-native" if CROSS_NATIVE
194 default "canadian" if CANADIAN
196 comment "Build system"
200 prompt "| Tuple (READ HELP!)"
203 Canonical name of the machine building the toolchain.
204 You should leave empty, unless you really now what you're doing.
208 prompt "| Tools prefix (READ HELP!)"
211 If you have your *build system* tools in a weird location, and/or
212 they have an unusual prefix, enter it here.
214 Usually, you should leave that empty!
217 If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
219 /opt/build-tools/bin/weird-
221 If your *build* gcc is /opt/build-tools/bin/weird-gcc and
222 /opt/build-tools/bin is in your PATH, you should enter:
225 If your *build* gcc is /opt/build-tools/bin/gcc then you
226 should enter (do not forget to add the trailing '/'):
227 /opt/build-tools/bin/
231 prompt "| Tools suffix (READ HELP!)"
234 If your *build system* tools have an unusual suffix, enter it
237 Usually, you should leave that empty!
240 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
241 installed as gcc-3.4, then you should enter:
244 It can happen that some of the tools have a suffix, when others
245 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
246 for that by checking the tools without the suffix in case it can
247 not find some of the tool.
251 comment "Host system"
255 prompt "| Tuple (READ HELP!)"
258 Canonical name of the machine running the toolchain.
262 prompt "| Tools prefix (READ HELP!)"
265 If you have your *host system* tools in a weird location, and/or
266 they have an unusual prefix, enter it here.
268 Usually, you should leave that empty!
271 If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
273 /opt/host-tools/bin/weird-
275 If your *host* gcc is /opt/host-tools/bin/weird-gcc and
276 /opt/host-tools/bin is in your PATH, you should enter:
279 If your *host* gcc is /opt/host-tools/bin/gcc then you
280 should enter (do not forget to add the trailing '/'):
285 prompt "| Tools suffix (READ HELP!)"
288 If your *host system* tools have an unusual suffix, enter it
291 Usually, you should leave that empty!
294 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
295 installed as gcc-3.4, then you should enter:
298 It can happen that some of the tools have a suffix, when others
299 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
300 for that by checking the tools without the suffix in case it can
301 not find some of the tool.
305 if CROSS_NATIVE || CANADIAN
307 comment "Target system"
311 prompt "| Tools prefix (READ HELP!)"
314 If you have your *target system* tools in a weird location, and/or
315 they have an unusual prefix, enter it here.
317 Usually, you should leave that empty!
320 If your *target* gcc is /opt/target-tools/bin/weird-gcc then you
322 /opt/target-tools/bin/weird-
324 If your *target* gcc is /opt/target-tools/bin/weird-gcc and
325 /opt/target-tools/bin is in your PATH, you should enter:
328 If your *target* gcc is /opt/target-tools/bin/gcc then you
329 should enter (do not forget to add the trailing '/'):
330 /opt/target-tools/bin/
334 prompt "| Tools suffix (READ HELP!)"
337 If your *target system* tools have an unusual suffix, enter it
340 Usually, you should leave that empty!
343 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
344 installed as gcc-3.4, then you should enter:
347 It can happen that some of the tools have a suffix, when others
348 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
349 for that by checking the tools without the suffix in case it can
350 not find some of the tool.
352 endif # CROSS_NATIVE || CANADIAN