config/arch/arm.in.2
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Jan 03 22:57:25 2012 +0100 (2012-01-03)
changeset 2936 2dfea349d307
parent 2484 d1a8c2ae7946
child 3150 1d6fd9bde73c
permissions -rw-r--r--
cc/gcc: build core compilers for canadian

Currently, we rely on an existing external cross-compiler targetting
the target, to build the C library.

This can pause quite a few problems if that compiler is different from
the one we are building, because it could introduce some ABI issues.

This patch removes this dependency, by building the core compilers
as we do for standard cross, and also by building the binutils and
gcc, for running on the build machine.

This means we no longer need to offer the cross-sompiler selection in
the menuconfig.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 # ARM specific configuration file
     2 
     3 config ARCH_ARM_MODE
     4     string
     5     default "arm"   if ARCH_ARM_MODE_ARM
     6     default "thumb" if ARCH_ARM_MODE_THUMB
     7 
     8 choice
     9     bool
    10     prompt "Default instruction set mode"
    11     default ARCH_ARM_MODE_ARM
    12 
    13 config ARCH_ARM_MODE_ARM
    14     bool
    15     prompt "arm"
    16     help
    17       Defaults to emitting instructions in the ARM mode.
    18 
    19 config ARCH_ARM_MODE_THUMB
    20     bool
    21     prompt "thumb (EXPERIMENTAL)"
    22     depends on EXPERIMENTAL
    23     help
    24       Defaults to emitting instructions in the THUMB mode.
    25 
    26 endchoice
    27 
    28 config ARCH_ARM_INTERWORKING
    29     bool
    30     prompt "Use Thumb-interworking (READ HELP)"
    31     depends on EXPERIMENTAL
    32     help
    33       Excerpt from the gcc manual:
    34       
    35       > Generate code which supports calling between the ARM and Thumb
    36       > instruction sets. Without this option the two instruction sets
    37       > cannot be reliably used inside one program. The default is
    38       > [not to use interwork], since slightly larger code is generated
    39       > when [interwork] is specified.
    40 
    41 config ARCH_ARM_EABI
    42     bool
    43     prompt "Use EABI"
    44     default y
    45     help
    46       Set up the toolchain so that it generates EABI-compliant binaries.
    47 
    48 config ARCH_ARM_ABI_OK
    49     bool
    50     default y
    51     depends on ! ARCH_ARM_EABI
    52     select ARCH_SUPPORTS_WITH_ABI