config/gcc: Limit multilib to gcc 4.7 and up

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
config/target: Add support for Auto Float

This options stops any options being passed to gcc's configure script about
what float option to use (hw, sw, or softfp), hence letting gcc automatically
decide for itself which option to use.

This might be helpful for multilib configurations.

This patch is originally based on a patch by: Cody P Schafer

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
gcc: Add --with-multilib-list option

.. actually by Bryan Hundven.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
arch/all: Add common function to return multilib target

This code was abstracted out of Cody P Schafer's multilib patch.
It doesn't seem right having architecture dependent code in something generic
like the (e)glibc-common script. So this patch breaks it out into
scripts/build/arch/<arch>.sh in a function:

  multilib_target_to_build="$(CT_DoArchMultilibTarget 'multi_flags' 'target-in')"

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: Ray Donnelly <ray.donnelly@gmail.com>
libc/(e)glibc: Use common arch call to get multilib targets

The previous patch added the function 'CT_DoMultilibTarget()' to
scripts/build/arch/*.sh.

This patch calls the common function to (currently) get just the target
tuple for the current multilib target.

This patch was originally by: Cody P Schafer

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
glibc-eglibc.sh-common: Use --print-multi-os-directory

GCC makes the distinction between:
multilib (-print-multi-lib) and
multilib-os (--print-multi-os-directory)
as the gcc library and gcc sysroot library paths, respecitively.

Use this to build libc into the correct locations, the same
applies to the dummy libc.so

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
crosstool-NG.sh.in: Don't make lots of symlinks to lib folder

For 4 different folders:

${CT_PREFIX_DIR}
${CT_SYSROOT_DIR}
${CT_SYSROOT_DIR}/usr
${CT_PREFIX_DIR}/${CT_TARGET}

.. symlinks from lib32 and lib64 to lib were created. This
is a lot of symlinks and is untidy.

They're likely not needed in any case, but for now, excluded
for the multilib case only.

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
libc/(e)glibc: Build manuals and locales last

Rather then building the manuals and locales for each multilib target, only
build the manuals on the last multilib target.

If you are not building a multilib toolchain, then the first libc build will
be the last.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
ISL MinGW-w64 build fix (lacks ffs declaration)

Backported from ISL project git repository:
http://repo.or.cz/w/isl.git/commit/bf19b4da725deff1f109478e4f577b54e09d08e7

<original-commit-msg>
Define ffs as __builtin_ffs if ffs is not declared but
__builtin_ffs is declared.

This problem only happens at -O0 as one of the optimization
passes substitutes ffs for __builtin_ffs.
</original-commit-msg>

Patches provided for both ISL 0.11.1, 0.12.1 and a small bit missed
from 0.12.2.
Add PS3 patches from Martell
VERBOSE=1 for clang
Test MSYS vs MinGW-w64 GCC 4.8.2 patch
Linux header install fix for Windows (fixdeps.c)
Fix for xgcc not finding cc1 on Windows
linux install_headers: avoid over-long commandlines
Kernel (3.10.19, 2.12) header fix for unifdef on Win32

Uses upstream unifdef code.

I don't patch the existing unifdef stuff for
Linux or Mac OS X
Add gettext and libiconv as a companion lib

.. it's needed for the RPC stuff in {e}glibc.

Building both is avoided on Linux and building
iconv is avoided on Darwin.
Fix eglibc 2_18 sunrpc Windows build issues

.. fork and exec were being used. Now, on Windows the
Win32 API is used, also some missing string functions
were added.
Add GCC 4.8.2 patch for crtstuff.c

.. it directly included auto-host.h, it shouldn't, instead
tconfig.h includes that file, but only after defining
USED_FOR_TARGET so that things only needed for the host
are not defined when building target libraries and objects
Add GCC 4.8.2 patch for pex-win32.c

.. it always quoted all arguments, irrespective of whether
there was a need to. This meant the 32k limit was being
hit during builds of cross libgcc by both xgcc.exe and
collect2.exe