https://bugs.gentoo.org/898598 https://github.com/coreutils/gnulib/commit/3c136a2cc38d71083f123231a8b9ad4b01930789 --- a/configure +++ b/configure @@ -17084,6 +17084,8 @@ else #include <unistd.h> #include <stdlib.h> #include <errno.h> +/* Android 4.3 declares fchownat() in <sys/stat.h> instead. */ +#include <sys/stat.h> #include <sys/types.h> int main () @@ -17130,6 +17132,8 @@ else /* end confdefs.h. */ #include <unistd.h> #include <fcntl.h> + /* Android 4.3 declares fchownat() in <sys/stat.h> instead. */ + #include <sys/stat.h> int main () --- a/lib/unistd.in.h +++ b/lib/unistd.in.h @@ -113,6 +113,13 @@ # include <netdb.h> #endif +/* Android 4.3 declares fchownat in <sys/stat.h>, not in <unistd.h>. */ +/* But avoid namespace pollution on glibc systems. */ +#if (@GNULIB_FCHOWNAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \ + && !defined __GLIBC__ +# include <sys/stat.h> +#endif + /* MSVC defines off_t in <sys/types.h>. May also define off_t to a 64-bit type on native Windows. */ #if !@HAVE_UNISTD_H@ || @WINDOWS_64_BIT_OFF_T@