On Nov 16 11:52, Sebastian Huber wrote:
>On 14/11/15 10:55, Corinna Vinschen wrote:
> >On Nov 13 15:44, Sebastian Huber wrote:
> >>>On 13/11/15 10:53, Corinna Vinschen wrote:
> >>>> >RTEMS guys, any input on how you handle this stuff? Do we have to stick
> >>>> >to sys/types.h or shall we carefully rearrange the definitions to be
> >>>> >better aligned with BSD, Linux, et al?
> >>>
> >>>It would be good to rearrange the definitions to be better aligned with BSD
> >>>and Linux. My long term goal is to get rid of the RTEMS-specific param.h
> >>>(newlib/libc/sys/rtems/include/sys/param.h).
> >Sounds good. What about sys/select.h and the matching macros in
> >sys/types.h?
>
>Newlib has currently no sys/select.h. RTEMS provides its own copy of this
>file. Do you plan to import a sys/select.h into Newlib and use it for
>Cygwin?
Cygwin is using its own copy of sys/select.h. I hacked a bit on this
and I came up with a sys/select.h which works for Cygwin and which might
be ok for inclusion into newlib. See the attached patch. I removed the
source patches required to make this work on Cygwin, so this patch only
shows what affects all targets.
Note especially:
- I moved NBBY to sys/param.h.
- Define howmany in sys/param.h.
In sys/select.h, as on FreeBSD:
- Use "8" instead of "NBBY" (avoids dependency to sys/param.h).
- Redefine fd_mask as unsigned long, rather than signed long.
- Use _howmany instead of howmany.
Please have a look if these changes would be ok for you.