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 empty, 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 really 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 config WANTS_STATIC_LINK
52 config STATIC_TOOLCHAIN
54 prompt "Build Static Toolchain"
55 select WANTS_STATIC_LINK
57 Build static host binaries.
59 If you wish to move the toolchain to another host, and you are not
60 confident that this host has the required versions of system libs, then
61 you can say 'Y' here, and all the host tools will be linked statically.
63 The impacted tools are:
64 - the cross-binutils (GNU binutils, elf2flt)
65 - the cross-compiler (gcc)
66 - the cross-debugger (gdb)
68 The default is 'N', to build dynamicaly-linked host binaries.
70 NOTE: this has no connection to whether the target libraries will be
71 dynamic or static. This only applies to the tools themselves.
73 config TOOLCHAIN_PKGVERSION
75 prompt "Toolchain ID string"
78 Specify a string that identifies your package. You may wish to include
79 a build number or build date. This version string will be included in
80 the output of gcc --version, and also in binutils, eglibc, gdb and
83 If this string is left empty, the actual package version will be:
84 "crosstool-NG ${CT_VERSION}"
85 Otherwise, it will be:
86 "crosstool-NG ${CT_VERSION} - ${CT_TOOLCHAIN_PKGVERSION}"
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 Normally, 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 Normally, 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"
183 Build a canadian-toolchain.
184 See: "docs/6 - Toolchain types.txt"
188 config TOOLCHAIN_TYPE
190 default "native" if NATIVE
191 default "cross" if CROSS
192 default "cross-native" if CROSS_NATIVE
193 default "canadian" if CANADIAN
195 comment "Build system"
199 prompt "| Tuple (READ HELP!)"
202 Canonical name of the machine building the toolchain.
203 You should leave empty, unless you really know what you're doing.
207 prompt "| Tools prefix (READ HELP!)"
210 If you have your *build system* tools in a weird location, and/or
211 they have an unusual prefix, enter it here.
213 Usually, you should leave that empty!
216 If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
218 /opt/build-tools/bin/weird-
220 If your *build* gcc is /opt/build-tools/bin/weird-gcc and
221 /opt/build-tools/bin is in your PATH, you should enter:
224 If your *build* gcc is /opt/build-tools/bin/gcc then you
225 should enter (do not forget to add the trailing '/'):
226 /opt/build-tools/bin/
230 prompt "| Tools suffix (READ HELP!)"
233 If your *build system* tools have an unusual suffix, enter it
236 Usually, you should leave that empty!
239 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
240 installed as gcc-3.4, then you should enter:
243 It can happen that some of the tools have a suffix, when others
244 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
245 for that by checking the tools without the suffix in case it can
246 not find some of the tool.
250 comment "Host system"
254 prompt "| Tuple (READ HELP!)"
257 Canonical name of the machine running the toolchain.
261 prompt "| Tools prefix (READ HELP!)"
264 If you have your *host system* tools in a weird location, and/or
265 they have an unusual prefix, enter it here.
267 Usually, you should leave that empty!
270 If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
272 /opt/host-tools/bin/weird-
274 If your *host* gcc is /opt/host-tools/bin/weird-gcc and
275 /opt/host-tools/bin is in your PATH, you should enter:
278 If your *host* gcc is /opt/host-tools/bin/gcc then you
279 should enter (do not forget to add the trailing '/'):
284 prompt "| Tools suffix (READ HELP!)"
287 If your *host system* tools have an unusual suffix, enter it
290 Usually, you should leave that empty!
293 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
294 installed as gcc-3.4, then you should enter:
297 It can happen that some of the tools have a suffix, when others
298 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
299 for that by checking the tools without the suffix in case it can
300 not find some of the tool.
304 comment "Misc options"
306 config TOOLCHAIN_ENABLE_NLS
310 Say 'Y' here to enable native language support (nls).