From owner-freebsd-questions@FreeBSD.ORG Mon Jun 25 08:15:45 2012 Return-Path: Delivered-To: questions@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 555E5106567B for ; Mon, 25 Jun 2012 08:15:45 +0000 (UTC) (envelope-from matthew@FreeBSD.org) Received: from smtp.infracaninophile.co.uk (smtp6.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3cd3:cd67:fafa:3d78]) by mx1.freebsd.org (Postfix) with ESMTP id D092B8FC0C for ; Mon, 25 Jun 2012 08:15:44 +0000 (UTC) Received: from seedling.black-earth.co.uk (seedling.black-earth.co.uk [81.187.76.163]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.5/8.14.5) with ESMTP id q5P8FbvO007144 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Mon, 25 Jun 2012 09:15:38 +0100 (BST) (envelope-from matthew@FreeBSD.org) X-DKIM: OpenDKIM Filter v2.5.2 smtp.infracaninophile.co.uk q5P8FbvO007144 Authentication-Results: smtp.infracaninophile.co.uk/q5P8FbvO007144; dkim=none (no signature); dkim-adsp=none Message-ID: <4FE81E1F.3050809@FreeBSD.org> Date: Mon, 25 Jun 2012 09:15:27 +0100 From: Matthew Seaman User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20120614 Thunderbird/13.0.1 MIME-Version: 1.0 To: "Dan Mahoney, System Admin" References: In-Reply-To: X-Enigmail-Version: 1.4.2 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigD1F2B221250C707AD5A43E86" X-Virus-Scanned: clamav-milter 0.97.5 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-2.7 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on lucid-nonsense.infracaninophile.co.uk Cc: questions@FreeBSD.org Subject: Re: portupgrade -- is there a way to only build and update ports that actually NEED it? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Jun 2012 08:15:45 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigD1F2B221250C707AD5A43E86 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 25/06/2012 08:53, Dan Mahoney, System Admin wrote: > I'm presently in the process of trying to do a portupgrade from rt-3.8.= 8 > to 3.8.13. By all estimations, this is a minor bump. >=20 > Already, I've encountered several annoyances due to ABI changes, such a= s > the libtool2.4 fun. With normal portupgrade, this forces you to go fix= > the dependent port. >=20 > Finally, I just applied -r, which should update all dependent packages,= > but it seems to upgrade them unconditionally. >=20 > Ergo, I've since built a new version of perl, a new verion of python, > rebuilt every perl module on the system, am presently rebuilding > apache22, and I'm sure the system will turn around and require me to > rebuild postgres real soon. >=20 > You would think there's an option to portupgrade that says "don't > upgrade every single package I've got, but if somewhere in the > dependency chain I need a newer version of a thing, then do it." >=20 > Am I just missing it in the manpages, or does such a thing really not > exist? It has been many years since I used portupgrade with any regularity, and many of those neurones have been recycled. However, I do recall that: portupgrade -a should update all out-of-date ports on your system. portupgrade -r pkgname should update pkgname (if out of date) and all packages that depend on pkgname. portupgrade -R pkgname should update everything that pkgname depends on plus pkgname (if out of date). 'portupgrade -R' sounds like what you want. I believe that the meaning of the -r and -R flags in portupgrade is reversed from pkg_info(1) which is annoyingly inconsistent. Nowadays I usually use portmaster, where: portmaster pkgname works equivalently to 'portupgrade -R pkgname' except that portmaster /always/ reinstalls pkgname even if it is up to date. ie. the standard default action of portmaster is to do exactly what you want. Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. PGP: http://www.infracaninophile.co.uk/pgpkey --------------enigD1F2B221250C707AD5A43E86 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.16 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk/oHikACgkQ8Mjk52CukIxPAQCeP2alLZsrAQNjZcSn3rAFUe9k GAkAn15PneGeRCha5hKGSM1xyZMuByi9 =Q/8p -----END PGP SIGNATURE----- --------------enigD1F2B221250C707AD5A43E86--