Does the following patch to lib/openat.h fix the problem for you?
--- old/lib/openat.h 2010-04-23 06:44:00.000000000 -0700
+++ new/lib/openat.h 2010-10-04 12:36:16.924755978 -0700
@@ -94,21 +94,16 @@
}
#if GNULIB_FACCESSAT
-/* For now, there are no wrappers named laccessat or leuidaccessat,
+/* These are macros, not inline functions, so that special libraries
+ such as -lgen are not needed unless the macros are invoked.
+
+ For now, there are no wrappers named laccessat or leuidaccessat,
since gnulib doesn't support faccessat(,AT_SYMLINK_NOFOLLOW) and
since access rights on symlinks are of limited utility. */
-static inline int
-accessat (int fd, char const *file, int mode)
-{
- return faccessat (fd, file, mode, 0);
-}
+# define accessat(fd, file, mode) faccessat (fd, file, mode, 0)