X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=lib%2Fdirent.in.h;fp=lib%2Fdirent.in.h;h=2b1d0a52a21c37b14f9ddea1c3b4e89a838d50e8;hb=cf7169a2ede9bb08b71de68fe0c8bbecf827abe6;hp=db3de951137757591eccfe44e6c74204628c82e3;hpb=138fc7e67e3d9845cd7d81aad0e9c7724784f9b9;p=tar diff --git a/lib/dirent.in.h b/lib/dirent.in.h index db3de95..2b1d0a5 100644 --- a/lib/dirent.in.h +++ b/lib/dirent.in.h @@ -1,5 +1,5 @@ -/* Wrapper around . - Copyright (C) 2006-2007 Free Software Foundation, Inc. +/* A GNU-like . + Copyright (C) 2006-2008 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,19 +16,25 @@ #ifndef _GL_DIRENT_H +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif + /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_DIRENT_H@ #ifndef _GL_DIRENT_H #define _GL_DIRENT_H +/* The definition of GL_LINK_WARNING is copied here. */ -/* Declare overridden functions. */ #ifdef __cplusplus extern "C" { #endif +/* Declare overridden functions. */ + #if @REPLACE_FCHDIR@ # define opendir rpl_opendir extern DIR * opendir (const char *); @@ -36,6 +42,22 @@ extern DIR * opendir (const char *); extern int closedir (DIR *); #endif +/* Declare GNU extensions. */ + +#if @GNULIB_DIRFD@ +# if !@HAVE_DECL_DIRFD@ && !defined dirfd +/* Return the file descriptor associated with the given directory stream, + or -1 if none exists. */ +extern int dirfd (DIR const *dir); +# endif +#elif defined GNULIB_POSIXCHECK +# undef dirfd +# define dirfd(d) \ + (GL_LINK_WARNING ("dirfd is unportable - " \ + "use gnulib module dirfd for portability"), \ + dirfd (d)) +#endif + #ifdef __cplusplus } #endif