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 (EXPERIMENTAL)"
55 depends on EXPERIMENTAL
56 select WANTS_STATIC_LINK
58 Build static host binaries.
60 If you wish to move the toolchain to another host, and you are not
61 confident that this host has the required versions of system libs, then
62 you can say 'Y' here, and all the host tools will be linked statically.
64 The impacted tools are:
65 - the cross-binutils (GNU binutils, elf2flt)
66 - the cross-compiler (gcc)
67 - the cross-debugger (gdb)
69 The default is 'N', to build dynamicaly-linked host binaries.
71 NOTE: this has no connection to whether the target libraries will be
72 dynamic or static. This only applies to the tools themselves.
74 config TOOLCHAIN_PKGVERSION
76 prompt "Toolchain ID string"
79 Specify a string that identifies your package. You may wish to include
80 a build number or build date. This version string will be included in
81 the output of gcc --version, and also in binutils, eglibc, gdb and
84 If this string is left empty, the actual package version will be:
85 "crosstool-NG ${CT_VERSION}"
86 Otherwise, it will be:
87 "crosstool-NG ${CT_VERSION} - ${CT_TOOLCHAIN_PKGVERSION}"
89 This is passed to the configure flag --with-pkgversion.
91 config TOOLCHAIN_BUGURL
93 prompt "Toolchain bug URL"
96 Specify the URL that users should visit if they wish to report a bug.
98 comment "Tuple completion and aliasing"
102 prompt "Tuple's vendor string"
105 Vendor part of the target tuple.
107 A tuple is of the form arch-vendor-kernel-system.
108 You can set the second part, vendor, to whatever you see fit.
109 Use a single word, or use underscores "_" to separate words.
110 Use neither dash nor space, as it breaks things.
112 Keep the default (unknown) if you don't know better.
114 config TARGET_ALIAS_SED_EXPR
116 prompt "Tuple's sed transform"
119 Normally, you'd call your toolchain components (especially gcc) by
120 prefixing the target tuple followed by a dash and the component name
121 (eg. armeb-unknown-linux-uclibc-gcc).
123 You can enter here a sed expression to be applied to ${CT_TARGET} to
124 create an alias for your toolchain.
126 For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
127 will create the armeb-foobar-linux-uclibc alias to the above-mentioned
130 You shouldn't need to enter anything here, unless you plan to manually
131 call the tools (autotools-based ./configure will use the standard name).
135 prompt "Tuple's alias"
138 Normally, you'd call your toolchain components (especially gcc) by
139 prefixing the target tuple followed by a dash and the component name
140 (eg. armeb-unknown-linux-uclibc-gcc).
142 You can enter a shortcut here. This string will be used to create
143 symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
144 then gcc for your toolchain will also be available as "foo-bar-gcc" along
145 with the original name).
147 You shouldn't need to enter anything here, unless you plan to manually
148 call the tools (autotools-based ./configure will use the standard name).
150 comment "Toolchain type"
159 prompt "Native (NO CODE!) (EXPERIMENTAL)"
160 depends on EXPERIMENTAL
162 Build a native toolchain.
163 See: "docs/6 - Toolchain types.txt"
169 Build a cross-toolchain.
170 See: "docs/6 - Toolchain types.txt"
174 prompt "Cross-native (NO CODE!) (EXPERIMENTAL)"
175 depends on EXPERIMENTAL
177 Build a cross-native toolchain.
178 See: "docs/6 - Toolchain types.txt"
182 prompt "Canadian (EXPERIMENTAL)"
183 depends on EXPERIMENTAL
185 Build a canadian-toolchain.
186 See: "docs/6 - Toolchain types.txt"
190 config TOOLCHAIN_TYPE
192 default "native" if NATIVE
193 default "cross" if CROSS
194 default "cross-native" if CROSS_NATIVE
195 default "canadian" if CANADIAN
197 comment "Build system"
201 prompt "| Tuple (READ HELP!)"
204 Canonical name of the machine building the toolchain.
205 You should leave empty, unless you really know what you're doing.
209 prompt "| Tools prefix (READ HELP!)"
212 If you have your *build system* tools in a weird location, and/or
213 they have an unusual prefix, enter it here.
215 Usually, you should leave that empty!
218 If your *build* gcc is /opt/build-tools/bin/weird-gcc then you
220 /opt/build-tools/bin/weird-
222 If your *build* gcc is /opt/build-tools/bin/weird-gcc and
223 /opt/build-tools/bin is in your PATH, you should enter:
226 If your *build* gcc is /opt/build-tools/bin/gcc then you
227 should enter (do not forget to add the trailing '/'):
228 /opt/build-tools/bin/
232 prompt "| Tools suffix (READ HELP!)"
235 If your *build system* tools have an unusual suffix, enter it
238 Usually, you should leave that empty!
241 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
242 installed as gcc-3.4, then you should enter:
245 It can happen that some of the tools have a suffix, when others
246 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
247 for that by checking the tools without the suffix in case it can
248 not find some of the tool.
252 comment "Host system"
256 prompt "| Tuple (READ HELP!)"
259 Canonical name of the machine running the toolchain.
263 prompt "| Tools prefix (READ HELP!)"
266 If you have your *host system* tools in a weird location, and/or
267 they have an unusual prefix, enter it here.
269 Usually, you should leave that empty!
272 If your *host* gcc is /opt/host-tools/bin/weird-gcc then you
274 /opt/host-tools/bin/weird-
276 If your *host* gcc is /opt/host-tools/bin/weird-gcc and
277 /opt/host-tools/bin is in your PATH, you should enter:
280 If your *host* gcc is /opt/host-tools/bin/gcc then you
281 should enter (do not forget to add the trailing '/'):
286 prompt "| Tools suffix (READ HELP!)"
289 If your *host system* tools have an unusual suffix, enter it
292 Usually, you should leave that empty!
295 If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2
296 installed as gcc-3.4, then you should enter:
299 It can happen that some of the tools have a suffix, when others
300 don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts
301 for that by checking the tools without the suffix in case it can
302 not find some of the tool.
306 comment "Misc options"
308 config TOOLCHAIN_ENABLE_NLS
312 Say 'Y' here to enable native language support (nls).