Subject: Re: arch conflict on update
To: None <current-users@NetBSD.org, port-sparc64@NetBSD.org>
From: None <sigsegv@rambler.ru>
List: current-users
Date: 03/21/2005 12:01:46
sigsegv@rambler.ru wrote:
> Greetings, I'm running 32-bit GENERIC_SUN4U kernel, along with 32-bit 
> userland. I've just built a distribution for sparc port from netbsd-3 
> tree. The problem is I'm trying to update my current system with:
> 
> MAKECONF=/opt/sandbox/scripts/mk.sparc.conf
> export MAKECONF
> 
> /opt/src/build.sh -E -m sparc -x -O /opt/sandbox/opt/obj.sparc \
>     -D /opt/sandbox/opt/obj.sparc/destdir.sparc \
>     -T /opt/sandbox/opt/tools.sparc install=/
> 
> And it fails with the following message:
> 
> ERROR: 'install=/' must != / for cross builds.
> *** BUILD ABORTED ***
> 
> I think this is because 'uname -m' returns sparc64, even though 
> everything is 32-bit. How can I override this sanity check? It looks 
> like the script is trying to be too clever for its own good.
> 

Well I got around this with:

# cd /usr/bin
# mv uname uname.bin
# touch uname && chmod +x uname
# vi uname

#!/bin/sh
if test x$1 = "x-m"
	echo sparc
else
	/usr/bin/uname.bin $@
fi