Subject: re: clarification between machine_arch and machine
To: matthew green <mrg@eterna.com.au>
From: Christos Zoulas <christos@zoulas.com>
List: tech-kern
Date: 01/27/2002 10:34:40
On Jan 28,  2:22am, mrg@eterna.com.au (matthew green) wrote:
-- Subject: re: clarification between machine_arch and machine

| 
|    
|    Currently uname states:
|    
|    -m      print the machine hardware name. $MACHINE
|    -p      print the machine processor architecture name. $MACHINE_ARCH
| 
| 
| i don't see what the problem here is.

The problem is that we use -m to indicate "kernel architecture", ie which
directory to cd in /usr/src/sys/arch/$MACHINE. This ends up being a mess.

in /usr/src/sys/arch:

SUBDIR= ${MACHINE}
ARCHSUBDIR= ${MACHINE_ARCH:C/mipse[bl]/mips/:C/sh3e[bl]/sh3/:S/arm26/arm/:S/arm3
2/arm/:S/m68000/m68k/}
.if ${MACHINE} != ${ARCHSUBDIR}
.if exists(${ARCHSUBDIR})
SUBDIR+= ${ARCHSUBDIR}
.endif
.endif
.if ${MACHINE} == sparc
SUBDIR+= sparc64
.endif
.if (${MACHINE} == hpcmips || ${MACHINE} == hpcsh)
SUBDIR+= hpc
.endif
.if (${MACHINE} == sun2)
SUBDIR+= sun68k
.endif

I suggest that we add MACHINE_KARCH to indicate the kernel architecture this
machine is using. If I change $MACHINE on the sparc to display sun4{,c,m,d}
then I'll need more if statements there.

christos