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 # 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_static_link_ok
55 depends on CONFIGURE_has_static_libstdcxx
56 # Add new deps here! :-)
58 config STATIC_TOOLCHAIN
60 prompt "Build Static Toolchain (EXPERIMENTAL)"
61 depends on EXPERIMENTAL
62 depends on STATIC_TOOLCHAIN_POSSIBLE
64 Build static host binaries.
66 If you wish to move the toolchain to another host, and you are not
67 confident that this host has the required versions of system libs, then
68 you can say 'Y' here, and all the host tools will be linked statically.
70 The impacted tools are:
74 The default is 'N', to build dynamicaly-linked host binaries.
76 NOTE: this has no connection to whether the target libraries will be
77 dynamic or static. This only applies to the tools themselves.
79 config TOOLCHAIN_PKGVERSION
81 prompt "Toolchain ID string"
84 Specify a string that identifies your package. You may wish to include
85 a build number or build date. This version string will be included in
86 the output of gcc --version, and also in binutils, eglibc, gdb and
89 If this string is left empty, the actual package version will be:
90 "crosstool-NG ${CT_VERSION}"
91 Otherwise, it will be:
92 "crosstool-NG ${CT_VERSION} - ${CT_TOOLCHAIN_PKGVERSION}"
94 This is passed to the configure flag --with-pkgversion.
96 config TOOLCHAIN_BUGURL
98 prompt "Toolchain bug URL"
101 Specify the URL that users should visit if they wish to report a bug.
103 comment "Tuple completion and aliasing"
107 prompt "Tuple's vendor string"
110 Vendor part of the target tuple.
112 A tuple is of the form arch-vendor-kernel-system.
113 You can set the second part, vendor, to whatever you see fit.
114 Use a single word, or use underscores "_" to separate words.
115 Use neither dash nor space, as it breaks things.
117 Keep the default (unknown) if you don't know better.
119 config TARGET_ALIAS_SED_EXPR
121 prompt "Tuple's sed transform"
124 Normally, you'd call your toolchain components (especially gcc) by
125 prefixing the target tuple followed by a dash and the component name
126 (eg. armeb-unknown-linux-uclibc-gcc).
128 You can enter here a sed expression to be applied to ${CT_TARGET} to
129 create an alias for your toolchain.
131 For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
132 will create the armeb-foobar-linux-uclibc alias to the above-mentioned
135 You shouldn't need to enter anything here, unless you plan to manually
136 call the tools (autotools-based ./configure will use the standard name).
140 prompt "Tuple's alias"
143 Normally, you'd call your toolchain components (especially gcc) by
144 prefixing the target tuple followed by a dash and the component name
145 (eg. armeb-unknown-linux-uclibc-gcc).
147 You can enter a shortcut here. This string will be used to create
148 symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
149 then gcc for your toolchain will also be available as "foo-bar-gcc" along
150 with the original name).
152 You shouldn't need to enter anything here, unless you plan to manually
153 call the tools (autotools-based ./configure will use the standard name).
155 comment "Toolchain type"
164 prompt "Native (NO CODE!) (EXPERIMENTAL)"
165 depends on EXPERIMENTAL
167 Build a native toolchain.
168 See: "docs/6 - Toolchain types.txt"
174 Build a cross-toolchain.
175 See: "docs/6 - Toolchain types.txt"
179 prompt "Cross-native (NO CODE!) (EXPERIMENTAL)"
180 depends on EXPERIMENTAL
182 Build a cross-native toolchain.
183 See: "docs/6 - Toolchain types.txt"
187 prompt "Canadian (EXPERIMENTAL)"
188 depends on EXPERIMENTAL
190 Build a canadian-toolchain.
191 See: "docs/6 - Toolchain types.txt"
195 config TOOLCHAIN_TYPE
197 default "native" if NATIVE
198 default "cross" if CROSS
199 default "cross-native" if CROSS_NATIVE
200 default "canadian" if CANADIAN
202 comment "Build system"
206 prompt "| Tuple (READ HELP!)"
209 Canonical name of the machine building the toolchain.
210 You should leave empty, unless you really now what you're doing.
214 prompt "| Tools prefix (READ HELP!)"
217 If you have your *build system* tools in a weird location, and/or
218 they have an unusual prefix, enter it here.
220 Usually, you should leave that empty!
223 If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
225 /opt/build-tools/bin/weird-
227 If your *build* gcc is /opt/build-tools/bin/weird-gcc and
228 /opt/build-tools/bin is in your PATH, you should enter:
231 If your *build* gcc is /opt/build-tools/bin/gcc then you
232 should enter (do not forget to add the trailing '/'):
233 /opt/build-tools/bin/
237 prompt "| Tools suffix (READ HELP!)"
240 If your *build system* tools have an unusual suffix, enter it
243 Usually, you should leave that empty!
246 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
247 installed as gcc-3.4, then you should enter:
250 It can happen that some of the tools have a suffix, when others
251 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
252 for that by checking the tools without the suffix in case it can
253 not find some of the tool.
257 comment "Host system"
261 prompt "| Tuple (READ HELP!)"
264 Canonical name of the machine running the toolchain.
268 prompt "| Tools prefix (READ HELP!)"
271 If you have your *host system* tools in a weird location, and/or
272 they have an unusual prefix, enter it here.
274 Usually, you should leave that empty!
277 If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
279 /opt/host-tools/bin/weird-
281 If your *host* gcc is /opt/host-tools/bin/weird-gcc and
282 /opt/host-tools/bin is in your PATH, you should enter:
285 If your *host* gcc is /opt/host-tools/bin/gcc then you
286 should enter (do not forget to add the trailing '/'):
291 prompt "| Tools suffix (READ HELP!)"
294 If your *host system* tools have an unusual suffix, enter it
297 Usually, you should leave that empty!
300 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
301 installed as gcc-3.4, then you should enter:
304 It can happen that some of the tools have a suffix, when others
305 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
306 for that by checking the tools without the suffix in case it can
307 not find some of the tool.
311 if CROSS_NATIVE || CANADIAN
313 comment "Target system"
317 prompt "| Tools prefix (READ HELP!)"
320 If you have your *target system* tools in a weird location, and/or
321 they have an unusual prefix, enter it here.
323 Usually, you should leave that empty!
326 If your *target* gcc is /opt/target-tools/bin/weird-gcc then you
328 /opt/target-tools/bin/weird-
330 If your *target* gcc is /opt/target-tools/bin/weird-gcc and
331 /opt/target-tools/bin is in your PATH, you should enter:
334 If your *target* gcc is /opt/target-tools/bin/gcc then you
335 should enter (do not forget to add the trailing '/'):
336 /opt/target-tools/bin/
340 prompt "| Tools suffix (READ HELP!)"
343 If your *target system* tools have an unusual suffix, enter it
346 Usually, you should leave that empty!
349 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
350 installed as gcc-3.4, then you should enter:
353 It can happen that some of the tools have a suffix, when others
354 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
355 for that by checking the tools without the suffix in case it can
356 not find some of the tool.
358 endif # CROSS_NATIVE || CANADIAN