X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fgetusershell.m4;h=1d74a00b22d450ec0a87fbcfa00fbaf601c645f0;hb=9a5b92fa76ec1494756d2ace6b7a0a43c48633ea;hp=5b8db67b84dedad5204d184cb54e46096648c7cd;hpb=3030c5b5e0a5199e16b05927da72c43c42f211c3;p=gnulib.git diff --git a/m4/getusershell.m4 b/m4/getusershell.m4 index 5b8db67b8..1d74a00b2 100644 --- a/m4/getusershell.m4 +++ b/m4/getusershell.m4 @@ -1,5 +1,5 @@ -# getusershell.m4 serial 5 -dnl Copyright (C) 2002-2003, 2006, 2008-2009 Free Software Foundation, Inc. +# getusershell.m4 serial 6 +dnl Copyright (C) 2002-2003, 2006, 2008-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,8 +11,17 @@ AC_DEFUN([gl_FUNC_GETUSERSHELL], dnl Persuade glibc to declare {get,set,end}usershell(). AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - AC_REPLACE_FUNCS([getusershell]) - if test $ac_cv_func_getusershell = no; then - HAVE_GETUSERSHELL=0 + dnl Check whether the getusershell function exists. + AC_CHECK_FUNCS_ONCE([getusershell]) + if test $ac_cv_func_getusershell = yes; then + dnl Check whether getusershell is declared. + AC_CHECK_DECLS([getusershell]) + if test $ac_cv_have_decl_getusershell = no; then + HAVE_DECL_GETUSERSHELL=0 + fi + else + AC_LIBOBJ([getusershell]) + dnl Assume that on platforms which declare it, the function exists. + HAVE_DECL_GETUSERSHELL=0 fi ])