From d0202f1c5ab4e7a54256864484a59addb94625ab Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Wed, 29 Feb 2012 22:26:19 +0100 Subject: build-sys: make the crosscompile path for scanf_cv_alloc_modifier clever My earlier assumption was that scanf_cv_alloc_modifier is unused. This is not true as pointed out by Karel since it used befoe checking for libmount. Argh. So instead saying no I add a test to check for glibc >= 2.7 which provides %m. As of uClibc v0.9.32-rc3 the situation looks the following: | git grep _M_SPEC__ |libc/stdio/_vfprintf.c:/* #define __UCLIBC_HAS_PRINTF_M_SPEC__ */ |libc/stdio/_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/_vfprintf.c:# ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/_vfprintf.c:# endif /* __UCLIBC_HAS_PRINTF_M_SPEC__ */ |libc/stdio/_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/old_vfprintf.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ |libc/stdio/perror.c:#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ And other libc user have to bring their own stuff. Signed-off-by: Sebastian Andrzej Siewior --- configure.ac | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index c7ebd4123..0ae5b767d 100644 --- a/configure.ac +++ b/configure.ac @@ -387,7 +387,23 @@ AC_CACHE_VAL([scanf_cv_alloc_modifier], [scanf_cv_alloc_modifier=no] ) , - [scanf_cv_alloc_modifier=no] + + [AC_COMPILE_IFELSE([AC_LANG_SOURCE([ + #include + + #ifdef __GLIBC__ + + #if !(__GLIBC_PREREQ(2, 7)) + #error %m is not available + #endif + + #else + + #error Your C-library is not supported. + #endif + ])], + [scanf_cv_alloc_modifier=ms], + [scanf_cv_alloc_modifier=no])] ) ) -- cgit v1.2.3-55-g7522