RTEMS patch sweep: stdint.h/inttypes.h

Joel Sherrill <joel@OARcorp.com> joel.sherrill@OARcorp.com
Mon Mar 7 12:25:00 GMT 2005

Jeff Johnston wrote:
> Hi Nicholas.  See the discussion this last week on the list.  It was 
> initially RTEMS only, but it was suggested it be made shared as the 
> defines will be needed by other non-rtems builds.  Corinna has been part 
> of the conversation.  If Cygwin needs to revert or modify it, I'm ok 
> with Corinna doing that.  I will be away this next week and am getting 
> ready to leave right now.
> There already is machine header directories per platform in newlib so 
> perhaps I do not understand your request.
> -- Jeff J.
> Nicholas Wourms wrote:
>> Why is machine/_types.h in a shared directory?

Why shouldn't it be?  For the most part, the type definitions are CPU 
and multilib variant dependent.

>> I guess what I'm saying is: what is the point of adding these defines 
>> globally if they are only being used by rtems?  This stuff is really 
>> platform specific and shouldn't be filled with crazy ifdef logic.  

It is standard "don't redefine this" logic that has been common in
types.h/stdint.h files since the beginning of time.  It is just an
extension of what was already being used to prevent certain
times (time_t?) from being defined in two .h files.

>> However, it seems the damage is done, so I've come up with another 
>> idea.  A better soultion would be to add a "machine" directory for 
>> each platform and put it there.  That way, each platform could modify 
>> it to their needs.  This is how GLIBC does it, so I see no reason why 
>> we can't.

WIthout knowing why glibc did what it did, why is it necessary to
duplicate all those definitions?

>> Cheers,
>> Nicholas
>> P.S. - I'm sorry if I sound a little cranky, it's just that I've been 
>> working on a cygwin project for 6 months now to add a whole bunch of 
>> c99 extensions.  As part of this, I had to create a file of the same 
>> name, but I put it in winsup/cygwin/include/machine/_types.h.

Ralf has been working on converting RTEMS to C99 types for at least
the same length of time.  We just want to reduce the unnecessary
variations and duplication.

>> Switch to Netscape Internet Service.
>> As low as $9.95 a month -- Sign up today at 
>> http://isp.netscape.com/register
>> Netscape. Just the Net You Need.
>> New! Netscape Toolbar for Internet Explorer
>> Search from anywhere on the Web and block those annoying pop-ups.
>> Download now at http://channels.netscape.com/ns/search/install.jsp

Joel Sherrill, Ph.D.             Director of Research & Development
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985

More information about the Newlib mailing list