config/libc/newlib.in.2
author Daniel Price <daniel.price@gmail.com>
Tue Nov 20 16:59:17 2012 -0800 (2012-11-20)
changeset 3126 333d3e40cbd1
parent 2781 504b0759c149
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 # newlib second-part options
     2 
     3 config LIBC_NEWLIB_IO_C99FMT
     4     bool
     5     prompt "Enable IOs on C99 formats"
     6     help
     7       Enable support for IOs on C99 formats.
     8 
     9 config LIBC_NEWLIB_IO_LL
    10     bool
    11     prompt "Enable IOs on long long"
    12     help
    13       Enable support for IOs on long long integers.
    14 
    15 config LIBC_NEWLIB_IO_FLOAT
    16     bool
    17     prompt "Enable IOs on floats and doubles"
    18     help
    19       Enable support for IOs on floating point
    20       values (float and double).
    21 
    22 config LIBC_NEWLIB_IO_LDBL
    23     bool
    24     prompt "Enable IOs on long doubles"
    25     depends on LIBC_NEWLIB_IO_FLOAT
    26     help
    27       Enable support for IOs on long doubles.
    28 
    29 config LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS
    30     bool
    31     prompt "Disable the syscalls supplied with newlib"
    32     help
    33       Disable the syscalls that come with newlib. You
    34 	  will have to implement your own _sbrk, _read,
    35 	  _write... If you plan to port newlib to a new
    36 	  platform/board, say Yes.
    37 
    38 config LIBC_NEWLIB_ENABLE_TARGET_OPTSPACE
    39     bool
    40     prompt "Optimize newlib for size"
    41     default y
    42     help
    43       Pass --enable-target-optspace to newlib configure.
    44       
    45       This will compile newlib with -Os.
    46 
    47 config LIBC_NEWLIB_EXTRA_CONFIG_ARRAY
    48     string
    49     prompt "Extra config for newlib"
    50     default ""
    51     help
    52       Extra flags to pass onto ./configure when configuring the newlib.