From owner-freebsd-questions Sun Mar 2 18:19:51 2003 Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1CFB537B401 for ; Sun, 2 Mar 2003 18:19:48 -0800 (PST) Received: from rutger.owt.com (rutger.owt.com [204.118.6.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FD7043FCB for ; Sun, 2 Mar 2003 18:19:47 -0800 (PST) (envelope-from kstewart@owt.com) Received: from topaz-out (owt-207-41-94-233.owt.com [207.41.94.233]) by rutger.owt.com (8.9.3/8.9.3) with ESMTP id SAA20055 for ; Sun, 2 Mar 2003 18:19:42 -0800 From: Kent Stewart To: freebsd-questions@FreeBSD.ORG Subject: Re: Portupgrade -- revisited Date: Sun, 2 Mar 2003 18:19:38 -0800 User-Agent: KMail/1.5 References: <20030302192233.GA326@willow.raggedclown.intra> <200303021628.21627.kstewart@owt.com> <87healw8ao.fsf@strauser.com> In-Reply-To: <87healw8ao.fsf@strauser.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200303021819.38745.kstewart@owt.com> Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sunday 02 March 2003 05:25 pm, Kirk Strauser wrote: > At 2003-03-03T00:28:21Z, Kent Stewart writes: > > The -rR bothers me because it is making a lot of ports that don't > > need to be updated. > > It was my understand that if `-rR' would upgrade a port, then that > port needs to be upgraded. For a non-FreeBSD perspective, look at > Debian: you are extremely discouraged from upgrading a program > without upgrading all of its dependencies, and all of their > dependencies. > > > I typically have 2 or 3 lines that need updating and -ruf will > > force them. > > I'm allergic to the word `force'. It's usually a synonym for "Yes, I > really want you to break it!". > > I've never, ever used `-f' except when re-installing the same version > of a port (i.e. with different build options), and that may be why > I've never had the portupgrade problems that some people have. Take > this scenario: > > x, y, and z are installed. y depends on x and z. After cvsup'ing, > new versions of all three are installed. Furthermore, y explicitly > depends on the newest version of z to function correctly (real world > examples: libpng, gd). > > Now, if you `portupgrade -rR x', it will: > > 1. Recompile x > 2. Recurse to y > 3. Realize that it has to upgrade z > 4. Recompile z > 5. Recompile y > > so that y is correctly built with the new versions of x and z. On > the other hand, if you `portupgrade -R x', it will: > > 1. Recompile x > 2. Recurse to y > 3. Recompile y > > so that y is incorrectly built against a new version of x, but an old > version of z. We are basically doing the same thing. A portversion -c would have shown x, y, and z. When I check the versions, I would have seen that y depended on x and z. I would specify x and z on the -ruf. This is what I called an interesection. If there is more than one intersection, I usually have rebuilt everything. I have seen situations where your -rR would have really been beneficial and faster than rebuilding everything. Kent > > > The way I understand it, a -rR kdebase will rebuild most of XFree86 > > and etc. > > True, but X doesn't update *that* often. > True! But the b-dep for kdebase is B-deps: Mesa-3.4.2_2 XFree86-fontEncodings-4.2.0 XFree86-fontScalable-4.2.0 XFree86-libraries-4.2.1_7 Xft-2.1_2 arts-1.1,1 cups-base-1.1.18.0_4 expat-1.95.6_1 fam-2.6.9_2 fontconfig-2.1_4 freetype2-2.1.3_1 gettext-0.11.5_1 gmake-3.80 imake-4.2.0_1 jpeg-6b_1 kdelibs-3.1 lcms-1.09 libart_lgpl2-2.3.11 libaudiofile-0.2.3 libiconv-1.8_2 libmng-1.0.4 libxml2-2.5.4 libxslt-1.0.27 open-motif-2.2.2_1 pcre-3.9 pkgconfig-0.15.0 png-1.2.5_2 python-2.2.2_2 qt-3.1.1_4 tiff-3.5.7 and a -R kdebase would have rebuilt all of this. The man page for portupgrade show -R --upward-recursive Act on all those packages required by the given packages as well. (When specified with -F, fetch recursively, including the brand new, uninstalled ports that an upgraded port requires) The b-deps fall into that category. Kent > > The AMD 2000+ uses 6-8 hours to rebuild everything but it will > > rebuild all of kde-3.1 in 3+. > > True, but you're also building KDE against old versions of required > libraries. Why not launch a `portupgrade -ra' just before you go to > bed? Then you can wake up to a shiny, happy new system in the > morning. -- Kent Stewart Richland, WA http://users.owt.com/kstewart/index.html To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message