This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Check for ffs declaration in gcc/configure.ac
- From: Richard Guenther <richard dot guenther at gmail dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 20 Aug 2012 13:32:55 +0200
- Subject: Re: Check for ffs declaration in gcc/configure.ac
- References: <Pine.LNX.4.64.1208201127080.4976@digraph.polyomino.org.uk>
On Mon, Aug 20, 2012 at 1:28 PM, Joseph S. Myers
<joseph@codesourcery.com> wrote:
> Building a cross compiler from i686-mingw32 to arm-none-eabi fails
> after the move to build as C++ because config/arm/neon.md uses ffs but
> no MinGW header declares ffs (and unlike in C, an implicit declaration
> of this built-in function can't be used). This patch fixes this issue
> by making the gcc directory configure check for a declaration, so
> causing libiberty.h to provide one if needed.
>
> Tested building a cross compiler as described above (fails before the
> patch, passes afterwards). OK to commit?
Ok.
Thanks,
Richard.
> 2012-08-20 Joseph Myers <joseph@codesourcery.com>
>
> * configure.ac (ffs): Check for declaration.
> * configure, config.in: Regenerate.
>
> Index: configure
> ===================================================================
> --- configure (revision 190529)
> +++ configure (working copy)
> @@ -10288,7 +10288,7 @@
> for ac_func in getenv atol asprintf sbrk abort atof getcwd getwd \
> strsignal strstr stpcpy strverscmp \
> errno snprintf vsnprintf vasprintf malloc realloc calloc \
> - free basename getopt clock getpagesize clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked putchar_unlocked putc_unlocked
> + free basename getopt clock getpagesize ffs clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked putchar_unlocked putc_unlocked
> do
> ac_tr_decl=`$as_echo "HAVE_DECL_$ac_func" | $as_tr_cpp`
> { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $ac_func is declared" >&5
> Index: config.in
> ===================================================================
> --- config.in (revision 190529)
> +++ config.in (working copy)
> @@ -621,6 +621,12 @@
> #endif
>
>
> +/* Define to 1 if we found a declaration for 'ffs', otherwise define to 0. */
> +#ifndef USED_FOR_TARGET
> +#undef HAVE_DECL_FFS
> +#endif
> +
> +
> /* Define to 1 if we found a declaration for 'fgetc_unlocked', otherwise
> define to 0. */
> #ifndef USED_FOR_TARGET
> Index: configure.ac
> ===================================================================
> --- configure.ac (revision 190529)
> +++ configure.ac (working copy)
> @@ -1075,7 +1075,7 @@
> gcc_AC_CHECK_DECLS(getenv atol asprintf sbrk abort atof getcwd getwd \
> strsignal strstr stpcpy strverscmp \
> errno snprintf vsnprintf vasprintf malloc realloc calloc \
> - free basename getopt clock getpagesize gcc_UNLOCKED_FUNCS, , ,[
> + free basename getopt clock getpagesize ffs gcc_UNLOCKED_FUNCS, , ,[
> #include "ansidecl.h"
> #include "system.h"])
>
>
> --
> Joseph S. Myers
> joseph@codesourcery.com