yann@41: menu "Toolchain options" yann@41: yann@41: comment "General toolchain options" yann@41: yann@2281: config FORCE_SYSROOT yann@2281: bool yann@2281: default y if !OBSOLETE yann@2281: select USE_SYSROOT yann@2281: yann@41: config USE_SYSROOT yann@41: bool yann@41: prompt "Use sysroot'ed toolchain" yann@41: default y yann@41: help yann@41: Use the 'shinny new' sysroot feature of gcc: libraries split between yann@2279: prefix/target/sysroot/lib and prefix/target/sysroot/usr/lib yann@41: yann@41: You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'. yann@41: yann@2279: config SYSROOT_NAME yann@2279: string yann@2407: prompt "sysroot directory name" if ! BACKEND yann@2279: depends on USE_SYSROOT yann@2279: default "sysroot" yann@2279: help yann@2279: Enter the base name of the sysroot directory. Usually, this simply yann@2279: is 'sysroot' (the default) or 'sys-root'. yann@2279: yann@2279: You are free to enter anything here, except for spaces, and '/' yann@2279: (see SYSROOT_DIR_PREFIX, below). If you leave this empy, then the yann@2279: default 'sysroot' is used. yann@2279: yann@1219: config SYSROOT_DIR_PREFIX yann@1219: string yann@1865: prompt "sysroot prefix dir (READ HELP)" if ! BACKEND yann@1219: depends on USE_SYSROOT yann@1219: default "" yann@1219: help yann@1219: * yann@1219: * Unless you realy know you need that, leave it empty! yann@1219: * yann@1219: yann@1219: This string will be interpreted as a directory component to be added yann@1219: to the sysroot path, just before the actual sysroot directory. yann@1219: yann@1219: In fact, the sysroot path is constructed as: yann@2279: ${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/${CT_SYSROOT_NAME} yann@1219: bryanhundven@2207: config STATIC_TOOLCHAIN bryanhundven@2207: bool bryanhundven@2207: prompt "Build Static Toolchain (EXPERIMENTAL)" bryanhundven@2207: depends on EXPERIMENTAL bryanhundven@2207: help bryanhundven@2207: Build static host binaries. bryanhundven@2207: bryanhundven@2207: If you wish to move the toolchain to another host, and you are not bryanhundven@2207: confident that this host has the required versions of system libs, then bryanhundven@2207: you can say 'Y' here, and all the host tools will be linked staticaly. bryanhundven@2207: yann@2209: The impacted tools are: bryanhundven@2210: - the GNU binutils yann@2209: - the cross-gdb yann@2209: bryanhundven@2207: The default is 'N', to build dynamicaly-linked host binaries. bryanhundven@2207: bryanhundven@2207: NOTE: this has no connection to whether the target libraries will be bryanhundven@2207: dynamic or static. This only applies to the tools themselves. bryanhundven@2207: benoit@2487: config TOOLCHAIN_PKGVERSION benoit@2487: string benoit@2487: prompt "Toolchain ID string" benoit@2487: default "crosstool-NG-${CT_VERSION}" benoit@2487: help benoit@2487: Specify a string that identifies your package. You may wish to include benoit@2487: a build number or build date. This version string will be included in benoit@2490: the output of gcc --version, and also in binutils, eglibc, gdb and benoit@2490: gdbserver. benoit@2487: benoit@2487: This is passed to the configure flag --with-pkgversion. benoit@2487: benoit@2487: config TOOLCHAIN_BUGURL benoit@2487: string benoit@2487: prompt "Toolchain bug URL" benoit@2487: default "" benoit@2487: help benoit@2487: Specify the URL that users should visit if they wish to report a bug. benoit@2487: yann@1220: comment "Tuple completion and aliasing" yann@1220: yann@41: config TARGET_VENDOR yann@41: string yann@1220: prompt "Tuple's vendor string" yann@41: default "unknown" yann@41: help yann@335: Vendor part of the target tuple. yann@41: yann@335: A tuple is of the form arch-vendor-kernel-system. yann@41: You can set the second part, vendor, to whatever you see fit. yann@41: Use a single word, or use underscores "_" to separate words. yann@1094: Use neither dash nor space, as it breaks things. yann@41: yann@1704: Keep the default (unknown) if you don't know better. yann@41: yann@321: config TARGET_ALIAS_SED_EXPR yann@321: string yann@1220: prompt "Tuple's sed transform" yann@321: default "" yann@321: help yann@321: Normaly, you'd call your toolchain components (especially gcc) by yann@335: prefixing the target tuple followed by a dash and the component name yann@321: (eg. armeb-unknown-linux-uclibc-gcc). yann@321: yann@321: You can enter here a sed expression to be applied to ${CT_TARGET} to yann@321: create an alias for your toolchain. yann@321: yann@321: For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes) yann@321: will create the armeb-foobar-linux-uclibc alias to the above-mentioned yann@321: toolchain. yann@321: yann@321: You shouldn't need to enter anything here, unless you plan to manually yann@321: call the tools (autotools-based ./configure will use the standard name). yann@321: yann@41: config TARGET_ALIAS yann@41: string yann@1220: prompt "Tuple's alias" yann@41: default "" yann@41: help yann@321: Normaly, you'd call your toolchain components (especially gcc) by yann@335: prefixing the target tuple followed by a dash and the component name yann@41: (eg. armeb-unknown-linux-uclibc-gcc). yann@41: yann@41: You can enter a shortcut here. This string will be used to create yann@41: symbolic links to the toolchain tools (eg. if you enter "foo-bar" here, yann@41: then gcc for your toolchain will also be available as "foo-bar-gcc" along yann@41: with the original name). yann@41: yann@41: You shouldn't need to enter anything here, unless you plan to manually yann@41: call the tools (autotools-based ./configure will use the standard name). yann@41: yann@41: comment "Toolchain type" yann@41: yann@41: choice yann@41: bool yann@41: prompt "Type" yann@41: default CROSS yann@41: yann@41: config NATIVE yann@41: bool yann@1041: prompt "Native (NO CODE!) (EXPERIMENTAL)" yann@41: depends on EXPERIMENTAL yann@41: help yann@41: Build a native toolchain. yann@2227: See: "docs/6 - Toolchain types.txt" yann@41: yann@41: config CROSS yann@41: bool yann@41: prompt "Cross" yann@41: help yann@41: Build a cross-toolchain. yann@2227: See: "docs/6 - Toolchain types.txt" yann@41: yann@41: config CROSS_NATIVE yann@41: bool yann@1041: prompt "Cross-native (NO CODE!) (EXPERIMENTAL)" yann@41: depends on EXPERIMENTAL yann@41: help yann@41: Build a cross-native toolchain. yann@2227: See: "docs/6 - Toolchain types.txt" yann@41: yann@41: config CANADIAN yann@41: bool yann@1425: prompt "Canadian (EXPERIMENTAL)" yann@41: depends on EXPERIMENTAL yann@41: help yann@41: Build a canadian-toolchain. yann@2227: See: "docs/6 - Toolchain types.txt" yann@41: yann@41: endchoice yann@41: yann@96: config TOOLCHAIN_TYPE yann@96: string yann@96: default "native" if NATIVE yann@96: default "cross" if CROSS yann@96: default "cross-native" if CROSS_NATIVE yann@96: default "canadian" if CANADIAN yann@96: yann@1041: comment "Build system" yann@1041: benoit@2484: config BUILD yann@41: string yann@1041: prompt "| Tuple (READ HELP!)" yann@41: default "" yann@41: help yann@41: Canonical name of the machine building the toolchain. yann@41: You should leave empty, unless you really now what you're doing. yann@41: yann@1041: config BUILD_PREFIX yann@41: string yann@1041: prompt "| Tools prefix (READ HELP!)" yann@1041: default "" yann@41: help yann@1041: If you have your *build system* tools in a weird location, and/or yann@1041: they have an unusual prefix, enter it here. yann@41: yann@1041: Usually, you should leave that empty! yann@41: yann@1041: Eg.: yann@1041: If your *build* gcc is /opt/build-tools/bin/weird-gcc then you yann@1041: should enter: yann@1041: /opt/build-tools/bin/weird- yann@1041: yann@1041: If your *build* gcc is /opt/build-tools/bin/weird-gcc and yann@1041: /opt/build-tools/bin is in your PATH, you should enter: yann@1041: weird- yann@1041: yann@1041: If your *build* gcc is /opt/build-tools/bin/gcc then you yann@1041: should enter (do not forget to add the trailing '/'): yann@1041: /opt/build-tools/bin/ yann@1041: yann@1041: config BUILD_SUFFIX yann@1041: string yann@1041: prompt "| Tools suffix (READ HELP!)" yann@1041: default "" yann@1041: help yann@1041: If your *build system* tools have an unusual suffix, enter it yann@1041: here. yann@1041: yann@1041: Usually, you should leave that empty! yann@1041: yann@1041: Eg.: yann@1041: If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2 yann@1041: installed as gcc-3.4, then you should enter: yann@1041: -3.4 yann@1041: yann@1041: It can happen that some of the tools have a suffix, when others yann@1041: don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts yann@1041: for that by checking the tools without the suffix in case it can yann@1041: not find some of the tool. yann@1041: yann@1041: if CANADIAN yann@1041: yann@1041: comment "Host system" yann@41: yann@41: config HOST yann@41: string yann@1041: prompt "| Tuple (READ HELP!)" yann@41: default "" yann@41: help yann@41: Canonical name of the machine running the toolchain. yann@41: yann@1041: config HOST_PREFIX yann@41: string yann@1041: prompt "| Tools prefix (READ HELP!)" yann@1041: default "" yann@41: help yann@1041: If you have your *host system* tools in a weird location, and/or yann@1041: they have an unusual prefix, enter it here. yann@1041: yann@1041: Usually, you should leave that empty! yann@1041: yann@1041: Eg.: yann@1041: If your *host* gcc is /opt/host-tools/bin/weird-gcc then you yann@1041: should enter: yann@1041: /opt/host-tools/bin/weird- yann@1041: yann@1041: If your *host* gcc is /opt/host-tools/bin/weird-gcc and yann@1041: /opt/host-tools/bin is in your PATH, you should enter: yann@1041: weird- yann@1041: yann@1041: If your *host* gcc is /opt/host-tools/bin/gcc then you yann@1041: should enter (do not forget to add the trailing '/'): yann@1041: /opt/host-tools/bin/ yann@41: yann@1041: config HOST_SUFFIX yann@41: string yann@1041: prompt "| Tools suffix (READ HELP!)" yann@1041: default "" yann@41: help yann@1041: If your *host system* tools have an unusual suffix, enter it yann@1041: here. yann@1041: yann@1041: Usually, you should leave that empty! yann@1041: yann@1041: Eg.: yann@1041: If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2 yann@1041: installed as gcc-3.4, then you should enter: yann@1041: -3.4 yann@1041: yann@1041: It can happen that some of the tools have a suffix, when others yann@1041: don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts yann@1041: for that by checking the tools without the suffix in case it can yann@1041: not find some of the tool. yann@1041: yann@1041: endif # CANADIAN yann@1041: yann@1041: if CROSS_NATIVE || CANADIAN yann@1041: yann@1041: comment "Target system" yann@1041: yann@1041: config TARGET_PREFIX yann@1041: string yann@1041: prompt "| Tools prefix (READ HELP!)" yann@1041: default "" yann@1041: help yann@1041: If you have your *target system* tools in a weird location, and/or yann@1041: they have an unusual prefix, enter it here. yann@1041: yann@1041: Usually, you should leave that empty! yann@1041: yann@1041: Eg.: yann@1041: If your *target* gcc is /opt/target-tools/bin/weird-gcc then you yann@1041: should enter: yann@1041: /opt/target-tools/bin/weird- yann@1041: yann@1041: If your *target* gcc is /opt/target-tools/bin/weird-gcc and yann@1041: /opt/target-tools/bin is in your PATH, you should enter: yann@1041: weird- yann@1041: yann@1041: If your *target* gcc is /opt/target-tools/bin/gcc then you yann@1041: should enter (do not forget to add the trailing '/'): yann@1041: /opt/target-tools/bin/ yann@1041: yann@1041: config TARGET_SUFFIX yann@1041: string yann@1041: prompt "| Tools suffix (READ HELP!)" yann@1041: default "" yann@1041: help yann@1041: If your *target system* tools have an unusual suffix, enter it yann@1041: here. yann@1041: yann@1041: Usually, you should leave that empty! yann@1041: yann@1041: Eg.: yann@1041: If your 'default' gcc is gcc 4.3.1, but you also have gcc-3.4.2 yann@1041: installed as gcc-3.4, then you should enter: yann@1041: -3.4 yann@1041: yann@1041: It can happen that some of the tools have a suffix, when others yann@1041: don't, eg. you can have 'gcc-3.4' and 'ar'. crosstool-NG accounts yann@1041: for that by checking the tools without the suffix in case it can yann@1041: not find some of the tool. yann@1041: yann@1041: endif # CROSS_NATIVE || CANADIAN yann@41: yann@41: endmenu