This is the mail archive of the newlib@sources.redhat.com mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RTEMS patch sweep: stdint.h/inttypes.h


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]