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"
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 If this string is left empty, the actual package version will be:
89 "crosstool-NG ${CT_VERSION}"
90 Otherwise, it will be:
91 "crosstool-NG ${CT_VERSION} - ${CT_TOOLCHAIN_PKGVERSION}"
93 This is passed to the configure flag --with-pkgversion.
95 config TOOLCHAIN_BUGURL
97 prompt "Toolchain bug URL"
100 Specify the URL that users should visit if they wish to report a bug.
102 comment "Tuple completion and aliasing"
106 prompt "Tuple's vendor string"
109 Vendor part of the target tuple.
111 A tuple is of the form arch-vendor-kernel-system.
112 You can set the second part, vendor, to whatever you see fit.
113 Use a single word, or use underscores "_" to separate words.
114 Use neither dash nor space, as it breaks things.
116 Keep the default (unknown) if you don't know better.
118 config TARGET_ALIAS_SED_EXPR
120 prompt "Tuple's sed transform"
123 Normaly, you'd call your toolchain components (especially gcc) by
124 prefixing the target tuple followed by a dash and the component name
125 (eg. armeb-unknown-linux-uclibc-gcc).
127 You can enter here a sed expression to be applied to ${CT_TARGET} to
128 create an alias for your toolchain.
130 For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
131 will create the armeb-foobar-linux-uclibc alias to the above-mentioned
134 You shouldn't need to enter anything here, unless you plan to manually
135 call the tools (autotools-based ./configure will use the standard name).
139 prompt "Tuple's alias"
142 Normaly, you'd call your toolchain components (especially gcc) by
143 prefixing the target tuple followed by a dash and the component name
144 (eg. armeb-unknown-linux-uclibc-gcc).
146 You can enter a shortcut here. This string will be used to create
147 symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
148 then gcc for your toolchain will also be available as "foo-bar-gcc" along
149 with the original name).
151 You shouldn't need to enter anything here, unless you plan to manually
152 call the tools (autotools-based ./configure will use the standard name).
154 comment "Toolchain type"
163 prompt "Native (NO CODE!) (EXPERIMENTAL)"
164 depends on EXPERIMENTAL
166 Build a native toolchain.
167 See: "docs/6 - Toolchain types.txt"
173 Build a cross-toolchain.
174 See: "docs/6 - Toolchain types.txt"
178 prompt "Cross-native (NO CODE!) (EXPERIMENTAL)"
179 depends on EXPERIMENTAL
181 Build a cross-native toolchain.
182 See: "docs/6 - Toolchain types.txt"
186 prompt "Canadian (EXPERIMENTAL)"
187 depends on EXPERIMENTAL
189 Build a canadian-toolchain.
190 See: "docs/6 - Toolchain types.txt"
194 config TOOLCHAIN_TYPE
196 default "native" if NATIVE
197 default "cross" if CROSS
198 default "cross-native" if CROSS_NATIVE
199 default "canadian" if CANADIAN
201 comment "Build system"
205 prompt "| Tuple (READ HELP!)"
208 Canonical name of the machine building the toolchain.
209 You should leave empty, unless you really now what you're doing.
213 prompt "| Tools prefix (READ HELP!)"
216 If you have your *build system* tools in a weird location, and/or
217 they have an unusual prefix, enter it here.
219 Usually, you should leave that empty!
222 If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
224 /opt/build-tools/bin/weird-
226 If your *build* gcc is /opt/build-tools/bin/weird-gcc and
227 /opt/build-tools/bin is in your PATH, you should enter:
230 If your *build* gcc is /opt/build-tools/bin/gcc then you
231 should enter (do not forget to add the trailing '/'):
232 /opt/build-tools/bin/
236 prompt "| Tools suffix (READ HELP!)"
239 If your *build system* tools have an unusual suffix, enter it
242 Usually, you should leave that empty!
245 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
246 installed as gcc-3.4, then you should enter:
249 It can happen that some of the tools have a suffix, when others
250 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
251 for that by checking the tools without the suffix in case it can
252 not find some of the tool.
256 comment "Host system"
260 prompt "| Tuple (READ HELP!)"
263 Canonical name of the machine running the toolchain.
267 prompt "| Tools prefix (READ HELP!)"
270 If you have your *host system* tools in a weird location, and/or
271 they have an unusual prefix, enter it here.
273 Usually, you should leave that empty!
276 If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
278 /opt/host-tools/bin/weird-
280 If your *host* gcc is /opt/host-tools/bin/weird-gcc and
281 /opt/host-tools/bin is in your PATH, you should enter:
284 If your *host* gcc is /opt/host-tools/bin/gcc then you
285 should enter (do not forget to add the trailing '/'):
290 prompt "| Tools suffix (READ HELP!)"
293 If your *host system* tools have an unusual suffix, enter it
296 Usually, you should leave that empty!
299 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
300 installed as gcc-3.4, then you should enter:
303 It can happen that some of the tools have a suffix, when others
304 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
305 for that by checking the tools without the suffix in case it can
306 not find some of the tool.
310 if CROSS_NATIVE || CANADIAN
312 comment "Target system"
316 prompt "| Tools prefix (READ HELP!)"
319 If you have your *target system* tools in a weird location, and/or
320 they have an unusual prefix, enter it here.
322 Usually, you should leave that empty!
325 If your *target* gcc is /opt/target-tools/bin/weird-gcc then you
327 /opt/target-tools/bin/weird-
329 If your *target* gcc is /opt/target-tools/bin/weird-gcc and
330 /opt/target-tools/bin is in your PATH, you should enter:
333 If your *target* gcc is /opt/target-tools/bin/gcc then you
334 should enter (do not forget to add the trailing '/'):
335 /opt/target-tools/bin/
339 prompt "| Tools suffix (READ HELP!)"
342 If your *target system* tools have an unusual suffix, enter it
345 Usually, you should leave that empty!
348 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
349 installed as gcc-3.4, then you should enter:
352 It can happen that some of the tools have a suffix, when others
353 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
354 for that by checking the tools without the suffix in case it can
355 not find some of the tool.
357 endif # CROSS_NATIVE || CANADIAN