summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2021-01-05 04:48:20 +0100
committerBruno Haible <bruno@clisp.org>2021-01-05 04:48:20 +0100
commitf120c3d08c0d8c2d0a743bf08dd876949f0edb75 (patch)
tree480f6c46a17fe541ee28b01d9d47fe854e0b6dda /modules
parent5e6fdcd601b83417a3f29c27fa0eb4ead053e1ea (diff)
downloadgnulib-f120c3d08c0d8c2d0a743bf08dd876949f0edb75.tar.gz
mkfifoat: Work around trailing slash bug in mknodat() on AIX 7.2.
* m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Set also REPLACE_MKNODAT. * lib/sys_stat.in.h (mknodat): Consider REPLACE_MKNODAT. * lib/mknodat.c: Add an overriding implementation of mknodat(). * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize REPLACE_MKNODAT. * modules/sys_stat (Makefile.am): Substitute REPLACE_MKNODAT. * modules/mkfifoat (Depends-on, configure.ac): Consider REPLACE_MKNODAT. * doc/posix-functions/mknodat.texi: Mention the AIX bug.
Diffstat (limited to 'modules')
-rw-r--r--modules/mkfifoat4
-rw-r--r--modules/sys_stat1
2 files changed, 3 insertions, 2 deletions
diff --git a/modules/mkfifoat b/modules/mkfifoat
index f91d64c339..b78efd3d10 100644
--- a/modules/mkfifoat
+++ b/modules/mkfifoat
@@ -11,7 +11,7 @@ m4/mkfifoat.m4
Depends-on:
sys_stat
extensions
-fstatat [test $REPLACE_MKFIFOAT = 1]
+fstatat [test $REPLACE_MKFIFOAT = 1 || test $REPLACE_MKNODAT = 1]
at-internal [test $HAVE_MKFIFOAT = 0 || test $HAVE_MKNODAT = 0]
errno [test $HAVE_MKFIFOAT = 0 || test $HAVE_MKNODAT = 0]
fchdir [test $HAVE_MKFIFOAT = 0 || test $HAVE_MKNODAT = 0]
@@ -28,7 +28,7 @@ gl_FUNC_MKFIFOAT
if test $HAVE_MKFIFOAT = 0 || test $REPLACE_MKFIFOAT = 1; then
AC_LIBOBJ([mkfifoat])
fi
-if test $HAVE_MKNODAT = 0; then
+if test $HAVE_MKNODAT = 0 || test $REPLACE_MKNODAT = 1; then
AC_LIBOBJ([mknodat])
fi
gl_SYS_STAT_MODULE_INDICATOR([mkfifoat])
diff --git a/modules/sys_stat b/modules/sys_stat
index 3da1272c5e..26971975e4 100644
--- a/modules/sys_stat
+++ b/modules/sys_stat
@@ -75,6 +75,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU
-e 's|@''REPLACE_MKFIFO''@|$(REPLACE_MKFIFO)|g' \
-e 's|@''REPLACE_MKFIFOAT''@|$(REPLACE_MKFIFOAT)|g' \
-e 's|@''REPLACE_MKNOD''@|$(REPLACE_MKNOD)|g' \
+ -e 's|@''REPLACE_MKNODAT''@|$(REPLACE_MKNODAT)|g' \
-e 's|@''REPLACE_STAT''@|$(REPLACE_STAT)|g' \
-e 's|@''REPLACE_UTIMENSAT''@|$(REPLACE_UTIMENSAT)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \