BUG 11763056 - 55721: AIX 5.1.50 build failing, cannot locate bzero

The problem is that although AIX implements bzero, its prototype
is not declared by default. Since AC_CHECK_FUNC(bzero) succeeds
even though a prototype is not declared, this breaks compilation
in C++ files where a prototype is required.

The solution is to only use bzero if a prototype is also declared.
This commit is contained in:
Davi Arnaut 2011-05-27 08:09:25 -03:00
parent 8bb8385f02
commit 79de9c7188
2 changed files with 2 additions and 7 deletions

View File

@ -2042,12 +2042,7 @@ MYSQL_TYPE_QSORT
AC_FUNC_UTIME_NULL
AC_FUNC_VPRINTF
AC_CHECK_DECLS([fdatasync],,,
[
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#endif
])
AC_CHECK_DECLS([fdatasync, bzero])
AC_CHECK_FUNCS(alarm bfill bmove bsearch bzero \
chsize cuserid fchmod fcntl \

View File

@ -58,7 +58,7 @@
# define bfill(A,B,C) memset((A),(C),(B))
#endif
#if !defined(bzero) && !defined(HAVE_BZERO)
#if !defined(bzero) && (!defined(HAVE_BZERO) || !defined(HAVE_DECL_BZERO))
# define bzero(A,B) memset((A),0,(B))
#endif