config/arch/mips.in.2
author Daniel Price <daniel.price@gmail.com>
Tue Nov 20 16:59:17 2012 -0800 (2012-11-20)
changeset 3126 333d3e40cbd1
permissions -rw-r--r--
scripts: refine static linking check to better guide the user

The current mechanism to check if static linking is possible, and the mesage
displayed on failure, can be puzzling to the unsuspecting user.

Also, the current implementation is not using the existing infrastructure,
and is thus difficult to enhance with new tests.

So, switch to using the standard CT_DoExecLog infra, and use four tests to
check for the host compiler:
- check we can run it
- check it can build a trivial program
- check it can statically link that program
- check if it statically link with libstdc++

That should cover most of the problems. Hopefully.

(At the same time, fix a typo in a comment)

Signed-off-by: Daniel Price <daniel.price@gmail.com>
[yann.morin.1998@free.fr: split original patch for self-contained changes]
[yann.morin.1998@free.fr: use steps to better see gcc's output]
[yann.morin.1998@free.fr: commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <163f86b5216fc08c672a.1353459722@nipigon.dssd.com>
Patchwork-Id: 200536
     1 # MIPS specific config options
     2 
     3 choice
     4     bool
     5     prompt "ABI"
     6 
     7 config ARCH_mips_o32
     8     bool
     9     prompt "o32"
    10     depends on ARCH_32
    11     help
    12       This is the -mabi=32 gcc option.
    13 
    14 config ARCH_mips_n32
    15     bool
    16     prompt "n32"
    17     depends on ARCH_64
    18     help
    19       This is the -mabi=n32 gcc option.
    20 
    21 config ARCH_mips_n64
    22     bool
    23     prompt "n64"
    24     depends on ARCH_64
    25     help
    26       This is the -mabi=64 gcc option.
    27 
    28 # Not supported on Linux:
    29 # o64   : seems related to *BSD
    30 # eabi  : seems related to bare-metal
    31 
    32 endchoice
    33 
    34 config ARCH_mips_ABI
    35     string
    36     default "32"    if ARCH_mips_o32
    37     default "n32"   if ARCH_mips_n32
    38     default "64"    if ARCH_mips_n64