This is the mail archive of the newlib@sourceware.org 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: newlib with avr-libc support


Joel Sherrill wrote:
Ralf Corsepius wrote:
josh.switnicki@utoronto.ca wrote:
Hello,

I am working as a gsoc student on porting rtems to the atmega128.

I am having some trouble adding the .h files from avr-libc to newlib.
the end result I would like is to have two directories in the newlib include path with the avr specific .h file in them so that when the files are included in the code they would be included in the same way as would be done with avr-libc
ie. #include <avr/interrupts.h>
this is my first time attempting something like this and all the help and patience is greatly appreciated.

Generally speaking, you seem to be putting "the horse before the cart", i.e. you seem to approaching the problem from the wrong end.


In RTEMS, stuff like interrupts etc. belong into RTEMS, not into newlib.

Ralf, the .h files he is merging include all the CPU model
ifdef's and IO register names and bit definitions.  avr-libc
provides them and you need them to write device drivers,
=> device drivers == RTEMS
bring their setjmp/longjmp over and to write the RTEMS
context switch and interrupt vectoring code.
setjmp/longjmp are supposed to be machine independent and in newlib.

The problem he is having is that we need machine/avr/include/XXX
to get picked up and installed where XXX is a non-standard
directory.  sys/linux does this but it looks like the method has
changed since I last looked at it.
sys/linux is a hack

Ralf


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