X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fisapipe.m4;h=2c94aef996f0031d11ac61ac84f2668daee75630;hb=5191b3546cfb6c163228c23f214e325ddf60d46f;hp=8f7999cbd7779097cc81bf8a935fcccc7b3af70a;hpb=441aa3044f43e5572f58c354f01e6bc070acd5c7;p=gnulib.git diff --git a/m4/isapipe.m4 b/m4/isapipe.m4 index 8f7999cbd..2c94aef99 100644 --- a/m4/isapipe.m4 +++ b/m4/isapipe.m4 @@ -1,6 +1,6 @@ # Test whether a file descriptor is a pipe. -dnl Copyright (C) 2006, 2009 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2009-2013 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,9 +11,11 @@ dnl Written by Paul Eggert. AC_DEFUN([gl_ISAPIPE], [ # OpenVMS has isapipe already, so check for it. - AC_REPLACE_FUNCS([isapipe]) - if test $ac_cv_func_isapipe = no; then - gl_PREREQ_ISAPIPE + AC_CHECK_FUNCS([isapipe]) + if test $ac_cv_func_isapipe = yes; then + HAVE_ISAPIPE=1 + else + HAVE_ISAPIPE=0 fi ]) @@ -39,8 +41,10 @@ AC_DEFUN([gl_PREREQ_ISAPIPE], { int fd[2]; struct stat st; - if (pipe (fd) != 0 || fstat (fd[0], &st) != 0) + if (pipe (fd) != 0) return 1; + if (fstat (fd[0], &st) != 0) + return 2; if (2 <= argc && argv[1][0] == '-') { char const *yesno = (S_ISFIFO (st.st_mode) ? "yes" : "no"); @@ -48,21 +52,21 @@ AC_DEFUN([gl_PREREQ_ISAPIPE], { long int i = st.st_nlink; if (i != st.st_nlink) - return 1; + return 3; printf ("%s (%ld)\n", yesno, i); } else { unsigned long int i = st.st_nlink; if (i != st.st_nlink) - return 1; + return 4; printf ("%s (%lu)\n", yesno, i); } } else { if (! S_ISFIFO (st.st_mode) && ! S_ISSOCK (st.st_mode)) - return 1; + return 5; } return 0; }]])],