Date: Sun, 29 Jun 2003 20:28:36 +1200 From: Craig Carey <snowfall@gmx.co.uk> To: freebsd-doc@freebsd.org Subject: Handbook: bsd.*.mk files. More use of -DNOPROFILE Message-ID: <5.2.0.9.2.20030629193913.05c168b0@pop.gmx.net> In-Reply-To: <20030510185024.4b05ffaf.trhodes@FreeBSD.org> References: <20030510151718.D2044@wonkity.com> <20030510151718.D2044@wonkity.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[1] Request for advice to copy the bsd*.mk files out of the /usr/src/ directory I noted yesterday that make -DNOCLEAN buildworld crashes instead of completing. I started with a version 5.1 release of FreeBSD and after a tiny number of updates, buildworld no longer ran. The problem was that (as usual) buildworld was using the wrong bsd.*.mk files. So long as that is not going to be fixed, then it can be documented. Persons new to FreeBSD 5 would easily find the messages to be unhelpful. This comment on section 21.4 of the FreeBSD handbook: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html I'd suggest that BSD "make" catch all attempts to wrongly read files outside of the /usr/src directory. If make buildworld won't copy across the bsd*.mk files then comments in the handbook can tell the user to do it. There was no comment on the problem in the /usr/src/UPDATING file (or whatever it is named). Those errors are hard to figure out due to the obscurity of what those files do. E.g. how many new FreeBSD userss understand exactly how a bsd*mk file alters the directory that a C "#incude <abcde.h>" accesses ?. ------------- [2] Let's have -DNOCLEAN be in all the examples instead of -DNOPROFILE The -DNOCLEAN option stops unnecessary recompiling. Yesterday, at least 1/2 of the crashes in buildworld of version 5 of FreeBSD, were due to bugs in FreeBSD software that vanished when I made no change at all and restarted the buildworld. It might be that make can't multitask properly. I assume that using -DNOCLEAN causes no problems (unless retaining very old files). A lot of retries are needed before buildworld of v5 runs correctly (in June). There is no need to mention -DNOPROFILE in example command. That is set by the /etc/make.conf file so it need not be retyped in. The option "-DNOPROFILE" appears 3 times on that part of the handbook --------------------------------------------- # make -DNOPROFILE target ... For example, if you ran: # make -DNOPROFILE buildworld you must install the results with: # make -DNOPROFILE installworld --------------------------------------------- It would be nice to add a "then" before the "you must". Please can the 3 "-DNOPROFILE"s be changed to be "-DNOCLEAN". I have an EPoX motherboard that crashes very infrequently and yet when I did a v5 buildworld then I got at least 4 crashes and so many that it was faster to do without the "-j4" option. Quite probably the buildworld will fix itself when nothing is done, even when there is no use of the "-j" ["-j4"] option. The best plan seems to be to try this (and missing out -DNOCLEAN in favour of -DNOPROFILE would be against this): (a) don't investigate (b) restart the buildworld. (c) if that failed then solve the problem. ------------- I don't actually intend to report these as bugs. Someone else could do that or write to me or whatever. At 2003-05-10 18:50 -0400 Saturday, Tom Rhodes wrote: >On Sat, 10 May 2003 15:23:38 -0600 (MDT) >Warren Block <wblock@wonkity.com> wrote: > >> Isn't "make world" deprecated? The Handbook Using "make world" chapter ... > >AFAIK, make world still works (least it did for me yesterday on a CURRENT >box) and don't see it becoming deprecated any time soon. > ...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5.2.0.9.2.20030629193913.05c168b0>