config/toolchain.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu May 10 21:33:35 2007 +0000 (2007-05-10)
changeset 85 ac2845835b13
parent 41 fd6ad5721f77
child 91 aa1d248fa51b
permissions -rw-r--r--
Update the way we handle directories supplied by the user:
- the tarball directory is considered as a local copy, and tarballs are copied to a working area,
- the sources and build directories (CT_SRC_DIR and CT_BUILD_DIR) are now computed, and no longer an option,
- the build dir has been renamed from 'build' to 'targets'.
That should ease preparing a tarball of the resulting target.
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
comment "Toolchain type"
yann@41
    73
yann@41
    74
choice
yann@41
    75
    bool
yann@41
    76
    prompt "Type"
yann@41
    77
    default CROSS
yann@41
    78
yann@41
    79
config NATIVE
yann@41
    80
    bool
yann@41
    81
    prompt "Native (EXPERIMENTAL)"
yann@41
    82
    depends on EXPERIMENTAL
yann@41
    83
    help
yann@41
    84
      Build a native toolchain.
yann@41
    85
      See docs/overview.txt
yann@41
    86
yann@41
    87
config CROSS
yann@41
    88
    bool
yann@41
    89
    prompt "Cross"
yann@41
    90
    help
yann@41
    91
      Build a cross-toolchain.
yann@41
    92
      See docs/overview.txt
yann@41
    93
yann@41
    94
config CROSS_NATIVE
yann@41
    95
    bool
yann@41
    96
    prompt "Croos-native (EXPERIMENTAL)"
yann@41
    97
    depends on EXPERIMENTAL
yann@41
    98
    help
yann@41
    99
      Build a cross-native toolchain.
yann@41
   100
      See docs/overview.txt
yann@41
   101
yann@41
   102
config CANADIAN
yann@41
   103
    bool
yann@41
   104
    prompt "Canadian (EXPERIMENTAL)"
yann@41
   105
    depends on EXPERIMENTAL
yann@41
   106
    default n
yann@41
   107
    help
yann@41
   108
      Build a canadian-toolchain.
yann@41
   109
      See docs/overview.txt
yann@41
   110
yann@41
   111
endchoice
yann@41
   112
yann@41
   113
config BUILD 
yann@41
   114
    string
yann@41
   115
    prompt "Build system triplet"
yann@41
   116
    default ""
yann@41
   117
    help
yann@41
   118
      Canonical name of the machine building the toolchain.
yann@41
   119
      You should leave empty, unless you really now what you're doing.
yann@41
   120
yann@41
   121
config CC_NATIVE
yann@41
   122
    string
yann@41
   123
    prompt "Native gcc"
yann@41
   124
    default "gcc"
yann@41
   125
    help
yann@41
   126
      The native C compiler.
yann@41
   127
      
yann@41
   128
      You can set this to an alternative compiler if you have more than one
yann@41
   129
      installed (eg. gcc is gcc-4.1.1 and you want to use gcc-3.4.6).
yann@41
   130
      
yann@41
   131
      You can leave this empty as well, in which case gcc will be used.
yann@41
   132
yann@41
   133
config HOST
yann@41
   134
    string
yann@41
   135
    prompt "Host system triplet"
yann@41
   136
    default ""
yann@41
   137
    depends on NATIVE || CANADIAN
yann@41
   138
    help
yann@41
   139
      Canonical name of the machine running the toolchain.
yann@41
   140
yann@41
   141
config HOST_CC
yann@41
   142
    string
yann@41
   143
    prompt "Cross-compiler prefix for host system"
yann@41
   144
    default "${CT_HOST}-"
yann@41
   145
    depends on NATIVE || CANADIAN
yann@41
   146
    help
yann@41
   147
      C compiler targeting the host system.
yann@41
   148
yann@41
   149
config TARGET_CC
yann@41
   150
    string
yann@41
   151
    prompt "Cross-compiler prefix for target system"
yann@41
   152
    default "${CT_TARGET}-"
yann@41
   153
    depends on CANADIAN
yann@41
   154
    help
yann@41
   155
      C compiler targeting the target system.
yann@41
   156
yann@41
   157
endmenu