if no strerror_r prototype is found, we provide our own to prevent picky

compilers to warn
This commit is contained in:
Daniel Stenberg 2004-05-06 10:49:40 +00:00
parent af72f198ba
commit 6f74820cfc
2 changed files with 20 additions and 0 deletions

View File

@ -396,6 +396,17 @@ AC_DEFUN([CURL_CHECK_STRERROR_R],
AC_MSG_RESULT(no))])])
if test "x$strerror_r" = "xyes"; then
dnl check if strerror_r is properly declared in the headers
AC_CHECK_DECL(strerror_r, ,
AC_DEFINE(HAVE_NO_STRERROR_R_DECL, 1, [we have no strerror_r() proto])
,
[#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
])
dnl determine if this strerror_r() is glibc or POSIX
AC_MSG_CHECKING([for a glibc strerror_r API])
AC_TRY_RUN([

View File

@ -32,6 +32,15 @@
#define _MPRINTF_REPLACE /* use our functions only */
#include <curl/mprintf.h>
#ifdef HAVE_NO_STRERROR_R_DECL
#ifdef HAVE_POSIX_STRERROR_R
/* seen on AIX 5100-02 gcc 2.9 */
extern int strerror_r(int errnum, char *strerrbuf, size_t buflen);
#else
extern char *strerror_r(int errnum, char *buf, size_t buflen);
#endif
#endif
const char *
curl_easy_strerror(CURLcode error)
{