I've got two 8.0 machines at work. I just did a build-of-the-world on them. They both failed, and at the same spot. This is not all that surprising, since I checked that /usr/src and /usr/xsrc were identical between the two, but it does mean that it probably is not something like a fluke timestamp glitch. It appears to be something wrong with rump and its reaction to a kernel change - see below.
In each case, the build was done as me, a nonprivileged user, using (cd /usr/src && sh ./build.sh -D /home/mouse/amd64/DESTDIR -O /home/mouse/amd64/OBJDIR -x -U build) with stdout and stderr redirected to a logfile. (The -D and -O directories were pre-created manually, starting out empty; as the names imply, this is all on amd64.) The logfiles are nearly 50 megs, so posting them here directly is, I think, counterindicated. Once I sed out the timestamps generated by build.sh (sed -e "s/Thu Apr 2 ..:..:../Thu Apr 2 xx:xx:xx/"), the build logs for the two machines are bit-identical. They end with dependall ===> lib/librumpdev /home/mouse/amd64/OBJDIR/tooldir.NetBSD-8.0-amd64/bin/nbconfig -b /home/mouse/amd64/OBJDIR/lib/librumpdev -s /usr/src/sys /usr/src/lib/librumpdev/../../sys/rump/librump/rumpdev/MAINBUS.ioconf touch ioconf.c ioconf.h locators.h # create librumpdev/autoconf.d [...] # create librumpdev/dev_verbose.d [...] # create librumpdev/ioconf.d [...] # create librumpdev/kern_pmf.d [...] # create librumpdev/rump_dev.d [...] # create librumpdev/subr_autoconf.d CC=/home/mouse/amd64/OBJDIR/tooldir.NetBSD-8.0-amd64/bin/x86_64--netbsd-gcc /home/mouse/amd64/OBJDIR/tooldir.NetBSD-8.0-amd64/bin/nbmkdep -f subr_autoconf.d.tmp -- -std=gnu99 -I/usr/src/lib/librumpdev/../../sys/rump/librump/rumpkern --sysroot=/home/mouse/amd64/DESTDIR -DCOMPAT_50 -DCOMPAT_60 -DCOMPAT_70 -nostdinc -imacros /usr/src/lib/librumpdev/../../sys/rump/include/opt/opt_rumpkernel.h -I/usr/src/lib/librumpdev -I. -I/usr/src/lib/librumpdev/../../sys/rump/../../common/include -I/usr/src/lib/librumpdev/../../sys/rump/include -I/usr/src/lib/librumpdev/../../sys/rump/include/opt -I/usr/src/lib/librumpdev/../../sys/rump/../arch -I/usr/src/lib/librumpdev/../../sys/rump/.. -DDIAGNOSTIC -DKTRACE -D_FORTIFY_SOURCE=2 /usr/src/lib/librumpdev/../../sys/rump/../kern/subr_autoconf.c && mv subr_autoconf.d.tmp subr_autoconf.d /usr/src/lib/librumpdev/../../sys/rump/../kern/subr_autoconf.c:86:26: fatal error: opt_autoconf.h: No such file or directory compilation terminated. nbmkdep: compile failed. *** Failed target: subr_autoconf.d [...cascade of nested make failures, ending with...] ERROR: Failed to make build *** BUILD ABORTED *** I do have changes as compared to stock 8.0 source, but not much, mostly hardware driver changes. The full list of affected files and how they're touched (I can provide full diffs if relevant): usr/src/distrib/sets/lists/comp/mi Get three hardware .h files (below) installed in /usr/include. usr/src/sys/conf/files Add a defflag for an option added to com.c (below). usr/src/sys/conf/majors Add a device-major for the 7300 driver (below). usr/src/sys/dev/ic/Makefile Install two of the three .h files (lptioc.h and lptreg.h). usr/src/sys/dev/ic/com.c Add the ability to delay output by a userland-configurable time. usr/src/sys/dev/ic/lpt.c usr/src/sys/dev/ic/lptioc.h usr/src/sys/dev/ic/lptreg.h usr/src/sys/dev/ic/lptvar.h Give it a mode that's "parallel port" instead of "printer interface", including some custom tweaks for the use case. usr/src/sys/dev/pci/7300a-reg.h usr/src/sys/dev/pci/7300a.c usr/src/sys/dev/pci/7300a.h A driver for the Adlink 7300A (depressingly heavily customized for the use case, but still...). usr/src/sys/dev/pci/Makefile Install the third .h file (7300a.h). usr/src/sys/dev/pci/files.pci Add the 7300 driver. usr/src/sys/dev/pci/if_wm.c Add some debugging kludgery. usr/src/sys/dev/pci/ixgbe/ix_txrx.c Make it build when neither INET nor INET6 is enabled. usr/src/sys/dev/pci/pucdata.c Add the NetMos NM9912. usr/src/sys/dev/usb/usb_subr.c Print something more informative than just "device problem" when having difficulty with a device. usr/src/sys/kern/files.kern Add "defflag opt_autoconf.h NO_DETACH_MESSAGES". usr/src/sys/kern/subr_autoconf.c Include "opt_autoconf.h" and implement NO_DETACH_MESSAGES, to suppress device-detached console spammage on shutdown. usr/src/sys/net/if_loop.c Make it build when neither INET nor INET6 is enabled. usr/xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Init.c usr/xsrc/external/mit/xorg-server/dist/hw/xfree86/vbe/vbe.c Add options to the X server to deal with some DDC issues (-ddc-capture, to record DDC info, and -ddc-fallback, to provide DDC info to be used when the server can't obtain any on startup). This kernel tree is designed to support a use case that uses Ethernet but does not use IP, hence wanting network drivers to build with neither INET nor INET6 defined, and has a good deal of application-specific external hardware, which uses the 7300, lpt, and com drivers to interface to it. (It's a commercial product, so I can't give full details, but I _can_ show full diffs for any of the above files - I've been careful to keep the commercial secret sauce out of the /usr/*src changes.) But the error makes me reasonably sure it's related to the defflag I added to files.kern. I also saw something similar in 5.2 when I added SCM_MEMORY (sibling to SCM_RIGHTS) and had to fiddle include files in /sys/kern/uipc_* - a full build promptly crashed somewhere in the rump stuff. I don't recall details, but I think they were include-file issues then too (if anyone cares, I can check out the relevant tree and find out within a day or two). For 5.2, I just excised rump from my builds (when it broke like that, it jumped from "mild maybe-someday positive" to "major immedate negative" in one dramatic leap). This makes it look as though 8.0's rump has related issues. Should I just excise rump from the 8.0 build too, or have I done something wrong somewhere, or does this indicate a real bug that needs fixing, or what? /~\ The ASCII Mouse \ / Ribbon Campaign X Against HTML mo...@rodents-montreal.org / \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B