This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Sharing of bits/fcntl.h on Linux (SPARC, x86)
On 10/22/2012 06:33 PM, Joseph S. Myers wrote:
On Mon, 22 Oct 2012, Andreas Jaeger wrote:
On which architecture? I'll investigate and fix.
This was on x86_64, but I don't see *any* __O_SYNC definitions, for any
architecture, so I expect it will be broken everywhere.
You're right, I'll fix this during the next 24 hours (not sure whether I
manage tonight).
The sys/types.h change was intentional, if this causes failures, then an
include is missing,
I believe it was previously deliberately decided that public POSIX headers
should be self-contained in the sense of defining all the types involved
in the prototypes and structures in those headers - that glibc would treat
the changes that have been made in POSIX to make headers self-contained in
that way as fixes to defects in older versions of POSIX. That is, off_t,
mode_t and pid_t should by this model be defined in fcntl.h for all POSIX
versions, even though older versions do not require them to be defined
there (but do permit them to be defined there). Also on this basis, all
the code in conformtest.pl that might prepend other includes when testing
a header is commented out. So if you don't include <sys/types.h> then the
conditions around the definitions of those three types in io/fcntl.h
should be removed.
so, you suggest to remove the check for __USE_XOPEN* completely from:
#if defined __USE_XOPEN || defined __USE_XOPEN2K
/* The Single Unix specification says that some more types are
available here. */
# ifndef __mode_t_defined
typedef __mode_t mode_t;
# define __mode_t_defined
# endif
...
I'll look into this later.
Thanks,
Andreas
--
Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126