From a2e7a536e05eb39dc3a9583bad3cfd47b8c2f46e Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Mon, 21 Nov 2011 23:56:53 +0100 Subject: libc/glibc: set the float option according to extra CFLAGS When building a multilib, some extra CFLAGS can override the default config option. This is the case for the floating point selection. Signed-off-by: "Yann E. MORIN" diff --git a/scripts/build/libc/glibc-eglibc.sh-common b/scripts/build/libc/glibc-eglibc.sh-common index 0748bb9..2533f14 100644 --- a/scripts/build/libc/glibc-eglibc.sh-common +++ b/scripts/build/libc/glibc-eglibc.sh-common @@ -77,6 +77,7 @@ do_libc_backend() { local -a extra_config local -a extra_make_args local glibc_cflags + local float_extra while [ $# -ne 0 ]; do eval "${1// /\\ }" @@ -135,10 +136,19 @@ do_libc_backend() { *) extra_config+=("--disable-shared");; esac - case "${CT_ARCH_FLOAT}" in + float_extra="$( echo "${extra_flags}" \ + |${sed} -r -e '/^(.*[[:space:]])?-m(hard|soft)-float([[:space:]].*)?$/!d;' \ + -e 's//\2/;' \ + )" + case "${float_extra}" in hard) extra_config+=("--with-fp");; soft) extra_config+=("--without-fp");; - softfp) extra_config+=("--with-fp");; + "") + case "${CT_ARCH_FLOAT}" in + hard|softfp) extra_config+=("--with-fp");; + soft) extra_config+=("--without-fp");; + esac + ;; esac if [ "${CT_LIBC_DISABLE_VERSIONING}" = "y" ]; then -- cgit v0.10.2-6-g49f6