X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fsys_stat.in.h;h=da965d02704c21ccbf0389a81febb9217f23b8fb;hb=1a2869593e115e4a6c74aaa0b23ca612357403ce;hp=aeca760ecbffa2e64efbd42765cf8388ee9f6201;hpb=e9e4f97f438cb507be7c24b7624de7ec81e7c2a5;p=gnulib.git diff --git a/lib/sys_stat.in.h b/lib/sys_stat.in.h index aeca760ec..da965d027 100644 --- a/lib/sys_stat.in.h +++ b/lib/sys_stat.in.h @@ -1,5 +1,5 @@ /* Provide a more complete sys/stat header file. - Copyright (C) 2005-2008 Free Software Foundation, Inc. + Copyright (C) 2005-2009 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 @@ -35,6 +35,9 @@ #ifndef _GL_SYS_STAT_H +/* Get nlink_t. */ +#include + /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_SYS_STAT_H@ @@ -275,15 +278,28 @@ # define S_IRWXUGO (S_IRWXU | S_IRWXG | S_IRWXO) #endif + +#ifdef __cplusplus +extern "C" { +#endif + + +#if @GNULIB_LSTAT@ +# if ! @HAVE_LSTAT@ /* mingw does not support symlinks, therefore it does not have lstat. But without links, stat does just fine. */ -#if ! @HAVE_LSTAT@ -# define lstat stat -#endif -#if @GNULIB_LSTAT@ && @REPLACE_LSTAT@ -# undef lstat -# define lstat rpl_lstat +# define lstat stat +# elif @REPLACE_LSTAT@ +# undef lstat +# define lstat rpl_lstat extern int rpl_lstat (const char *name, struct stat *buf); +# endif +#elif defined GNULIB_POSIXCHECK +# undef lstat +# define lstat(p,b) \ + (GL_LINK_WARNING ("lstat is unportable - " \ + "use gnulib module lstat for portability"), \ + lstat (p, b)) #endif @@ -334,6 +350,12 @@ extern int lchmod (const char *filename, mode_t mode); lchmod (f, m)) #endif + +#ifdef __cplusplus +} +#endif + + #endif /* _GL_SYS_STAT_H */ #endif /* _GL_SYS_STAT_H */ #endif