Subject: mips/endian.h problem
To: None <port-pmax@NetBSD.ORG>
From: Arne H. Juul <arnej@pvv.unit.no>
List: port-pmax
Date: 06/03/1996 23:40:53
the <mips/endian.h> problem has been converted to use u_int32_t and
u_int16_t, but this probably needs to be backed out for now, like
it has been for i386:

 > jtc
 > Wed May  8 16:00:40 EDT 1996
 > Update of /a/cvsroot/src/sys/arch/i386/include
 > In directory pain.lcs.mit.edu:/a/tmp/cvs-serv20523
 > 
 > Modified Files:
 >         endian.h 
 > Log Message:
 > Revert last change.
 > Changing types from unsigned {long,short} to u_int{32,16}_t causes problems
 > in a lot of userlevel code because those types aren't defined when machine/
 > endian.h is included.  And IMO including sys/types.h in machine/endian.h
 > is clearly wrong.
 > 
 > XPG4.2 defines new types in_addr_t and in_port_t for the {h,n}to{n,h}{l,s}
 > functions.  But we don't have time to figure out the implementation issues
 > given the current release schedule.

I got problems in the C library, when compiling strtod.c and
infinity.c at least.

Another question: <mips/endian.h> actually defines the byte
order and so on.  But mips is dual-endian, so looking forward
to the SGI or other big-endian mips port of NetBSD, shouldn't
the little-endian version be in pmax/include/endian and
pice/include/endian?  Of course, this is easy enough to change
later.  Actually, it would be nice if there were generic
32-bits bigendian and little-endian versions of this file.
The sparc and m68k versions are now almost (but not quite)
identical.

  -  Arne H. J.