This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] bfd: Fix regression when building bfd on mingw32
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Iain Buclaw <ibuclaw at gdcproject dot org>
- Cc: gdb-patches at sourceware dot org, lgustavo at codesourcery dot com
- Date: Tue, 4 Aug 2015 08:41:57 -0700
- Subject: Re: [PATCH] bfd: Fix regression when building bfd on mingw32
- Authentication-results: sourceware.org; auth=none
- References: <CABOHX+fAiKiNgmns+FRY_tuNbEhvvvdQWD=LD4ENcX-O2yeaFQ at mail dot gmail dot com>
Hi Iain,
Thanks for the patch. I've been trying to reproduce, but haven't
had much luck so far, not sure why.
In the meantime, this patch touches bfd, so it needs to be sent
to binutils@ instead.
Thanks!
On Mon, Jul 20, 2015 at 09:14:04PM +0200, Iain Buclaw wrote:
> Hi,
>
> This patch is as per suggestion from Pedro, I've also added a check
> for vasprintf just for completeness sake, and that there is a similar
> condition for HAVE_DECL_VASPRINTF in libiberty.h.
>
> https://sourceware.org/ml/gdb-patches/2015-06/msg00654.html
>
> As per my comments earlier, I am going blind on this, but it looks
> correct to me, and I can at least verify on my machine that I can see:
>
> configure stage
> ---
> checking whether asprintf is declared... yes
> checking whether vasprintf is declared... yes
> ---
> config.h
> ---
> /* Define to 1 if you have the declaration of `asprintf', and to 0 if you
> don't. */
> #define HAVE_DECL_ASPRINTF 1
>
> /* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
> don't. */
> #define HAVE_DECL_VASPRINTF 1
> ---
>
> So should either one be false, they should have a proper declaration
> in libiberty.h
>
> Luis, can you check this patch is good for you?
>
>
> Regards
> Iain
> ---
> 2015-07-20 Iain Buclaw <ibuclaw@gdcproject.org>
>
> * configure.in: Add asprintf and vasprintf to AC_CHECK_DECLS.
> * config.in, configure: Regenerate.
>
> --- a/bfd/config.in
> +++ b/bfd/config.in
> @@ -17,6 +17,10 @@
> /* Define to 1 if you have the <alloca.h> header file. */
> #undef HAVE_ALLOCA_H
>
> +/* Define to 1 if you have the declaration of `asprintf', and to 0 if you
> + don't. */
> +#undef HAVE_DECL_ASPRINTF
> +
> /* Define to 1 if you have the declaration of `basename', and to 0 if you
> don't. */
> #undef HAVE_DECL_BASENAME
> @@ -72,6 +76,10 @@
> */
> #undef HAVE_DECL_STRSTR
>
> +/* Define to 1 if you have the declaration of `vasprintf', and to 0 if you
> + don't. */
> +#undef HAVE_DECL_VASPRINTF
> +
> /* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you
> don't. */
> #undef HAVE_DECL_VSNPRINTF
> --- a/bfd/configure
> +++ b/bfd/configure
> @@ -13819,6 +13819,28 @@ cat >>confdefs.h <<_ACEOF
> #define HAVE_DECL_STRSTR $ac_have_decl
> _ACEOF
>
> +ac_fn_c_check_decl "$LINENO" "asprintf" "ac_cv_have_decl_asprintf" "$ac_includes_default"
> +if test "x$ac_cv_have_decl_asprintf" = x""yes; then :
> + ac_have_decl=1
> +else
> + ac_have_decl=0
> +fi
> +
> +cat >>confdefs.h <<_ACEOF
> +#define HAVE_DECL_ASPRINTF $ac_have_decl
> +_ACEOF
> +
> +ac_fn_c_check_decl "$LINENO" "vasprintf" "ac_cv_have_decl_vasprintf" "$ac_includes_default"
> +if test "x$ac_cv_have_decl_vasprintf" = x""yes; then :
> + ac_have_decl=1
> +else
> + ac_have_decl=0
> +fi
> +
> +cat >>confdefs.h <<_ACEOF
> +#define HAVE_DECL_VASPRINTF $ac_have_decl
> +_ACEOF
> +
> ac_fn_c_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default"
> if test "x$ac_cv_have_decl_snprintf" = x""yes; then :
> ac_have_decl=1
> --- a/bfd/configure.ac
> +++ b/bfd/configure.ac
> @@ -232,6 +232,8 @@ AC_CHECK_DECLS(malloc)
> AC_CHECK_DECLS(realloc)
> AC_CHECK_DECLS(stpcpy)
> AC_CHECK_DECLS(strstr)
> +AC_CHECK_DECLS(asprintf)
> +AC_CHECK_DECLS(vasprintf)
> AC_CHECK_DECLS(snprintf)
> AC_CHECK_DECLS(vsnprintf)
> AC_CHECK_DECLS(strnlen)
--
Joel