X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Ferror.m4;h=6ea75ac02935f5f817983b072903eb2b6c838f3e;hb=ce38c27828c6a3286e99e312d50fe140a1ec334b;hp=358d650e614ec6abf8c14c6cfb66d4a8f90dcd28;hpb=67b2fb1be16e8f3b9c499c50eabbd3a27712f3ab;p=gnulib.git diff --git a/m4/error.m4 b/m4/error.m4 index 358d650e6..6ea75ac02 100644 --- a/m4/error.m4 +++ b/m4/error.m4 @@ -1,8 +1,39 @@ -strerror_r +#serial 13 -dnl These are the prerequisite macros for GNU's error.c file. -AC_DEFUN(_jm_PREREQ_ERROR, +# Copyright (C) 1996-1998, 2001-2004, 2009-2011 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_ERROR], +[ + AC_FUNC_ERROR_AT_LINE + dnl Note: AC_FUNC_ERROR_AT_LINE does AC_LIBSOURCES([error.h, error.c]). + gl_PREREQ_ERROR +]) + +# Redefine AC_FUNC_ERROR_AT_LINE, because it is no longer maintained in +# Autoconf. +AC_DEFUN([AC_FUNC_ERROR_AT_LINE], +[ + AC_LIBSOURCES([error.h, error.c])dnl + AC_CACHE_CHECK([for error_at_line], [ac_cv_lib_error_at_line], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[error_at_line (0, 0, "", 0, "an error occurred");]])], + [ac_cv_lib_error_at_line=yes], + [ac_cv_lib_error_at_line=no])]) + if test $ac_cv_lib_error_at_line = no; then + AC_LIBOBJ([error]) + fi +]) + +# Prerequisites of lib/error.c. +AC_DEFUN([gl_PREREQ_ERROR], [ - AC_CHECK_FUNCS(strerror strerror_r vprintf doprnt) - AC_HEADER_STDC + AC_REQUIRE([AC_FUNC_STRERROR_R]) + AC_REQUIRE([AC_C_INLINE]) + : ])