Date: Mon, 25 Jun 2012 09:15:27 +0100 From: Matthew Seaman <matthew@FreeBSD.org> To: "Dan Mahoney, System Admin" <danm@prime.gushi.org> Cc: questions@FreeBSD.org Subject: Re: portupgrade -- is there a way to only build and update ports that actually NEED it? Message-ID: <4FE81E1F.3050809@FreeBSD.org> In-Reply-To: <alpine.BSF.2.00.1206250046110.60400@prime.gushi.org> References: <alpine.BSF.2.00.1206250046110.60400@prime.gushi.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FE81E1F.3050809>
