Revamp lchown so that it lives in unistd.h where it belongs.
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 16 Jun 2007 06:10:44 +0000 (06:10 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 16 Jun 2007 06:10:44 +0000 (06:10 +0000)
commit20b5ea915e5041b7d27d6d4fea6fc34a1d89dc45
tree3073687a448de6ff93cf7ca71a432c5efd8de4c9
parentb6ccac4f09fe7d01cc0b2aeb7b23d028f520ecef
Revamp lchown so that it lives in unistd.h where it belongs.
* lib/lchown.h: Remove.
* lib/dirchownmod.c: Don't include lib/lchown.h.
* lib/fchownat.c: Likewise.
* lib/openat.c: Likewise.
* lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
does not follow symlinks.
(EOPNOTSUPP): Define if not defined.
* lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
is defined to 0.
(lchown): New decl.
* m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
Do not check for lchown decl.
Set REPLACE_LCHOWN.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
REPLACE_LCHOWN.
* modules/chown: Make it clear it follows symlinks.
* modules/lchown: Make it clear it doesn't follow symlinks.
(Files): Remove lib/lchown.h
(Depends-on): Add unistd.
(configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
(Include): Include <unistd.h>, not "lchown.h".
* modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
REPLACE_LCHOWN.
12 files changed:
ChangeLog
lib/dirchownmod.c
lib/fchownat.c
lib/lchown.c
lib/lchown.h [deleted file]
lib/openat.c
lib/unistd_.h
m4/lchown.m4
m4/unistd_h.m4
modules/chown
modules/lchown
modules/unistd