Blame m4/lchown.m4

Packit Service a2489d
# serial 17
Packit Service a2489d
# Determine whether we need the lchown wrapper.
Packit Service a2489d
Packit Service a2489d
dnl Copyright (C) 1998, 2001, 2003-2007, 2009-2018 Free Software Foundation,
Packit Service a2489d
dnl Inc.
Packit Service a2489d
Packit Service a2489d
dnl This file is free software; the Free Software Foundation
Packit Service a2489d
dnl gives unlimited permission to copy and/or distribute it,
Packit Service a2489d
dnl with or without modifications, as long as this notice is preserved.
Packit Service a2489d
Packit Service a2489d
dnl From Jim Meyering.
Packit Service a2489d
dnl Provide lchown on systems that lack it, and work around bugs
Packit Service a2489d
dnl on systems that have it.
Packit Service a2489d
Packit Service a2489d
AC_DEFUN([gl_FUNC_LCHOWN],
Packit Service a2489d
[
Packit Service a2489d
  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
Packit Service a2489d
  AC_REQUIRE([gl_FUNC_CHOWN])
Packit Service a2489d
  AC_CHECK_FUNCS_ONCE([lchmod])
Packit Service a2489d
  AC_CHECK_FUNCS([lchown])
Packit Service a2489d
  if test $ac_cv_func_lchown = no; then
Packit Service a2489d
    HAVE_LCHOWN=0
Packit Service a2489d
  else
Packit Service a2489d
    dnl Trailing slash and ctime bugs in chown also occur in lchown.
Packit Service a2489d
    case "$gl_cv_func_chown_slash_works" in
Packit Service a2489d
      *yes) ;;
Packit Service a2489d
      *)
Packit Service a2489d
        REPLACE_LCHOWN=1
Packit Service a2489d
        ;;
Packit Service a2489d
    esac
Packit Service a2489d
    case "$gl_cv_func_chown_ctime_works" in
Packit Service a2489d
      *yes) ;;
Packit Service a2489d
      *)
Packit Service a2489d
        REPLACE_LCHOWN=1
Packit Service a2489d
        ;;
Packit Service a2489d
    esac
Packit Service a2489d
  fi
Packit Service a2489d
])