Huh??!? At least as far back as 06 Jan (based on the mtime of /etc/src.conf), I had set up src.conf to read:
PORTS_MODULES=x11/nvidia-driver as I use that driver on my laptop. Further (as some of you may recall), I maintain private mirrors of the src & ports repositories on the laptop, which I re-sync overnight. Then, each morning, I update the /usr/ports working directory, and I also update the /usr/src working copies -- on each of the 4 slices that's bootable: * slice 1 -- stable/8 i386 (gcc) * slice 2 -- stable/9 i386 (clang) * slice 3 -- stable/9 i386 (gcc) * slice 4 -- head i386 (gcc) and boot each slice in turn and perform an in-place source update. Through symlinks, /usr/local is actually shared among all 4 environments, so I build & update installed ports immediately after smoke-testing the newly-built stable/8. By setting up src.conf as above, the nvidia.ko module gets built for each environment; since the module is stored in /boot/modules, it remains specific to each environment. This has been working rather uneventfully for some time... until this morning. Yesterday, I built & booted: FreeBSD g1-227.catwhisker.org 8.3-STABLE FreeBSD 8.3-STABLE #419 237918M: Sun Jul 1 04:14:48 PDT 2012 r...@g1-227.catwhisker.org:/common/S1/obj/usr/src/sys/CANARY i386 After updating /usr/src to r237994 this morning, the buildworld & buildkernel proceeded without incident. installkernel got through the usual base kernel install and started in on the PORTS_MODULES stuff, when BLAM! I was rather surprised to see: ... kldxref /boot/kernel cd ${PORTSDIR:-/usr/ports}/x11/nvidia-driver; PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin SRC_BASE=/usr/src OSVERSION=803500 WRKDIRPREFIX=/usr/obj/usr/src/sys/CANARY /usr/obj/usr/src/make.i386/make -B instclean all make: don't know how to make instclean. Stop *** Error code 2 Stop in /common/S1/obj/usr/src/sys/CANARY. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. Errr... (I repeat): Huh??!? I circumvented this for now by moving /etc/src.conf aside, but that rather defeats the purpose of having created it. :-/ As a bit of a reality check (at that point), I ran "portmaster x11/nvidia-driver", and that ran to completion successfully, but another attempt at "make installkernel" (before I moved src.conf aside) still failed in the same way. It turns out that I encountered precisely the same mode of failure for each of the 4 slices this morning. (Each had been running @r237918M; each was updated to r237994. The "M" suffix on the GRN is merely for my local changes to newvers.sh to make it VCS-agnostic, rather than cluttering it with code for various VCSen that seem to be of interest to some folks.) A quick look for the word "instclean" in /usr/share/mk, /usr/ports/Mk, and /usr/src came up empty. So: What's going on? What is "instclean" supposed to do for us? Was this an error on my part? What sort of evasive action should I be taking to avoid a recurrence (while still keeping my machines up-to-date)? Thanks.... Peace, david -- David H. Wolfskill da...@catwhisker.org Depriving a girl or boy of an opportunity for education is evil. See http://www.catwhisker.org/~david/publickey.gpg for my public key.
pgplhHoOlBkDr.pgp
Description: PGP signature