OLD | NEW |
(Empty) | |
| 1 # strerror.m4 serial 9 |
| 2 dnl Copyright (C) 2002, 2007-2008 Free Software Foundation, Inc. |
| 3 dnl This file is free software; the Free Software Foundation |
| 4 dnl gives unlimited permission to copy and/or distribute it, |
| 5 dnl with or without modifications, as long as this notice is preserved. |
| 6 |
| 7 AC_DEFUN([gl_FUNC_STRERROR], |
| 8 [ |
| 9 AC_REQUIRE([gl_FUNC_STRERROR_SEPARATE]) |
| 10 if test $REPLACE_STRERROR = 1; then |
| 11 AC_LIBOBJ([strerror]) |
| 12 AC_DEFINE_UNQUOTED([REPLACE_STRERROR], [$REPLACE_STRERROR], |
| 13 [Define this to 1 if strerror is broken.]) |
| 14 fi |
| 15 ]) |
| 16 |
| 17 # Like gl_FUNC_STRERROR, except prepare for separate compilation (no AC_LIBOBJ). |
| 18 AC_DEFUN([gl_FUNC_STRERROR_SEPARATE], |
| 19 [ |
| 20 AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) |
| 21 AC_REQUIRE([gl_HEADER_ERRNO_H]) |
| 22 if test -z "$ERRNO_H"; then |
| 23 AC_CACHE_CHECK([for working strerror function], |
| 24 [gl_cv_func_working_strerror], |
| 25 [AC_RUN_IFELSE( |
| 26 [AC_LANG_PROGRAM( |
| 27 [[#include <string.h> |
| 28 ]], |
| 29 [[return !*strerror (-2);]])], |
| 30 [gl_cv_func_working_strerror=yes], |
| 31 [gl_cv_func_working_strerror=no], |
| 32 [dnl Assume crossbuild works if it compiles. |
| 33 AC_COMPILE_IFELSE( |
| 34 [AC_LANG_PROGRAM( |
| 35 [[#include <string.h> |
| 36 ]], |
| 37 [[return !*strerror (-2);]])], |
| 38 [gl_cv_func_working_strerror=yes], |
| 39 [gl_cv_func_working_strerror=no]) |
| 40 ]) |
| 41 ]) |
| 42 if test $gl_cv_func_working_strerror = no; then |
| 43 dnl The system's strerror() fails to return a string for out-of-range |
| 44 dnl integers. Replace it. |
| 45 REPLACE_STRERROR=1 |
| 46 fi |
| 47 else |
| 48 dnl The system's strerror() cannot know about the new errno values we add |
| 49 dnl to <errno.h>. Replace it. |
| 50 REPLACE_STRERROR=1 |
| 51 fi |
| 52 if test $REPLACE_STRERROR = 1; then |
| 53 gl_PREREQ_STRERROR |
| 54 fi |
| 55 ]) |
| 56 |
| 57 # Prerequisites of lib/strerror.c. |
| 58 AC_DEFUN([gl_PREREQ_STRERROR], [ |
| 59 AC_CHECK_DECLS([strerror]) |
| 60 AC_CHECK_HEADERS_ONCE([sys/socket.h]) |
| 61 if test $ac_cv_header_sys_socket_h != yes; then |
| 62 dnl We cannot use AC_CHECK_HEADERS_ONCE here, because that would make |
| 63 dnl the check for those headers unconditional; yet cygwin reports |
| 64 dnl that the headers are present but cannot be compiled (since on |
| 65 dnl cygwin, all socket information should come from sys/socket.h). |
| 66 AC_CHECK_HEADERS([winsock2.h]) |
| 67 fi |
| 68 ]) |
OLD | NEW |