Subject: Re: toolchain/28414: -current Makefiles don't honor
To: matthew green <mrg@eterna.com.au>
From: Peter Eisch <peter@boku.net>
List: netbsd-bugs
Date: 11/26/2004 01:20:38
Thanks for the note on that.  I've purged my source tree, then built for
sparc64 with:

MKUPDATE=yes
BASEDIR=/builds/current
MAKEOBJDIRPREFIX=/builds/current/sparc64/obj
MKX11=yes
TOOLDIR=/builds/current/sparc64/tools
DESTDIR=/builds/current/sparc64/dest
MKUNPRIVED=yes
RELEASEDIR=/builds/current/sparc64/release
X11SRCDIR=/builds/current/xsrc
MKSENDMAIL=no
MAKEVERBOSE=1
MKOBJDIRS=no
===> build.sh command: /builds/current/src/build.sh -j 4 -u -U -x -M
/builds/current/sparc64/obj -m sparc64 -D /builds/current/sparc64/dest -R
/builds/current/sparc64/release -N 1 -T /builds/current/sparc64/tools
kernel=PETER-FW releasekernel=PETER-FW release
===> build.sh started: Thu Nov 25 13:35:53 CST 2004
===> MACHINE:          sparc64
===> MACHINE_ARCH:     sparc64
===> TOOLDIR path:     /builds/current/sparc64/tools
===> DESTDIR path:     /builds/current/sparc64/dest
===> RELEASEDIR path:  /builds/current/sparc64/release
===> makewrapper:      /builds/current/sparc64/tools/bin/nbmake-sparc64
===> Updated /builds/current/sparc64/tools/bin/nbmake-sparc64
===> Building kernel without building new tools
...

At the end of that build, I still end up with a .o in the src dir.  I didn't
check for .d files and such yet, I'll expand on that next pass.  But now I
have a straggler:

/builds/current/src/usr.bin/getent/getent.o


I didn't use to get little things like this strewn about the source tree --
with or without the -o flag for the past many months and now crossbuilding
seems to only work so long as the source tree is only used for one
architecture.  Is this the way most folks do it?

Thanks,

peter



> From: matthew green <mrg@eterna.com.au>
> Date: Thu, 25 Nov 2004 11:46:22 +1100
> To: peter@boku.net
> Cc: toolchain-manager@netbsd.org, gnats-admin@netbsd.org,
> netbsd-bugs@netbsd.org
> Subject: re: toolchain/28414: -current Makefiles don't honor MAKEOBJDIRPREFIX
> 
> 
> please try:
> 
> - clean your source tree
> 
> - run ./build.sh again WITHOUT "-o".
> 
> 
> you were telling build.sh NOT to create objdirs with -o.  so it didn't.
> so it didn't use them...  or.  those files were simply already there so
> make(1) didn't think they needed to be rebuilt..
> 
> 
> the build will always fail if you have a dirty source tree with old
> objects (espcially for another platform..)
> 
> 
> .mrg.
>