config/toolchain.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Feb 14 22:44:34 2008 +0000 (2008-02-14)
changeset 425 548b7aa23385
parent 335 f0d84f1d4c93
child 530 010a5f732a6f
permissions -rw-r--r--
Robet P. J. DAY: typoes.
     1 menu "Toolchain options"
     2 
     3 comment "General toolchain options"
     4 
     5 config USE_SYSROOT
     6     bool
     7     prompt "Use sysroot'ed toolchain"
     8     default y
     9     help
    10       Use the 'shinny new' sysroot feature of gcc: libraries split between
    11       prefix/target/sys-root/lib and prefix/target/sys-root/usr/lib
    12       
    13       You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
    14 
    15 config SHARED_LIBS
    16     bool
    17     prompt "Build shared libraries"
    18     default y
    19     help
    20       Say 'y' here, unless you don't want shared libraries.
    21       
    22       You might not want shared librries if you're building for a target that
    23       don't support it (maybe some nommu targets, for example, or bare metal).
    24 
    25 choice
    26     bool
    27     prompt "Threading implementation to use:"
    28     default THREADS_NPTL           if LIBC_SUPPORT_NPTL
    29     default THREADS_LINUXTHREADS   if LIBC_SUPPORT_LINUXTHREADS && ! LIBC_SUPPORT_NPTL
    30     default THREADS_NONE           if ! LIBC_SUPPORT_LINUXTHREADS && ! LIBC_SUPPORT_NPTL
    31 
    32 config THREADS_NPTL
    33     bool
    34     prompt "nptl"
    35     depends on LIBC_SUPPORT_NPTL
    36 
    37 config THREADS_LINUXTHREADS
    38     bool
    39     prompt "linuxthreads"
    40     depends on LIBC_SUPPORT_LINUXTHREADS
    41 
    42 config THREADS_NONE
    43     bool
    44     prompt "none"
    45 
    46 endchoice
    47 
    48 config THREADS
    49     string
    50     default "nptl"          if THREADS_NPTL
    51     default "linuxthreads"  if THREADS_LINUXTHREADS
    52     default "none"          if THREADS_NONE
    53 
    54 #config TARGET_MULTILIB
    55 #    bool
    56 #    prompt "Enable 'multilib' support (EXPERIMENTAL)"
    57 #    default n
    58 #    depends on EXPERIMENTAL
    59 #    help
    60 #      Enable the so-called 'multilib' support.
    61 #      
    62 #      With the same toolchain, and on some architectures, you will be able to
    63 #      build big and little endian binaries, soft- and hard-float, etc...
    64 #      
    65 #      See the gcc configure manual at http://gcc.gnu.org/install/configure.html
    66 #      to see what multilib your target supports.
    67 #      
    68 #      It's preferable for now to build two (or more) toolchains, one for each
    69 #      configuration you need to support (eg. one for thumb and one for ARM,
    70 #      etc...). You can use the vendor string to diferentiate those toolchains.
    71 
    72 config TARGET_VENDOR
    73     string
    74     prompt "Vendor string"
    75     default "unknown"
    76     help
    77       Vendor part of the target tuple.
    78       
    79       A tuple is of the form arch-vendor-kernel-system.
    80       You can set the second part, vendor, to whatever you see fit.
    81       Use a single word, or use underscores "_" to separate words.
    82       
    83       Keep the default (unkown) if you don't know better.
    84 
    85 config TARGET_ALIAS_SED_EXPR
    86     string
    87     prompt "Target sed transform"
    88     default ""
    89     help
    90       Normaly, you'd call your toolchain components (especially gcc) by
    91       prefixing the target tuple followed by a dash and the component name
    92       (eg. armeb-unknown-linux-uclibc-gcc).
    93       
    94       You can enter here a sed expression to be applied to ${CT_TARGET} to
    95       create an alias for your toolchain.
    96       
    97       For example, "s/${CT_TARGET_VENDOR}/foobar/" (without the double quotes)
    98       will create the armeb-foobar-linux-uclibc alias to the above-mentioned
    99       toolchain.
   100       
   101       You shouldn't need to enter anything here, unless you plan to manually
   102       call the tools (autotools-based ./configure will use the standard name).
   103 
   104 config TARGET_ALIAS
   105     string
   106     prompt "Target alias"
   107     default ""
   108     help
   109       Normaly, you'd call your toolchain components (especially gcc) by
   110       prefixing the target tuple followed by a dash and the component name
   111       (eg. armeb-unknown-linux-uclibc-gcc).
   112       
   113       You can enter a shortcut here. This string will be used to create
   114       symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
   115       then gcc for your toolchain will also be available as "foo-bar-gcc" along
   116       with the original name).
   117       
   118       You shouldn't need to enter anything here, unless you plan to manually
   119       call the tools (autotools-based ./configure will use the standard name).
   120 
   121 comment "Toolchain type"
   122 
   123 choice
   124     bool
   125     prompt "Type"
   126     default CROSS
   127 
   128 config NATIVE
   129     bool
   130     prompt "Native (EXPERIMENTAL)"
   131     depends on EXPERIMENTAL
   132     help
   133       Build a native toolchain.
   134       See docs/overview.txt
   135 
   136 config CROSS
   137     bool
   138     prompt "Cross"
   139     help
   140       Build a cross-toolchain.
   141       See docs/overview.txt
   142 
   143 config CROSS_NATIVE
   144     bool
   145     prompt "Cross-native (EXPERIMENTAL)"
   146     depends on EXPERIMENTAL
   147     help
   148       Build a cross-native toolchain.
   149       See docs/overview.txt
   150 
   151 config CANADIAN
   152     bool
   153     prompt "Canadian (EXPERIMENTAL)"
   154     depends on EXPERIMENTAL
   155     help
   156       Build a canadian-toolchain.
   157       See docs/overview.txt
   158 
   159 endchoice
   160 
   161 config TOOLCHAIN_TYPE
   162     string
   163     default "native"        if NATIVE
   164     default "cross"         if CROSS
   165     default "cross-native"  if CROSS_NATIVE
   166     default "canadian"      if CANADIAN
   167 
   168 config BUILD 
   169     string
   170     prompt "Build system tuple"
   171     default ""
   172     help
   173       Canonical name of the machine building the toolchain.
   174       You should leave empty, unless you really now what you're doing.
   175 
   176 config CC_NATIVE
   177     string
   178     prompt "Native gcc"
   179     default "gcc"
   180     help
   181       The native C compiler.
   182       
   183       You can set this to an alternative compiler if you have more than one
   184       installed (eg. gcc is gcc-4.1.1 and you want to use gcc-3.4.6).
   185       
   186       You can leave this empty as well, in which case gcc will be used.
   187 
   188 config HOST
   189     string
   190     prompt "Host system tuple"
   191     default ""
   192     depends on NATIVE || CANADIAN
   193     help
   194       Canonical name of the machine running the toolchain.
   195 
   196 config HOST_CC
   197     string
   198     prompt "Cross-compiler prefix for host system"
   199     default "${CT_HOST}-"
   200     depends on NATIVE || CANADIAN
   201     help
   202       C compiler targeting the host system.
   203 
   204 config TARGET_CC
   205     string
   206     prompt "Cross-compiler prefix for target system"
   207     default "${CT_TARGET}-"
   208     depends on CANADIAN
   209     help
   210       C compiler targeting the target system.
   211 
   212 endmenu