Subject: Re: parallel build issue with bootxx?
To: Chris Tribo <ctribo@dtcc.edu>
From: Patrick Welche <prlw1@newn.cam.ac.uk>
List: current-users
Date: 10/08/2005 17:02:49
On Thu, Oct 06, 2005 at 05:25:45PM -0400, Chris Tribo wrote:
> I was just doing build.sh -j 6 -x release and it died, I'm not sure  
> how. I have the entire build log saved and I started with a clean  
> objdir. Here's what appears to be the culprit:

bootxx_cd9660 doesn't seem to get built, which is why it can't be
found on install...

# ls obj.i386
.depend   cdboot.d  machine   x86

# cd /sys/arch/i386/stand/bootxx/bootxx_cd9660
# make -n dependall
rm -f machine
ln -s /sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/i386/include machine
rm -f x86
ln -s /sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/x86/include x86
rm -f machine
ln -s /usr/src/sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/i386/include machine
rm -f x86
ln -s /usr/src/sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/x86/include x86
rm -f .gdbinit
echo "set solib-absolute-prefix /destdir/i386" > .gdbinit
echo '#  ' "compile " bootxx_cd9660/cdboot.o
...
<gcc cdboot.S -> bootxx_cd9660 in 3 steps>

(Note no .gdbinit in the directory listing either)

But during a build -j6 release, I only see

--- dependall-bootxx_cd9660 ---
dependall ===> sys/arch/i386/stand/bootxx/bootxx_cd9660
rm -f machine
ln -s /usr/src/sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/i386/include machine
rm -f x86
ln -s /usr/src/sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../..//arch/x86/include x86
--- cdboot.d ---
#    create  bootxx_cd9660/cdboot.d
CC=/usr/src/tooldir.NetBSD-3.99.8-i386/bin/i386--netbsdelf-gcc /usr/src/tooldir.NetBSD-3.99.8-i386/bin/nbmkdep -f cdboot.d --      -I. -I/usr/src/sys
/arch/i386/stand/bootxx/bootxx_cd9660/../../lib -I/usr/src/sys/arch/i386/stand/bootxx/bootxx_cd9660/../../../../../../ -DPRIMARY_LOAD_ADDRESS=0x600 -
DSECONDARY_LOAD_ADDRESS=0x10000 -DDISABLE_KEYPRESS  -nostdinc -isystem /destdir/i386/usr/include   -traditional-cpp /usr/src/sys/arch/i386/stand/boot
xx/bootxx_cd9660/../../cdboot/cdboot.S
--- .depend ---
#    create  bootxx_cd9660/.depend
rm -f .depend
CC=/usr/src/tooldir.NetBSD-3.99.8-i386/bin/i386--netbsdelf-gcc /usr/src/tooldir.NetBSD-3.99.8-i386/bin/nbmkdep -d -f .depend -s .o\ .ln cdboot.d

and that's all - no more bootxx_cd9660 until the install step.

# cd /sys/arch/i386/stand/bootxx/bootxx_cd9660
# make USETOOLS=no dependall
...
# ls obj.i386
.depend       .gdbinit      bootxx_cd9660 cdboot.d      cdboot.o      machine       x86


Cheers,

Patrick