This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] bfd: Fix regression when building bfd on mingw32
- From: Iain Buclaw <ibuclaw at gdcproject dot org>
- To: Binutils Development <binutils at sourceware dot org>, Pedro Alves <palves at redhat dot com>, Luis Machado <lgustavo at codesourcery dot com>
- Date: Fri, 24 Jul 2015 17:32:44 +0200
- Subject: [PATCH] bfd: Fix regression when building bfd on mingw32
- Authentication-results: sourceware.org; auth=none
[Reposting this on Binutils ML]
This patch is as per suggestion from Pedro, I've also added a check
for vasprintf both for completeness sake, and that there is a similar
condition for HAVE_DECL_VASPRINTF in libiberty.h too.
https://sourceware.org/ml/gdb-patches/2015-06/msg00654.html
As per my comments, 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
---
and in 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, an appropriate declaration should be
exposed through libiberty.
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)