From owner-freebsd-hackers Fri Jun 20 13:07:47 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id NAA21662 for hackers-outgoing; Fri, 20 Jun 1997 13:07:47 -0700 (PDT) Received: from vinyl.quickweb.com (vinyl.quickweb.com [206.222.77.8]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id NAA21655 for ; Fri, 20 Jun 1997 13:07:45 -0700 (PDT) Received: (from mark@localhost) by vinyl.quickweb.com (8.8.5/8.6.12) id QAA27118; Fri, 20 Jun 1997 16:02:37 -0400 (EDT) Message-ID: <19970620160235.20002@vinyl.quickweb.com> Date: Fri, 20 Jun 1997 16:02:35 -0400 From: Mark Mayo To: John Polstra Cc: mark@quickweb.com, hackers@freebsd.org Subject: Re: make world error in RELENG_2_2 References: <26359.866788909@time.cdrom.com> <19970620120938.27122@vinyl.quickweb.com> <199706201913.MAA12625@austin.polstra.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.69e In-Reply-To: <199706201913.MAA12625@austin.polstra.com>; from John Polstra on Fri, Jun 20, 1997 at 12:13:55PM -0700 Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk On Fri, Jun 20, 1997 at 12:13:55PM -0700, John Polstra wrote: > > > It's not a problem with cvsup. It's a fundamental flaw in the model > > > of trying to "upgrade" a source tree by continually: > > > > > > a) Changing modified bits. > > > b) Adding new ones. > > > c) Not deleting the old ones. > > > > > > It's (c) which is the killer since you will eventually confuse the > > > bezeesus out of the build system with old bits. Do you have the > > > "delete" option turned on in your supfile? > > > > I turns out this is indeed the case... > > [...] > > I assumed that cvsup did (c) above, when it doesn't. > > You're certainly not the first person to get bitten by that. CVSup > in general (exception described below) has the attitude, "If I > didn't create it, I'm not allowed to delete it." Believe me, users > get real offended if it behaves any other way. So things work just > fine if you originally created your tree using CVSup. It knows it > has the authority and the responsibility to clean up files that > later get moved or deleted in the master source tree. Ok. I get it. That seems reasonable - indeed, good material for the FAQ. :-) > [SNIP] > that should work 100% fine: > > 1. Start with a definite known version of the source tree. > Let's say it's FreeBSD-2.2.2-RELEASE, for example. > > 2. To adopt the tree accurately, do one CVSup update specifying the > exact release that you have. In this case, you use > "tag=RELENG_2_2_2_RELEASE". The update should of course make > no changes to your tree. But it will have the side-effect of > allowing CVSup to feel that it "owns" all of the files. (Its > ability to "feel" is one of its many advanced features. :-) > > 3. Now change your tag to whatever you really want, e.g., > "tag=RELENG_2_2" for -2.2-stable. Do another CVSup update. > Any files that should be added or deleted will be handled > properly. Excellent. I'll add this to my tutorial, I'm sure a lot of people didn't know this is how it works. > [SNIP] > for discussion in the non-existent CVSup FAQ. :-) Or even the man page. Even a quick mention that cvsup won't delete files that it doesn't "own" would be good. In general, I think a lot more could be written about the whole FreeBSD build procedure. I'll write what I can, and post to the list when I'm done for a review. -Mark > -- > John Polstra jdp@polstra.com > John D. Polstra & Co., Inc. Seattle, Washington USA > "Self-knowledge is always bad news." -- John Barth -- ---------------------------------------------------------------------------- Mark Mayo mark@quickweb.com RingZero Comp. http://vinyl.quickweb.com/mark finger mark@quickweb.com for my PGP key and GCS code ---------------------------------------------------------------------------- University degrees are a bit like adultery: you may not want to get involved with that sort of thing, but you don't want to be thought incapable. -Sir Peter Imbert