This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFC/AIX] xm-aix4.h - get rid of #undef fd_set & select#include
- From: Kevin Buettner <kevinb at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Mon, 9 Aug 2004 11:23:34 -0700
- Subject: Re: [RFC/AIX] xm-aix4.h - get rid of #undef fd_set & select#include
- Organization: Red Hat
- References: <20040808042601.GA24160@gnat.com>
On Sat, 7 Aug 2004 21:26:01 -0700
Joel Brobecker <brobecker@gnat.com> wrote:
> config/xm-aix4.h contains the following definitions:
>
> | /* The following text is taken from config/rs6000.mh:
> | * # The IBM version of /usr/include/rpc/rpc.h has a bug -- it says
> | * # `extern fd_set svc_fdset;' without ever defining the type fd_set.
> | * # Unfortunately this occurs in the vx-share code, which is not configured
> | * # like the rest of GDB (e.g. it doesn't include "defs.h").
> | * # We circumvent this bug by #define-ing fd_set here, but undefining it in
> | * # the xm-rs6000.h file before ordinary modules try to use it. FIXME, IBM!
> | * MH_CFLAGS='-Dfd_set=int'
> | * So, here we do the undefine...which has to occur before we include
> | * <sys/select.h> below.
> | */
> | #undef fd_set
> |
> | #include <sys/select.h>
>
> On our systems (AIX 4.3.2 and 5.1), this type is defined in time.h
>
> typedef struct
> #ifdef _ALL_SOURCE
> fd_set
> #endif /* _ALL_SOURCE */
> {
> long fds_bits[__NUM_ENTRIES]; /* bitmask for open file descriptors */
> } fd_set;
>
> I couldn't find config/rs6000.mh, nor the original comment. So I wonder
> if we wouldn't be able to delete these two.
>
> I can give it a try, but would I miss something?
I'm all in favor of giving it a try. I suspect that the the above was
intended as a workaround for a much older version of AIX. (FWIW, I
can't find the original comment either, but the xm-aix4.h comment and
associated hackery was added in 1996.)
Kevin