> This proposed patch splits off module mkdirat from module openat. This patch is tested on a dozen of platforms as well, like the other ones.
Here's a proposed fixup for some small omissions in the module descriptions. - fchmodat, fchownat, linkat, renameat use lib/at-func.c or lib/at-func2.c which requires openat_save_fail from module 'openat-die'. - openat uses lib/at-func.c, which includes <dirent.h>, thus requires module 'dirent'. - openat-tests: tests-openat.c includes test-open.h. Make sure this file is present, even if someone uses --avoid=open-tests. - renameat: No need to compile lib/at-func2.c if renameat() exists and is being overridden by gnulib. 2011-11-04 Bruno Haible <br...@clisp.org> openat, fchmodat, fchownat, linkat, renameat: Fix dependencies. * modules/fchmodat (Depends-on): Add openat-die. * modules/fchownat (Depends-on): Likewise. * modules/linkat (Depends-on): Likewise. * modules/renameat (Depends-on): Likewise. (configure.ac): Don't compile ac-func2.c if REPLACE_RENAMEAT is 1. * modules/openat (Depends-on): Add dirent. * modules/openat-tests (Files): Add tests/test-open.h. --- modules/fchmodat.orig Fri Nov 4 11:43:31 2011 +++ modules/fchmodat Fri Nov 4 10:55:38 2011 @@ -16,6 +16,7 @@ fchdir fcntl-h openat +openat-die save-cwd stdbool sys_stat --- modules/fchownat.orig Fri Nov 4 11:43:31 2011 +++ modules/fchownat Fri Nov 4 10:55:38 2011 @@ -17,6 +17,7 @@ fcntl-h lchown [test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1] openat +openat-die save-cwd stdbool sys_stat --- modules/linkat.orig Fri Nov 4 11:43:31 2011 +++ modules/linkat Fri Nov 4 10:55:38 2011 @@ -20,6 +20,7 @@ fstatat [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] getcwd-lgpl [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] openat [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] +openat-die [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] link [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] link-follow [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] lstat [test $HAVE_LINKAT = 0 || test $REPLACE_LINKAT = 1] --- modules/openat.orig Fri Nov 4 11:43:31 2011 +++ modules/openat Fri Nov 4 11:40:02 2011 @@ -11,6 +11,7 @@ m4/mode_t.m4 Depends-on: +dirent dosname errno extensions --- modules/openat-tests.orig Fri Nov 4 11:43:31 2011 +++ modules/openat-tests Fri Nov 4 11:34:33 2011 @@ -1,5 +1,6 @@ Files: tests/test-openat.c +tests/test-open.h tests/signature.h tests/macros.h --- modules/renameat.orig Fri Nov 4 11:43:31 2011 +++ modules/renameat Fri Nov 4 10:55:38 2011 @@ -15,6 +15,7 @@ fstat [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] getcwd-lgpl [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] openat [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] +openat-die [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] rename [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] same-inode [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] save-cwd [test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1] @@ -23,6 +24,8 @@ gl_FUNC_RENAMEAT if test $HAVE_RENAMEAT = 0 || test $REPLACE_RENAMEAT = 1; then AC_LIBOBJ([renameat]) +fi +if test $HAVE_RENAMEAT = 0; then AC_LIBOBJ([at-func2]) fi gl_STDIO_MODULE_INDICATOR([renameat]) -- In memoriam Yitzhak Rabin <http://en.wikipedia.org/wiki/Yitzhak_Rabin>