This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] <sys/stat.h>: Use Linux kernel UAPI header if available and useful
* Carlos O'Donell:
>> diff --git a/io/bits/statx-generic.h b/io/bits/statx-generic.h
>> new file mode 100644
>> index 0000000000..1f5abbf148
>> --- /dev/null
>> +++ b/io/bits/statx-generic.h
>> @@ -0,0 +1,60 @@
>> +/* Generic statx-related definitions and declarations.
>> + Copyright (C) 2018-2019 Free Software Foundation, Inc.
>
> s/2018-2019/2019/g
>
> This looks like a new-from-scratch file even if it's based on the
> other stat.h header.
I disagree, it contains more than twenty lines from the old file, not
counting the copyright header.
> So if __has_include is not defined this is all #if 0, and removed.
>
> So in the use case that the compiler is new enough:
>
> - If sys/stat.h is included first we check to see if linux/stat.h file is
> includeable and then do so, and avoid including our own definitions.
>
> - If linux/stat.h is included first we again detect it is includeable,
> include it again (idempotent), and avoid our own definitions.
Note that we also need to cover the case where <linux/stat.h> exists,
but does not contain the statx definitions. Hence the STATX_TYPE check
below.
>> +# include <linux/stat.h>
>> +# ifdef STATX_TYPE
>> +# define __statx_timestamp_defined 1
>> +# define __statx_defined 1
>> +# endif
>> +#endif
>> +
>> +#include <bits/statx-generic.h>
Thanks,
Florian