This is the mail archive of the newlib@sources.redhat.com 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: recent breakage on mips: hash.c?


cgd@broadcom.com wrote:
> 
> I ran into some problems on mips which seem to be caused by the patch
> from:
> 
> 2002-06-20  Thomas Fitzsimmons  <fitzsim@redhat.com>
> 
> which adds the libc/search stuff.  (Amusing to see my re-implemented
> hcreate et al. show up someplace...  Is this the reason K.B. asked me
> about it a few weeks ago?  8-)  I didn't see any recent posting about
> that patch to the list...  Did i miss something, or is posting patches
> to the list not customary as it is for e.g. binutils?
> 
> Anyway, compiling from sources as of ... earlier today, host
> sparc-solaris target mips-elf, i get:
> 
> /projects/bbp_ext7/systems/cgd/proj/gcc-testing/work/mips-elf.build/gcc/xgcc -B/projects/bbp_ext7/systems/cgd/proj/gcc-testing/work/mips-elf.build/gcc/ -nostdinc -B/projects/bbp_ext7/systems/cgd/proj/gcc-testing/work/mips-elf.build/mips-elf/soft-float/newlib/ -isystem /projects/bbp_ext7/systems/cgd/proj/gcc-testing/work/mips-elf.build/mips-elf/soft-float/newlib/targ-include -isystem /home/cgd/proj/gcc-testing/combined/newlib/libc/include -B/home/cgd/proj/gcc-testing/work/mips-elf.install/mips-elf/bin/ -B/home/cgd/proj/gcc-testing/work/mips-elf.install/mips-elf/lib/ -isystem /home/cgd/proj/gcc-testing/work/mips-elf.install/mips-elf/include -L/projects/bbp_ext7/systems/cgd/proj/gcc-testing/work/mips-elf.build/ld  -msoft-float -DPACKAGE=\"newlib\" -DVERSION=\"1.10.0\"  -I. -I/home/cgd/proj/gcc-testing/combined/newlib/libc/search  -O2 -DMISSING_SYSCALL_NAMES -fno-builtin      -O2 -g -O2  -msoft-float -c /home/cgd/proj/gcc-testing/combined/newlib/libc/search/hash.c
> /home/cgd/proj/gcc-testing/combined/newlib/libc/search/hash.c: In function `init_hash':
> /home/cgd/proj/gcc-testing/combined/newlib/libc/search/hash.c:298: error: `BYTE_ORDER' undeclared (first use in this function)
> /home/cgd/proj/gcc-testing/combined/newlib/libc/search/hash.c:298: error: (Each undeclared identifier is reported only once
> /home/cgd/proj/gcc-testing/combined/newlib/libc/search/hash.c:298: error: for each function it appears in.)
> gmake[5]: *** [hash.o] Error 1
> 
> Looks like this would normally be defined by
> libc/include/sys/param.h because of __IEEE_{BIG,LITTLE}_ENDIAN.
> 
> In turn, those are defined in one of:
> 
>         ./libc/include/machine/ieeefp.h
>         ./libc/include/sys/config.h
> 
> it looks like MIPS currently only has the macros defined in the
> former.  The latter has the comment:
> 
> /* ??? Why is much of this stuff duplicated with machine/ieeefp.h?  */
> 
> so it looks like others have been confused by this in the past?
> 
> I've copied the MIPSE{L,B} blocks from ieeefp.h to config.h, and am
> going to give it a go...  but does that sound like the right solution?
> The duplication ... does seem silly and harmful...
> 

I have a patch which I am testing as we speak.  I have placed a default setting in
sys/param.h based on whether sys/config.h sets BYTE_ORDER or not.  The same default
setting goes in hash.h in libc/search.  Both are protected.  This seems to remove the 
problem and avoid conflict with Cygwin that defines BYTE_ORDER or the other systems that 
provide sys/param.h.

I will repost when my testing is completed and the patch is applied.

-- Jeff J.


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