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