X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=m4%2Flchown.m4;h=9401d9f47ac3786bd337009d280caea4bf349678;hb=daa269958ad8d50ef8154ccb65e58acaf7a6dd99;hp=b719ed074c638a3bbca2ee1516831ca989b6381e;hpb=138fc7e67e3d9845cd7d81aad0e9c7724784f9b9;p=debian%2Ftar diff --git a/m4/lchown.m4 b/m4/lchown.m4 index b719ed07..9401d9f4 100644 --- a/m4/lchown.m4 +++ b/m4/lchown.m4 @@ -1,22 +1,38 @@ -#serial 12 +# serial 17 # Determine whether we need the lchown wrapper. -dnl Copyright (C) 1998, 2001, 2003, 2004, 2005, 2006, 2007 Free -dnl Software Foundation, Inc. +dnl Copyright (C) 1998, 2001, 2003-2007, 2009-2013 Free Software Foundation, +dnl 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. dnl From Jim Meyering. -dnl Provide lchown on systems that lack it. +dnl Provide lchown on systems that lack it, and work around bugs +dnl on systems that have it. AC_DEFUN([gl_FUNC_LCHOWN], [ AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_CHOWN]) - AC_REPLACE_FUNCS(lchown) + AC_CHECK_FUNCS_ONCE([lchmod]) + AC_CHECK_FUNCS([lchown]) if test $ac_cv_func_lchown = no; then - REPLACE_LCHOWN=1 + HAVE_LCHOWN=0 + else + dnl Trailing slash and ctime bugs in chown also occur in lchown. + case "$gl_cv_func_chown_slash_works" in + *yes) ;; + *) + REPLACE_LCHOWN=1 + ;; + esac + case "$gl_cv_func_chown_ctime_works" in + *yes) ;; + *) + REPLACE_LCHOWN=1 + ;; + esac fi ])