Implementation of ARM EABI library requirements?
Mark Mitchell
mark@codesourcery.com
Tue Dec 18 16:21:00 GMT 2007
Jeff Johnston wrote:
> Mark Mitchell wrote:
>> The ABI for the ARM Architecture specifies requirements for libraries
>> that permit modules to be linked with any compliant run-time library.
>> For example, a distributor could build some code with ARM's proprietary
>> compiler (using headers from that compiler), but we could then link it
>> with Newlib. The technical specification is available here:
>>
>> http://infocenter.arm.com/help/topic/com.arm.doc.ihi0039a/IHI0039A_clibabi.pdf
> I'm not personally sold on changing open-source to benefit proprietary
> vendors, but nevertheless, regarding changes to newlib, my first
Providing a common interface benefits both proprietary and open-source
users. Amusingly, in this case, the reason I'm asking the question
isn't actually about ARM -- it's for a customer interested in being able
to link application code with either Newlib or GLIBC, without having to
know which one is in use at compile-time. Even for open-source user,
it's nice to be able to distribute binary libraries that are not
OS-specific.
> question is: is full C99 spec conformance required? Newlib isn't fully
> C99 compliant.
No, full C99 compliance isn't required.
> I have no objections to placing generic flags in the shared header files
> to hide macros/constants/types that require redefinition. Regarding the
> redefinitions, if they don't overly clutter up the shared header files,
> then I would be ok with your proposal above to have a generic version.
OK. I'm pretty sure that the clutter wouldn't be excessive; we're
probably talking about ~10 lines of code in each of several header
files. So, I'm pretty sure we could make that work. Thanks for the
feedback!
Thanks,
--
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713
More information about the Newlib
mailing list