config/toolchain.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Apr 17 22:24:42 2007 +0000 (2007-04-17)
changeset 41 fd6ad5721f77
child 47 7e2539937b6e
permissions -rw-r--r--
Add the EXPERIMENTAL option to show options marked as such.
Add the four types of toolchains ct-ng is able to build as EXPERIMENTAL, except for CROSS which *is* functional.
Reorder menus accordingly.
yann@41
     1
menu "Toolchain options"
yann@41
     2
yann@41
     3
comment "General toolchain options"
yann@41
     4
yann@41
     5
config USE_SYSROOT
yann@41
     6
    bool
yann@41
     7
    prompt "Use sysroot'ed toolchain"
yann@41
     8
    default y
yann@41
     9
    help
yann@41
    10
      Use the 'shinny new' sysroot feature of gcc: libraries split between
yann@41
    11
      prefix/target/sys-root/lib and prefix/target/sys-root/usr/lib
yann@41
    12
      
yann@41
    13
      You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
yann@41
    14
yann@41
    15
config SHARED_LIBS
yann@41
    16
    bool
yann@41
    17
    prompt "Build shared libraries"
yann@41
    18
    default y
yann@41
    19
    help
yann@41
    20
      Say 'y' here, unless you don't want shared libraries.
yann@41
    21
      
yann@41
    22
      You might not want shared librries if you're building for a target that
yann@41
    23
      don't support it (maybe some nommu targets, for example, or bare metal).
yann@41
    24
yann@41
    25
config TARGET_MULTILIB
yann@41
    26
    bool
yann@41
    27
#    prompt "Enable 'multilib' support (EXPERIMENTAL)"
yann@41
    28
    default n
yann@41
    29
    help
yann@41
    30
      Enable the so-called 'multilib' support.
yann@41
    31
      
yann@41
    32
      With the same toolchain, and on some architectures, you will be able to
yann@41
    33
      build big and little endian binaries, soft- and hard-float, etc...
yann@41
    34
      
yann@41
    35
      See the gcc configure manual at http://gcc.gnu.org/install/configure.html
yann@41
    36
      to see what multilib your target supports.
yann@41
    37
      
yann@41
    38
      It's preferable for now to build two (or more) toolchains, one for each
yann@41
    39
      configuration you need to support (eg. one for thumb and one for ARM,
yann@41
    40
      etc...). You can use the vendor string to diferentiate those toolchains.
yann@41
    41
yann@41
    42
config TARGET_VENDOR
yann@41
    43
    string
yann@41
    44
    prompt "Vendor string"
yann@41
    45
    default "unknown"
yann@41
    46
    help
yann@41
    47
      Vendor part of the machine triplet.
yann@41
    48
      
yann@41
    49
      A triplet is of the form arch-vendor-kernel-system.
yann@41
    50
      You can set the second part, vendor, to whatever you see fit.
yann@41
    51
      Use a single word, or use underscores "_" to separate words.
yann@41
    52
      
yann@41
    53
      Keep the default (unkown) if you don't know better.
yann@41
    54
yann@41
    55
config TARGET_ALIAS
yann@41
    56
    string
yann@41
    57
    prompt "Target alias"
yann@41
    58
    default ""
yann@41
    59
    help
yann@41
    60
      Normaly, you'd call your toolchain component (especially gcc) by
yann@41
    61
      prefixing the target triplet followed by a dash and the component name
yann@41
    62
      (eg. armeb-unknown-linux-uclibc-gcc).
yann@41
    63
      
yann@41
    64
      You can enter a shortcut here. This string will be used to create
yann@41
    65
      symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
yann@41
    66
      then gcc for your toolchain will also be available as "foo-bar-gcc" along
yann@41
    67
      with the original name).
yann@41
    68
      
yann@41
    69
      You shouldn't need to enter anything here, unless you plan to manually
yann@41
    70
      call the tools (autotools-based ./configure will use the standard name).
yann@41
    71
yann@41
    72
config ARCH
yann@41
    73
    string
yann@41
    74
    default "arm"     if ARCH_ARM
yann@41
    75
    default "mips"    if ARCH_MIPS
yann@41
    76
    default "x86"     if ARCH_x86
yann@41
    77
    default "x86_64"  if ARCH_x86_64
yann@41
    78
yann@41
    79
comment "Toolchain type"
yann@41
    80
yann@41
    81
choice
yann@41
    82
    bool
yann@41
    83
    prompt "Type"
yann@41
    84
    default CROSS
yann@41
    85
yann@41
    86
config NATIVE
yann@41
    87
    bool
yann@41
    88
    prompt "Native (EXPERIMENTAL)"
yann@41
    89
    depends on EXPERIMENTAL
yann@41
    90
    help
yann@41
    91
      Build a native toolchain.
yann@41
    92
      See docs/overview.txt
yann@41
    93
yann@41
    94
config CROSS
yann@41
    95
    bool
yann@41
    96
    prompt "Cross"
yann@41
    97
    help
yann@41
    98
      Build a cross-toolchain.
yann@41
    99
      See docs/overview.txt
yann@41
   100
yann@41
   101
config CROSS_NATIVE
yann@41
   102
    bool
yann@41
   103
    prompt "Croos-native (EXPERIMENTAL)"
yann@41
   104
    depends on EXPERIMENTAL
yann@41
   105
    help
yann@41
   106
      Build a cross-native toolchain.
yann@41
   107
      See docs/overview.txt
yann@41
   108
yann@41
   109
config CANADIAN
yann@41
   110
    bool
yann@41
   111
    prompt "Canadian (EXPERIMENTAL)"
yann@41
   112
    depends on EXPERIMENTAL
yann@41
   113
    default n
yann@41
   114
    help
yann@41
   115
      Build a canadian-toolchain.
yann@41
   116
      See docs/overview.txt
yann@41
   117
yann@41
   118
endchoice
yann@41
   119
yann@41
   120
config BUILD 
yann@41
   121
    string
yann@41
   122
    prompt "Build system triplet"
yann@41
   123
    default ""
yann@41
   124
    help
yann@41
   125
      Canonical name of the machine building the toolchain.
yann@41
   126
      You should leave empty, unless you really now what you're doing.
yann@41
   127
yann@41
   128
config CC_NATIVE
yann@41
   129
    string
yann@41
   130
    prompt "Native gcc"
yann@41
   131
    default "gcc"
yann@41
   132
    help
yann@41
   133
      The native C compiler.
yann@41
   134
      
yann@41
   135
      You can set this to an alternative compiler if you have more than one
yann@41
   136
      installed (eg. gcc is gcc-4.1.1 and you want to use gcc-3.4.6).
yann@41
   137
      
yann@41
   138
      You can leave this empty as well, in which case gcc will be used.
yann@41
   139
yann@41
   140
config HOST
yann@41
   141
    string
yann@41
   142
    prompt "Host system triplet"
yann@41
   143
    default ""
yann@41
   144
    depends on NATIVE || CANADIAN
yann@41
   145
    help
yann@41
   146
      Canonical name of the machine running the toolchain.
yann@41
   147
yann@41
   148
config HOST_CC
yann@41
   149
    string
yann@41
   150
    prompt "Cross-compiler prefix for host system"
yann@41
   151
    default "${CT_HOST}-"
yann@41
   152
    depends on NATIVE || CANADIAN
yann@41
   153
    help
yann@41
   154
      C compiler targeting the host system.
yann@41
   155
yann@41
   156
config TARGET_CC
yann@41
   157
    string
yann@41
   158
    prompt "Cross-compiler prefix for target system"
yann@41
   159
    default "${CT_TARGET}-"
yann@41
   160
    depends on CANADIAN
yann@41
   161
    help
yann@41
   162
      C compiler targeting the target system.
yann@41
   163
yann@41
   164
endmenu