[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Functions defined both in RTEMS and NEWLIB.



Thanks a lot. Current CVS version of NEWLIB indeed has the required define in
place. Seems that I somehow loosed it when imported NEWLIB 1.8.2 into my own
CVS repository :-(

It was my mistake, sorry.

BR,
Sergei Organov.

Charles-Antoine Gauthier <charles.gauthier at nrc.ca> writes:

> Sergei Organov wrote:
> > 
> > Hello,
> > 
> > I'm configuring/building the RTEMS snapshot (20000118) for PowerPC/papyrus
> > target as a first step of my attempt to port 4.x RTEMS to the MPC5xx
> > processors. I use gcc-2.95.2 and newlib-1.8.2 (actually the latest version
> > from CVS).
> > 
> > The question is: where reentrant syscalls (_read_r, etc.) should reside? In
> > RTEMS code or in NEWLIB? They were defined in both places and I removed them
> > from NEWLIB by adding -DREENTRANT_SYSCALLS_PROVIDED to the 'newlib_cflags' in
> > the RTEMS section of NEWLIB configuration file (newlib/configure.host). Is it
> > the right thing to do? If so, then should I send a patch to Cygnus, or
> > somebody from OAR will do it?
> > 
> > Thanks,
> > Sergei Organov.
> 
> Hum... If you use the powerpc-rtems target,
> -DREENTRANT_SYSCALLS_PROVIDED is already thrown for you in
> configure.host.
> 
> case "${host}" in
> # RTEMS supplies its own versions of some routines:
> #       malloc()            (reentrant version)
> #       exit()              RTEMS has a "global" reent to flush
> #       signal()/raise()    RTEMS has its own including pthread signals
> #       _XYZ_r()            RTEMS has its own reentrant routines
> #
> #  NOTE: When newlib malloc uses a semaphore, RTEMS will switch to that.
>   *-*-rtems*)
> 	newlib_cflags="${newlib_cflags} -DHAVE_GETTIMEOFDAY -DMALLOC_PROVIDED
> -DEXIT_PROVIDED -DMISSING_SYSCALL_NAMES -DSIGNAL_PROVIDED
> -DREENTRANT_SYSCALLS_PROVIDED -DHAVE_OPENDIR"
> 	;;
> 
> I always do a one-tree build. I add a symlink to newlib-1.8.2/newlib in
> egcs/ and then do a build in a separate tree. Add --with-newlib to the
> list of arguments to ../egcs/configure.
> 
> Most RTEMS build bugs were ironed out in newlib-1.8.2. I should just
> build.
> 
> -- 
> Charles-Antoine Gauthier
> Institute for Information Technology   Institut de technologie de
> l'information
> National Research Council of Canada    Conseil national de recherches du
> Canada