CRIS/CRISv32 port, newlib part (first part)
Hans-Peter Nilsson
hans-peter.nilsson@axis.com
Thu Jan 27 03:46:00 GMT 2005
> Date: Wed, 26 Jan 2005 15:48:43 -0500
> From: Jeff Johnston <jjohnstn@redhat.com>
> > newlib:
> > 2005-01-25 Hans-Peter Nilsson <hp@axis.com>
> >
> > * configure.host: Add support for cris-*-* and crisv32-*-*.
> > * newlib/libc/include/machine/ieeefp.h: Ditto.
> > * newlib/libc/include/machine/setjmp.h: Ditto.
> > * newlib/libc/machine/cris: New directory.
> > * newlib/libc/sys/cris: New directory.
> >
>
> You have neglected to list all the files that you added.
Not listing all files but only the directory names, was not done
out of neglection. This is apparently a per-project policy.
For the projects I've been involved in lately, "New directory"
has been a sufficient ChangeLog entry. Note taken.
> I have some issues.
Me too! :-)
> If you need to override sys header files, please note that I had recently added
> the capability to put sys header files in the machine directory (under a sys
> subdirectory) to avoid your situation. Please use that instead and remove the
> libc/sys/cris directory altogether as well as update your ChangeLog.
But... the way I read the stmp-targ-include rule in
newlib/Makefile.am, this doesn't let me override files in
include/ as sys/cris/include does; only include/machine/, so
this left out the include/pthread.h wrapper file. A patch to
allow that follows.
When doing that, I noticed that sys/<sysname>/machine/*.h files
override the ones in machine/<cpuname>/*.h and that you can't
override sys/<sysname>/sys/*.h files from
machine/<cpuname>/sys/*.h. Isn't that a bit backwards?
Shouldn't files in machine trump files in sys? Consider for
example a future updated machine-independent libc/sys/linux;
machines would presumably need specific include files. Hm, ok,
then it isn't good enough to put them in
machine/<cpudir>/sys/*.h, because they'd need to be both machine
and sys-specific and the machine subdir is only
machine-specific. And the sys/linux/include/*.h files would
likely be augmented to include files from machine/. So, is it
that the intersection of include/sys/*.h names from machine
respectively sys is supposed to be empty? Anyway, I kept the
sys-trumps-machine order:
2005-01-27 Hans-Peter Nilsson <hp@axis.com>
* Makefile.am (stmp-targ-include): Support include header files
from machine directories.
* Makefile.in: Regenerate.
Index: Makefile.am
===================================================================
RCS file: /cvs/src/src/newlib/Makefile.am,v
retrieving revision 1.32
diff -c -p -r1.32 Makefile.am
*** Makefile.am 6 Jan 2005 23:31:55 -0000 1.32
--- Makefile.am 27 Jan 2005 03:09:49 -0000
*************** stmp-targ-include: config.status
*** 201,206 ****
--- 201,211 ----
cp $$i targ-include/sys/`basename $$i`; \
else true; fi ; \
done
+ -for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \
+ if [ -f $$i ]; then \
+ cp $$i targ-include/`basename $$i`; \
+ else true; fi ; \
+ done
-for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \
if [ -f $$i ]; then \
cp $$i targ-include/`basename $$i`; \
Do you want me to send the files again or are you ok with me
committing them to the machine/ location with the following
changelog entry and the sys_dir=cris hunk in the previous
configure.host patch removed (after the machine/<cpu>/include
support is resolved)?
2005-01-27 Hans-Peter Nilsson <hp@axis.com>
* configure.host: Add support for cris-*-* and crisv32-*-*.
* libc/include/machine/ieeefp.h: Ditto.
* libc/include/machine/setjmp.h: Ditto.
* libc/machine/cris/configure.in, libc/machine/cris/Makefile.am,
libc/machine/cris/libcdtor.c, libc/machine/cris/setjmp.c,
libc/machine/cris/memmove.c, libc/machine/cris/memcpy.c,
libc/machine/cris/memset.c, libc/machine/cris/include/pthread.h,
libc/machine/cris/sys/signal.h, libc/machine/cris/sys/fcntl.h,
libc/machine/cris/sys/errno.h, libc/machine/cris/aclocal.m4,
libc/machine/cris/configure, libc/machine/cris/Makefile.in: New
files.
By the way, there was a bug in the submitted
libc/machine/cris/memmove.c; more about that next.
brgds, H-P
More information about the Newlib
mailing list