* lib/renameat.c: Include unistd.h before stdio.h, because Solaris 10 declares renameat in unistd.h. Problem encountered when building GNU tar 1.24 on Solaris 10. --- ChangeLog | 8 ++++++++ lib/renameat.c | 6 ++++++ 2 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/ChangeLog b/ChangeLog index f18abb1..38888bf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2010-10-26 Paul Eggert <[email protected]> + + renameat: port to Solaris 10, which declares renameat in unistd.h + + * lib/renameat.c: Include unistd.h before stdio.h, because + Solaris 10 declares renameat in unistd.h. Problem encountered + when building GNU tar 1.24 on Solaris 10. + 2010-10-26 Christian Weisgerber <[email protected]> (tiny change) fdopendir: fix C89 compilation diff --git a/lib/renameat.c b/lib/renameat.c index f294765..692fd52 100644 --- a/lib/renameat.c +++ b/lib/renameat.c @@ -18,6 +18,12 @@ #include <config.h> +/* Solaris 10, which predates POSIX-2008, declares its renameat in + unistd.h. Include unistd.h before including stdio.h, so that + gnulib's stdio.h doesn't #define renameat to rpl_renameat before + Solaris 10's unistd.h declares the system renameat. */ +#include <unistd.h> + #include <stdio.h> #if HAVE_RENAMEAT -- 1.7.2
