Reentrant vs non-reentrant stubs

J. Johnston
Thu Oct 3 12:26:00 GMT 2002

Doug Broadwell wrote:
> Making cross-environment for m68k-unknown-coff on i686-pc-linux-gnu.
> The documentation in reent.h states that to use reentrant stubs (e.g.,
> _open_r() ), make the following changes in (it doesn't state
> which to change):
>     set  syscall_dir to syscalls
>     add -DREENTRANT_SYSCALLS_PROVIDED to target_cflags
> To use non-reentrant stubs of the form, e.g., _open():
>     set  syscalls_dir to syscalls
> To use non-reentrant stubs of the form, e.g., open():
>   add -DMISSING_SYSCALL_NAMES to target_cflags
> My problems are:  Which  "target_cflags" doesn't exist in any
>, the closest thing is "CFLAGS", what to do?  What is the
> default configuration "out of the box"?
> Another problem, if I make a new install/build of newlib it makes fine.  If
> I immediately do a "make all install" or a "make clean all install", it
> error's out on the "__extension__ long long ..." statement in reent.h  I've
> tried this under both a 2.95.3 gcc and 3.2 gcc.  ???
> Thanks, Doug


  The documentation in the header file is out of date.  It should actually be
referring to (top-level newlib directory).  Instead of target_cflags,
it should refer to newlib_cflags (also found in  I will be posting a patch shortly.

  Regarding your error when rebuilding, can you provide more details please.

-- Jeff J.

More information about the Newlib mailing list